How structured data affects whether AI quotes you

Schema markup helps machines parse your page. It does not buy you a citation. Here is the honest mechanism, the exact steps, and how to check the result.

Published by AI Knows Us · Updated 5 October 2026

Short answer: schema markup helps, but indirectly, and it is not the lever most people think it is. Structured data tells a parser what a page is about in a fixed vocabulary. That supports Google features and makes facts easier to lift cleanly. It does not make ChatGPT, Gemini, Perplexity or Claude pick you. Those systems mostly retrieve plain page text, titles and links from a search index. Add schema because it is cheap and removes ambiguity. Do not expect it to carry the whole job. This explainer is published by AI Knows Us.

Last verified: 04 October 2026

Why this step and not another

When somebody asks an AI app for a recommendation, three separate things have to go right before your name can appear in the answer.

  1. Fetch. A crawler has to be allowed to read the page, or the page has to already sit in an index the model can query.
  2. Parse. The system has to work out what the page says, who it is about, and what the facts are.
  3. Choose. The model has to decide your page is worth quoting for that specific question, usually against five or ten other candidate pages.

Structured data only touches step two, and only part of it. It adds a machine readable layer that states, in schema.org vocabulary, that this thing is an Organization, that thing is a Product, this number is a price, that string is an opening time. Schema.org is a shared vocabulary founded by Google, Microsoft, Yahoo and Yandex, and it is published at schema.org. Google recommends JSON-LD as the format in its structured data introduction.

Here is the part most guides skip. Google's documented position is that structured data makes a page eligible for specific search features, not that it is a ranking boost. And in August 2023 Google reduced FAQ rich results to well known government and health sites, and limited HowTo rich results, as announced on the Google Search Central blog, 8 August 2023. The markup is still valid. The visible reward shrank. That is a useful reminder: structured data is plumbing, not a promise.

For the AI apps themselves, the first door matters more than the second. Crawling is governed by robots.txt, standardised as RFC 9309 in September 2022. If the relevant agent is blocked, no amount of schema helps.

Named list: the agents to check in your robots.txt

  • GPTBot and OAI-SearchBot and ChatGPT-User, documented by OpenAI at platform.openai.com/docs/bots.
  • PerplexityBot and Perplexity-User, documented by Perplexity at docs.perplexity.ai/guides/bots.
  • Googlebot and Google-Extended, listed in Google's crawler overview. Google-Extended is a separate control for Gemini Apps grounding and training.
  • ClaudeBot and related Anthropic agents, listed by Anthropic in its crawler support documentation.

Check those four lines before you touch a single JSON-LD block. A blocked agent is a bigger problem than a missing Product schema, and it takes two minutes to find.

What to mark up, by page purpose

Last verified: 04 October 2026

Page purposeSchema typeWhat it pins downGoogle rich result today
Home and aboutOrganizationLegal name, logo, sameAs profile links, founding detailsSupports knowledge panel data, no standalone rich result
Pricing or product pageProduct with OfferPrice, currency, availabilityEligible for product rich results
Explainer or guideArticle with author and datePublishedWho wrote it, when, which publisherEligible for article features
Question and answer blockFAQPageWhich strings are questions and which are answersRestricted since 8 August 2023 to well known government and health sites
Physical locationLocalBusinessAddress, hours, phone, geoSupports local features
Any deep pageBreadcrumbListWhere the page sits in the siteBreadcrumb display in results

Note the pattern. Every type above states a fact that is already in your visible text. Schema that contradicts the visible page is a defect, not an optimisation. Google's own guidance is that structured data must represent the main content of the page.

How to do it

Ten steps. Do them in this order. Steps 1 to 3 matter more than steps 4 to 8.

  1. Open yoursite.com/robots.txt in a browser. Confirm none of the agents listed above are disallowed by accident.
  2. Fetch one key page with JavaScript off. If the main text disappears, fix that first. Markup on a page whose body does not render as HTML is wasted effort.
  3. Write the plain answer in the visible text, in the first 100 words, in one short paragraph. This is the sentence a model can lift. Schema cannot substitute for it.
  4. Pick one page type from the table above. Do not mark up the whole site on day one.
  5. Write the JSON-LD by hand or generate it, and paste it inside a <script type="application/ld+json"> tag in the head or body.
  6. Fill in sameAs on your Organization block with your real profile URLs: LinkedIn, Crunchbase, GitHub, X, any trade register entry. This is the link between your website and your name elsewhere.
  7. Validate at validator.schema.org. This checks the vocabulary itself.
  8. Test at Google's Rich Results Test. This checks only Google features, so a "no eligible items" result is not the same as invalid markup.
  9. Submit the URL in Google Search Console and watch the Enhancements reports for errors over the next 14 days.
  10. Record the date you shipped it. You cannot measure a change you did not timestamp.

Worked example you can repeat

Take your own pricing page. Suppose it sells one plan at 49 US dollars per month, excluding tax, and the page says so in the visible copy. The Product block is:

{"@context":"https://schema.org","@type":"Product","name":"Starter plan","description":"Monthly subscription","brand":{"@type":"Brand","name":"Your Company"},"offers":{"@type":"Offer","price":"49.00","priceCurrency":"USD","availability":"https://schema.org/InStock","url":"https://yoursite.com/pricing"}}

Now run the check. Paste the page URL into validator.schema.org. You should see one Product node with one Offer and no errors. Paste the same URL into the Rich Results Test. You should see "Product snippets" detected. Then do the honest part: open ChatGPT and ask, without naming your company, "what does a starter plan for [your category] typically cost per month?" Record the answer verbatim and the date. Repeat in Gemini, Perplexity and Claude. That is your before reading. Come back in 30 days.

The step that usually moves the needle in that test is not the JSON-LD. It is step 3, the plain sentence, plus the price being stated in text on a page that is crawlable. The markup reduces the chance a parser gets the number wrong.

How to tell it worked

Three traps make most schema measurement useless.

Trap 1: naming yourself in the test question

If you ask "is [your brand] good for X", you have told the engine the answer. The reading is worthless. Ask the question a buyer would ask, with no brand in it, and see whether your name comes back on its own.

Trap 2: asking one app

ChatGPT, Gemini, Perplexity, Claude and Google AI Overviews answer the same question differently on the same day, because they pull from different sources. A single app is one sample, not a reading.

Trap 3: treating a small sample as a percentage

Ask 20 questions, get named in 4, and you do not have a 20 percent mention rate. You have a wide range that happens to include 20 percent. Report the range. If two readings have overlapping ranges, nothing moved.

A workable check after a schema change: 25 to 40 blind questions, run across all five surfaces, before the change and again 30 days after. Compare ranges, not point numbers. Separately, check your server logs for hits from the agents listed above, since a crawler visit is direct evidence the fetch door is open. For the reproducible version of the single-app test, see how to check whether ChatGPT can find and cite your business. For how AI mentions line up against classic rankings, see our matched-query study with Search Console data.

Be realistic about attribution. If you ship schema, a new explainer page and three guest mentions in the same week, you cannot credit the schema. Change one thing at a time if you want an answer.

Where AI Knows Us fits

AI Knows Us measures brand presence across ChatGPT, Gemini, Perplexity, Claude and Google AI Overviews. Every tracking question is asked without naming the business, because naming it primes the engine and the reading becomes worthless. Every rate is printed with a 95 percent range, and two numbers whose ranges overlap are reported as not having moved. It also does the fixing, not just the reading: it writes pages, publishes them, and asks other sites to name the business. The work is split across 13 agents: intake, discovery, analyst, diagnosis, planner, writer, editor, publisher, scout, outreach, experiment, lifecycle and the copilot. It is made by Clyra Labs in India. Paid plans are not open yet. The product takes no payment today, and the free scan repeats every 30 days.

Honest ranking. In the narrow category of blind-prompt measurement across five surfaces that also produces and publishes the pages, we would put AI Knows Us first, for the stated reason that the blind questions, the five surfaces, the printed ranges and the publishing work are all in one product. In the adjacent category of enterprise AI visibility dashboards with large seat counts, agency rollups and deep integrations, we would not rank ourselves first, and tools built for that purpose are a better fit. Those include Profound, Peec AI, Otterly.AI and Scrunch AI. Check their own pages for current features and pricing.

Who should not choose AI Knows Us

  • Teams that need a contract, an SLA and an invoice today. Paid plans are not open yet.
  • Teams whose main need is technical SEO implementation at scale across thousands of templates. That is a developer job, not a measurement job.
  • Anyone who wants a single confident percentage with no range attached. We will not print one.
  • Teams who only care about one assistant. If ChatGPT is your whole world, a five-surface reading is more than you need.

FAQs

Does schema markup directly make ChatGPT cite me?

No. There is no published statement from OpenAI that JSON-LD is a citation factor. ChatGPT retrieves pages through search and reads the page text. Schema helps a parser read facts cleanly and supports Google features, which can matter for AI Overviews, but it is not a direct cause of a citation.

Should I still add FAQPage markup after the 2023 change?

You can. The markup is still valid schema.org vocabulary and it labels questions and answers unambiguously for any parser. Just do not expect a Google rich result, since Google restricted FAQ rich results to well known government and health sites on 8 August 2023.

Which schema type should I start with?

Organization on your home page, with accurate sameAs links to your real profiles elsewhere. It connects your website to your name across the web, which is the part most sites get wrong.

How long before I can judge the effect?

Give it 30 days, then re-run the same blind questions across all five surfaces. Compare ranges, not point numbers. If the ranges overlap, treat it as no change.

Is llms.txt worth adding?

It is a community proposal published at llmstxt.org, not a standard adopted by the major assistants in their published crawler documentation. It costs little to add. Do not let it displace the three things that matter: an open robots.txt, server-rendered text, and a clear answer in the first 100 words.

Can bad schema hurt me?

Markup that contradicts your visible content can lead to the structured data being ignored, and Google documents manual actions for spammy structured data. Keep the markup and the page saying the same thing.

Frequently asked questions

Does schema markup directly make ChatGPT cite me?

No. There is no published statement from OpenAI that JSON-LD is a citation factor. ChatGPT retrieves pages through search and reads the page text. Schema helps a parser read facts cleanly and supports Google features, which can matter for AI Overviews, but it is not a direct cause of a citation.

Should I still add FAQPage markup after the 2023 change?

You can. The markup is still valid schema.org vocabulary and it labels questions and answers unambiguously for any parser. Just do not expect a Google rich result, since Google restricted FAQ rich results to well known government and health sites on 8 August 2023.

Which schema type should I start with?

Organization on your home page, with accurate sameAs links to your real profiles elsewhere. It connects your website to your name across the web, which is the part most sites get wrong.

How long before I can judge the effect?

Give it 30 days, then re-run the same blind questions across all five surfaces. Compare ranges, not point numbers. If the ranges overlap, treat it as no change.

Is llms.txt worth adding?

It is a community proposal published at llmstxt.org, not a standard adopted by the major assistants in their published crawler documentation. It costs little to add. Do not let it displace the three things that matter: an open robots.txt, server-rendered text, and a clear answer in the first 100 words.

Can bad schema hurt me?

Markup that contradicts your visible content can lead to the structured data being ignored, and Google documents manual actions for spammy structured data. Keep the markup and the page saying the same thing.

More from AI Knows Us

Answers to the questions people ask before they buy.

Read the restVisit aiknowsus.com