Fixing Missing Author and Trust Signals for AI Crawlers
A person reading your article can glance at a photo, a job title and the logo in the corner and form a view about who is behind it. An AI crawler has only the HTML your server sent.
If the byline is added by a script, the author page is missing, the structured data names "Admin" and the sources are unlinked, a machine cannot tell who wrote the page or who stands behind it. This guide is about making authorship and publisher identity readable to crawlers and answer engines, so the facts about who wrote what are stated plainly and consistently wherever a machine looks.
- Five questions a machine asks about your page
- Where each signal has to appear
- A byline a crawler can actually read
- Author pages that confirm identity
- Joining author, article and publisher in JSON-LD
- Making the publisher identifiable
- Sources a machine can follow
- The fix, step by step
- Awkward cases
- Questions and answers
Five questions a machine asks about your page
Answer engines have to decide which pages to draw on and which to credit. Their providers say little in public about exactly how they weigh sources, so nobody can promise that an author box earns a citation. What is certain is that a system cannot use information it cannot find. When a crawler has your page, it is effectively trying to answer five questions from the markup alone:
- Who wrote this? A named person, in text, near the headline.
- Who is that person? A page at a stable address that describes them, and links to places elsewhere that confirm the same identity.
- Who published it? An organisation or individual with a name, an about page and contact details.
- When? A published date and, where it changed materially, an updated date, both machine-readable.
- Based on what? Links to the sources behind the claims, so the statements can be traced.
This guide is about the machine side of those answers: where they sit in the HTML and structured data, and how to keep them consistent. The human side, such as reviews, guarantees and the wording of bios, is covered by the E-E-A-T trust signals guide and the author bios guide.
Where each signal has to appear
Each fact should exist in two forms: as visible text on the page and as structured data that states the same thing. When both agree, a crawler has nothing to guess. When they disagree, or when one is missing, the machine has to choose, and it may choose badly.
| Signal | Visible HTML | Structured data | Common failure |
|---|---|---|---|
| Author name | Byline near the headline, linked to the author page | author
on the Article, pointing to a Person | Byline injected by script, or JSON-LD says a different name |
| Author identity | Author page with role, background and topics covered | Person
with url, jobTitle, sameAs | No author page, or a page with only a list of posts |
| Publisher | Logo, name, about and contact links in header or footer | publisher
pointing to an Organization | Publisher left blank because site settings were never filled in |
| Dates | Published and updated dates in a <time> element | datePublished,
dateModified | Modified date changes on every deploy without real edits |
| Sources | Links from the claim to the primary source | citation, optional | Sources listed as plain text with no links |
A byline a crawler can actually read
The byline is the first place a crawler looks, and the most common place it goes missing. Designers sometimes remove it for a cleaner look; some themes render it from a script after the page loads; others print only a first name or a team name. Put the full name in the server-rendered HTML, next to the headline, and link it to the author page.
<article>
<h1>How to size a heat pump for a three-bedroom house</h1>
<p class="byline">
By <a href="/team/morag-ellison/" rel="author">Morag Ellison</a>,
heating engineer at Northfield Heating
· Published <time datetime="2026-04-02">2 April 2026</time>
· Updated <time datetime="2026-08-19">19 August 2026</time>
</p>
...
</article>
A few details make this easier for machines:
- Inside the article. Placing the byline inside
<article>ties it to that piece of content rather than to the site in general. - A real link. An ordinary
<a href>to the author page lets a crawler follow it. Therel="author"value is a standard HTML link type that labels the link's purpose; it does no harm and costs nothing. - Machine-readable dates. The
datetimeattribute gives an unambiguous date in ISO format, whatever the visible wording. - The same name everywhere. Use one spelling of the name on the byline, the author page and the structured data. "M. Ellison" on one page and "Morag Ellison" on another look like two people to a simple matching system.
Test it by fetching the page with curl and searching for the author's name. If it is not in the response, it is not in the byline a non-rendering crawler receives.
Author pages that confirm identity
A byline names someone; an author page tells the machine who they are. Each writer needs one page at an address that will not change, even if the site is redesigned. On that page:
- The full name as the main heading, matching the byline exactly.
- Their role and the organisation they write for.
- A few sentences of relevant background, written as plain text rather than in an image or a slider.
- The subjects they cover, which helps a machine connect the person to a topic.
- Links to profiles elsewhere that belong to the same person, such as a professional body listing, a university page or a professional networking profile.
- A list of their articles with real links.
The outward links matter for identity. When the author page and a profile on another site both describe the same person and point at each other, a system has independent confirmation that the name refers to someone real. Only link profiles the person controls or that genuinely describe them, and remove links when someone leaves.
https://www.example.co.uk/team/morag-ellison/#person.
Every article by that writer can then refer to the same identifier instead of repeating the details.Joining author, article and publisher in JSON-LD
Structured data turns the visible facts into statements a machine can parse without guessing. The
pattern that works best is a single graph in which each entity is described once, given an @id,
and referred to by that identifier wherever it is needed. The article points to the author and the publisher;
the author page describes the person fully.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Article",
"@id": "https://www.example.co.uk/guides/heat-pump-sizing/#article",
"headline": "How to size a heat pump for a three-bedroom house",
"datePublished": "2026-04-02T09:00:00+01:00",
"dateModified": "2026-08-19T14:30:00+01:00",
"mainEntityOfPage": "https://www.example.co.uk/guides/heat-pump-sizing/",
"author": { "@id": "https://www.example.co.uk/team/morag-ellison/#person" },
"publisher": { "@id": "https://www.example.co.uk/#organization" }
},
{
"@type": "Person",
"@id": "https://www.example.co.uk/team/morag-ellison/#person",
"name": "Morag Ellison",
"url": "https://www.example.co.uk/team/morag-ellison/",
"jobTitle": "Heating engineer",
"worksFor": { "@id": "https://www.example.co.uk/#organization" },
"sameAs": [
"https://directory.example.org/members/morag-ellison"
]
},
{
"@type": "Organization",
"@id": "https://www.example.co.uk/#organization",
"name": "Northfield Heating Ltd",
"url": "https://www.example.co.uk/",
"logo": "https://www.example.co.uk/images/logo-512.png"
}
]
}
</script>
Points that commonly go wrong:
- Put only the name in
name. Google's Article guidance asks for the author's name alone, without job titles or "Posted by". Put the role injobTitle. - Use a Person for people. If a real person wrote the article, do not name the company
as the author. Use
Organizationas author only where content genuinely has no individual writer. - Keep identifiers stable. If the
@idchanges with each redesign, previous references stop meaning the same entity. - Print it on the server. JSON-LD injected by a tag manager may be seen by Google, which renders JavaScript, but many AI crawlers read only the initial HTML.
The JSON-LD coverage guide explains how to extend the same graph to other page types.
Making the publisher identifiable
Even a well-marked author is only half the answer. A machine also wants to know which organisation stands behind the site, and whether it can be contacted. For a small business this does not require much, but it has to be findable from every page in plain HTML links.
- An about page that states the legal or trading name, what the business does, where it is based and who runs it.
- A contact page with a postal address or service area, a phone number or email address, and ideally the company registration number for a limited company.
- An editorial or review policy for sites that publish advice: who writes, who checks, how errors are corrected.
- Footer links to all three, as ordinary links in the server HTML, so a crawler can reach them from any page.
Describe the organisation once in structured data, on the home page or about page, with its name,
address, logo and profiles, and point every article's publisher at it by @id.
The name in the structured data should match the name in the footer and on the about page exactly, including
"Ltd" or its absence.
Sources a machine can follow
Claims that link to where they came from are easier to check, for people and for systems that compare sources. A bibliography in plain text at the bottom of a page is better than nothing, but a crawler cannot follow it.
- Link the claim, not the page footer. Put the link on the sentence that makes the claim, with anchor text that says what the source is: "the Met Office climate averages for Sheffield", not "here".
- Prefer primary sources. Link the official guidance, standard or dataset itself rather than an article summarising it.
- Date figures. Say when a statistic or price applies, because answer engines may quote the sentence long after you wrote it.
- Mark quotations. Use
<blockquote cite="โฆ">or<q>for quoted material and name the speaker in text.
If you want to declare sources in structured data, schema.org's citation property accepts
a URL or a CreativeWork. It is optional, and the visible links matter more.
The fix, step by step
Step 1
List who actually writes each content type
Go through your content types, such as blog posts, guides, news, product pages and service pages, and record who writes each one. Advice and opinion pieces should carry a named person. Product and service pages written collectively can carry the organisation. Note posts published under admin, editor or a company account, and anything with a byline that no longer matches the person who wrote it, so they can be reassigned in the next steps.
Step 2
Print the byline and dates in the server HTML
Edit the article template so the full author name, linked to the author page, and
the published and updated dates in <time datetime> elements appear inside the <article>
near the headline. Remove any script that builds the byline in the browser. Fetch a post with curl and
search the output for the author name and the date to confirm a crawler that does not run scripts receives
them.
Step 3
Publish an author page at a stable address
Create one page per writer at an address that will survive redesigns, such as /team/firstname-lastname/.
Give it the exact byline name as its heading, the person's role, a short background in plain text, the
topics they cover, links to profiles elsewhere that describe the same person, and a linked list of their
articles. Point every byline for that writer at this page.
Step 4
Connect author, page and publisher in JSON-LD
Add or correct the structured data so each article has an author that
refers to the writer's Person by @id and a publisher that refers
to the organisation by @id. Describe the person fully on their author page, with name,
url, jobTitle and sameAs. Make the dates match the visible ones
and output the markup from the server, not from a tag manager.
Step 5
Make the publisher identifiable from every page
Check that the about page, contact page and, for advice content, an editorial
policy exist and are linked from the footer of every page as ordinary HTML links. Use the same organisation
name in the footer, the about page and the Organization markup. Fill in the address, logo
and official profiles once in the organisation markup and refer to it from every article instead of repeating
it.
Step 6
Link claims to their sources
Work through your most visited advice pages and find every statistic, rule, price or quoted statement. Link each one at the point where it appears to the primary source, using anchor text that names the source. Add the date the figure applies to. Replace plain-text reference lists with linked ones, and remove or update any claim you cannot source, because an answer engine may quote it without your context.
Step 7
Check the result as a crawler would
Fetch two or three articles and an author page with curl using an AI crawler user agent and confirm the byline, dates and footer links are present. Paste the page into the Schema Markup Validator and check that the article, person and organisation appear as connected entities with no errors. Then run the Agent Readiness Audit again and confirm the author and trust findings have cleared.
Awkward cases
Ghostwritten and edited content
If an agency drafts articles and your staff expert reviews and approves them, name the person who
takes responsibility for the content. A separate "Reviewed by" line with its own link, and a matching
reviewedBy property on the WebPage in structured data, is an honest way to show both roles.
Content produced with AI help
Google's guidance on helpful content suggests explaining how content was produced where readers would reasonably want to know, including the use of automation. A short note on the editorial policy page, plus a named human who checked the piece, is clearer than an anonymous byline.
Writers who leave
Keep the author page and their articles attributed to them; the work was still theirs. Update the
page to say they previously wrote for you, and remove the worksFor link and any contact
details that no longer apply.
Pen names
A consistent pen name with an author page is better than no name, but do not invent credentials, photos or external profiles for it. A fictional identity with made-up qualifications is exactly the kind of signal that erodes trust once discovered.
Several authors on one piece
List each name in the byline and give author an array of Person references in the same order.
1. Do AI answer engines really look at who wrote a page?
The providers publish very little about how they choose and rank sources, so no one outside those companies can say exactly how much authorship counts. What is clear is that a system cannot use information it cannot find. A named author in the HTML, an author page and matching structured data make the answer to who wrote this explicit, instead of leaving it to guesswork. That costs little, helps human readers too, and removes one reason for a page to be passed over.
2. How is this different from E-E-A-T trust signals?
E-E-A-T guidance is mainly about what a human reader or a Google quality rater sees: the substance of a bio, reviews, guarantees, secure checkout and a clear refund policy. This guide covers the machine-readable layer underneath: whether the author name is in the server HTML, whether the author page exists at a stable address, and whether structured data connects the article, the person and the publisher. You need both, but they are fixed in different places.
3. My byline shows in the browser, so why does the audit say it is missing?
Probably because the byline is added by JavaScript after the page loads. Your browser runs the script and shows the name, but many AI crawlers read only the HTML the server sends and never run it. Fetch the page with curl and search for the author name to check. If it is missing, change the template so the byline is printed on the server, which also makes it available to any tool that reads the raw page.
4. Should the author in JSON-LD be a Person or an Organization?
Use a Person whenever an identifiable individual wrote or is responsible for the content, which should be the case for advice, reviews, opinion and guides. Use an Organization only where the content genuinely has no individual author, such as a product description or a company announcement. Naming the company as author of an article a person wrote hides the very information a machine is looking for. Put the company in the publisher property instead.
5. What should sameAs link to for an author?
Link to pages elsewhere on the web that describe the same person and that you would be comfortable having a reader check: a listing on a professional body's register, a university staff page, a conference speaker page or a professional networking profile. Avoid linking to pages that merely mention the name, or to a profile belonging to someone else with the same name. Keep the list short and accurate, and remove links when a person leaves or closes an account.
6. Do I need author pages if I am the only writer?
One author page is still worth having, and on a single-author site your about page can do the job if it is written about you. Give it your full name as it appears in bylines, your background and the subjects you write about, then link every byline to it. In structured data, describe yourself once as a Person with a fixed identifier on that page and refer to it from every article, so all of your work points back to the same identity.
7. Which dates should I show, and should I update dateModified often?
Show the date the piece was first published and, when you make a real change such as updated figures, new sections or corrected advice, the date of that update. Do not change the modified date for spelling fixes or template deploys, and never set it automatically on every build, because a date that always says today tells a machine nothing. Keep the visible dates and the datePublished and dateModified values in structured data identical.
8. Is rel=author still worth adding to links?
It is a standard HTML link type that says the link points to information about the author, so it is valid and harmless. Google stopped using it for its old authorship feature many years ago, and there is no public statement that current AI crawlers rely on it. Treat it as a small, correct label on the byline link. The things that matter more are the visible name, the author page it leads to and the structured data that repeats the same facts.
The Agent Readiness Audit requests your page with real AI crawler user agents, checks robots.txt and llms.txt, reviews JSON-LD coverage and semantic HTML, tests how much depends on JavaScript and measures how easily the content can be extracted.
Open Agent Readiness Fixes โ