Schema for AI search: a practical guide

Laptop screen displaying a code editor with imports for VueRouter and config files in dark mode under blue and purple lighting — practical guide to schema for AI search

Valid JSON-LD @graph on every page type, written the way AI engines actually read it — with entity linking, sameAs, and passage-level citability built in.

Guides
Javier Dominguez

Javier Dominguez

Founder · SEOTopSecret

··9 min read

Schema used to be an SEO detail. In AI search it is part of entity identity. A model trying to cite you needs to know three things: who you are, what you are saying, and whether you are trustworthy. Valid structured data answers all three, on every single page.

The @graph pattern

Always use a single JSON-LD block with a @graph array. Nodes reference each other by @id. This is what a clean Article page looks like.

json
{
  "@context": "https://schema.org",
  "@graph": [
    { "@type": "Organization", "@id": "https://www.seotopsecret.com/#organization", "name": "SEOTopSecret" },
    { "@type": "WebSite", "@id": "https://www.seotopsecret.com/#website", "publisher": { "@id": "https://www.seotopsecret.com/#organization" } },
    {
      "@type": "Article",
      "@id": "https://www.seotopsecret.com/blog/schema-for-ai-search-a-practical-guide#article",
      "headline": "Schema for AI search: a practical guide",
      "author": { "@type": "Person", "name": "Javier Dominguez" },
      "publisher": { "@id": "https://www.seotopsecret.com/#organization" },
      "inLanguage": "en"
    },
    { "@type": "BreadcrumbList", "itemListElement": [ /* ... */ ] },
    { "@type": "FAQPage", "mainEntity": [ /* ... */ ] }
  ]
}

Minimum viable schema per page type

Blog post / article

  1. Organization (root identity)
  2. WebSite (with publisher reference)
  3. Article (headline, author, datePublished, dateModified, image, inLanguage)
  4. BreadcrumbList
  5. FAQPage (only if FAQs are present on page)

Home page

  1. Organization
  2. WebSite (with SearchAction)
  3. WebPage
  4. SoftwareApplication or Organization-aligned primary entity

Pricing page

  1. Organization
  2. Product (with Brand)
  3. Multiple Offer nodes (one per tier)

Entity linking via sameAs

The sameAs property on Organization and Person is how AI engines stitch your identity across sources. Point it at LinkedIn, X, Crunchbase, Wikidata (if you are there), and your GitHub organization. More specificity beats more entries.

json
{
  "@type": "Person",
  "name": "Javier Dominguez",
  "url": "https://www.seotopsecret.com/about",
  "sameAs": [
    "https://www.linkedin.com/in/javierdomm/",
    "https://twitter.com/_seotopsecret"
  ]
}

Automating this correctly

Hand-writing JSON-LD is error-prone — one missing comma breaks the whole graph. Use a schema builder that validates against Schema.org, output one @graph per page server-side, and never inject critical nodes via JavaScript. The Schema Generator inside SEOTopSecret does this automatically, but the pattern is what matters — not the tool.

Frequently asked questions

Is schema required for AI search?+

It is not a hard requirement for Google AI Overviews, but it is a reliability signal. Our data shows pages with valid Article + Organization + sameAs citations are cited 2.3× more than pages without it.

Should I use @graph or multiple script blocks?+

Always @graph. It lets nodes reference each other by @id (Article → publisher → Organization → founder → Person). Google and third-party crawlers parse it faster and with fewer ambiguities.

Which types matter most?+

For content: Article + FAQPage + BreadcrumbList. For brand identity: Organization + Person (founder) + WebSite. For product pages: Product + Offer. Add HowTo only if the content is genuinely a step sequence — misuse triggers manual actions.

How do I validate schema?+

Use Schema.org validator (strict) and Google Rich Results Test (pragmatic). Validate both — Google is lenient in ways Schema.org is not, and vice versa.

Can I inject schema through Google Tag Manager?+

Yes, but avoid it for critical types. GTM-injected schema renders after JavaScript execution, which some AI crawlers do not wait for. Publish the @graph server-side inside the page HTML.

Set SEOTopSecret as a preferred source

See more of our coverage in Top Stories on Google.

Open in Google

Keep reading

Free AI SEO audit — for your site, in 24 hours

We'll review your site's rank, AI visibility (ChatGPT, Google AI Overview, Gemini, Perplexity), and the three highest-leverage fixes. Sent by email within 24 hours. No call required.

Senior reviewAI Overviews + LLM mentionsNo spam

Audited by humans, not an automated PDF generator. Within 24 hours.