Skip to main content
AI models weigh authored content more heavily than anonymous content. Articles without clear authorship signals get cited less often — and when they are cited, the attribution flows to the site, not the expert. For expertise-driven categories (health, finance, legal, B2B SaaS) this is the difference between being the source AI quotes and being the source AI mentions.

Methodology

Cited samples up to 5 pages from your site and checks each for author attribution in two forms: schema-backed (the strongest signal) and visible-only (a weaker fallback). The signal’s score depends on which form is found, evaluated across the whole sample rather than per page. Schema-backed attribution. A page has schema-backed authorship if any of these three sources declares an author:
  • A JSON-LD block with an author field (either a string like "Jane Doe" or a Person object like {"@type": "Person", "name": "Jane Doe"})
  • A <meta name="author" content="…"> tag in the page head
  • An element with itemprop="author", rel="author", or any class containing “author” (case-insensitive) — but only the first two count as schema-backed; the class-based fallback is visible-only
Schema-backed attribution is the strongest signal because it’s structured: AI parsers extract author.name directly without having to guess which DOM element holds the byline. If at least one sampled page has schema-backed attribution, the signal scores 5/5. Visible-only attribution. If no page has schema markup but at least one has a visible author name (extracted from a class="author" element, an itemprop="author" text node, or a rel="author" anchor), the signal scores 3/5. The byline exists for human readers but AI parsers have to infer the role from class names rather than schema. No attribution. If no page has either form, the signal scores 0/5. AI models attribute the content to the site or organization, not to any person. The signal scores out of 5. Status thresholds: pass at 4/5 (requires schema-backed attribution on at least one page), partial at 2/5 (visible-only attribution), fail below. Why a single passing page lifts the score? The signal models template-driven authorship — if your article template renders <meta name="author"> once, every article inherits it. One sampled article confirms the template works; the rest of the site likely follows the same pattern.

Verification

You can verify our finding yourself in a browser. Step 1: Open the pages we sampled. Cited reports the URLs we tested. Open each in a new tab. Step 2: Check JSON-LD for author. Open DevTools (Cmd+Option+I / Ctrl+Shift+I), Console tab, and run:
[...document.querySelectorAll('script[type="application/ld+json"]')].flatMap(s => { try { const d = JSON.parse(s.textContent); return Array.isArray(d) ? d : [d]; } catch { return []; } }).map(d => d.author).filter(Boolean)
This returns every author field found in JSON-LD blocks. A string or an object with a name field counts as schema-backed attribution. Step 3: Check the meta tag and visible byline. In the Console, run document.querySelector('meta[name="author"]')?.content to read the <meta name="author"> tag if present. Then look at the page itself — most articles render the author name in a byline element near the title. If that element has a class like .author, .byline, or .post-author, it counts as visible-only. Step 4: Spot-check author bio links. Schema-backed attribution is most credible when the author also has a bio page on the same site (/authors/jane-doe or /team/jane-doe). The scanner doesn’t check for the bio page directly, but AI models follow author links to assess expertise. If your author byline is plain text with no link to a bio, you’re leaving credibility on the table even though Cited reports the page as passing. If your verification disagrees with Cited’s finding, that’s a bug — let us know.

Technical detail

Author attribution as a citation signal traces to Schema.org’s Article and Person types (introduced 2011) and Google’s E-E-A-T framework (Experience, Expertise, Authoritativeness, Trustworthiness), formalized in the Search Quality Rater Guidelines from 2014 onward. AI models inherited the same evaluation path because the training data already encoded these signals as quality markers. Extraction logic. Cited’s crawler runs three detection passes per page, in priority order, and stops at the first match:
  • JSON-LD author field — every <script type="application/ld+json"> block is parsed, and any author property is extracted. If author is an object, its name field is used; if a string, the string itself is the author name. This sets authorInfo.schemaFound = true.
  • <meta name="author"> — if no JSON-LD author found, the page’s meta[name="author"] tag is read. A non-empty content attribute sets authorInfo.schemaFound = true as well; the scanner treats meta-author as schema-equivalent because both are structured declarations.
  • DOM element fallback — if neither of the above match, the scanner queries (in this order): [itemprop="author"], [class*="author" i], [rel="author"]. The first element’s trimmed text content is the author name. This sets schemaFound = false (visible-only).
The class*="author" i selector uses CSS’s case-insensitive partial-match — .AuthorName, .post-author, .author-card, and .byline-author all match. Score calculation. The scanner counts pages where schemaFound = true and pages where name is non-null. If any page has schemaFound = true, score = 5. Else if any page has name non-null, score = 3. Else score = 0. There’s no fractional credit — one page passes the whole site for this signal because authorship templates propagate. Edge cases the scanner handles:
  • Author as an array — Schema.org allows "author": [{"@type": "Person", "name": "A"}, {"@type": "Person", "name": "B"}] for co-authored content. The crawler reads the first author’s name and sets schemaFound = true; co-authorship isn’t enumerated but the page still passes the signal.
  • Organization as author"author": {"@type": "Organization", "name": "Editorial Team"} is schema-valid and counts as schema-backed attribution. AI models accept organizational authorship for editorial brands, even though individual experts typically rank higher for expertise queries.
  • Empty <meta name="author"> — a meta tag with content="" doesn’t set schemaFound. The scanner requires non-empty trimmed content.
  • Generic class names — a <div class="author">Posted by</div> element matches the class selector but the text content is “Posted by” (not a name). The scanner extracts this as the author name with no validation; the page passes visible-only with a non-name string. AI models filter this out at the consumption side, but Cited reports it as detected.
  • Server-rendered vs client-rendered bylines — bylines added by JS after page load are detected because the scanner reads the post-hydration DOM (3-second Puppeteer delay). Bylines that lazy-load on scroll may be missed.
What this signal does not measure:
  • Author bio depth. A byline linking to a 500-word bio page with credentials scores the same as a byline with a plain text name. The scanner counts attribution presence, not the strength of the author’s credentials.
  • Author authority across sites. AI models cross-reference authors across sites to assess authority (an author who writes for Wired and Cited’s blog ranks higher than one who only appears on Cited’s blog). The scanner only sees this page.
  • Generic attributions. “Admin”, “Staff”, “Editor”, “Team” all count as visible-only attribution if they appear in a class-matched element. AI models treat these as effectively anonymous, but the scanner reports them as detected.
  • Author images or social links. Visible photos and links to LinkedIn / X profiles add credibility but aren’t scored. Pages with strong bios beyond what the scanner detects underperform their attribution score in actual AI citation.
For brands scoring 0-3/5, the highest-leverage fix is adding author to the JSON-LD on article and blog post pages — even a single string value ("author": "Jane Doe") lifts the page from visible-only to schema-backed. Better: a Person object linked to a bio page ("author": {"@type": "Person", "name": "Jane Doe", "url": "https://yoursite.com/authors/jane-doe"}). Most modern CMSes (WordPress with Yoast, Webflow with built-in author fields, Ghost) emit this automatically once an author is assigned to the post. See also: JSON-LD Structured Data, Trust & Credential Indicators, Content Freshness.