How to Create Perfect Structured Data for Google

IndexNow doesn’t index your Google results. Here’s what actually does.

How to Create Perfect Structured Data for Google (2026 Complete Guide)

How to Create Perfect Structured Data for Google

The implementation landscape shifted hard in 2025–2026. Here is what actually works, what was quietly killed, and the one thing most guides won’t say aloud about AI Overviews.

TL;DR — The 60-second version

Structured data is no longer about hunting rich snippets. After Google’s March 2026 core update and the May 2026 FAQ rich result removal, the game has shifted to entity clarity and content-to-schema accuracy.

  • Use JSON-LD exclusively. Google recommends it; Microdata and RDFa are legacy paths.
  • 7 schema types lost rich result support in 2025. FAQPage rich results were retired on May 7, 2026.
  • Ahrefs tracked 1,885 pages after adding schema: no statistically significant AI citation boost.
  • The real leverage in 2026: Organization + Person schema with sameAs identifiers, accurate Article markup, and eliminating content/schema mismatches.
  • One wrong comma silently breaks everything. Google won’t warn you — it just ignores the block.

Should you even implement structured data?

Not every page needs schema markup, and adding it incorrectly is actively worse than not having it. Google will ignore invalid markup in the best case and issue a manual action for hidden or mismatched data in the worst.

Framework: Proceed or Skip
Proceed if your page has a clear, singular content type: product, recipe, article, local business, event, FAQ (where questions exist visibly on-page), video, or job posting.
Proceed if you have an Organization or Person page with verifiable identity signals (linked social profiles, Wikipedia presence, brand mentions).
Skip if your page is a generic blog post without a defined type, a thin landing page, or you’d be marking up content that isn’t actually visible to users.
Skip if you’re adding schema purely to target AI Overviews — the evidence for this working is, at best, disputed (more on that below).

What changed in 2025–2026 — the decisions that matter

Most structured data guides are a year out of date. Here is a compressed summary of the shifts that should change your implementation decisions right now.

June 2025: Google drops 7 schema types

In June 2025, Google officially announced it would no longer support rich results for several previously promoted schema types. The changes were purely visual — no ranking penalty was applied — but the click-through-rate implications for anyone relying on those enhanced presentations are real.

Schema type Status Action required
Book Actions Deprecated Remove from production or leave (Google ignores it)
Course Info Deprecated Remove; use Course type per updated spec
Estimated Salary Deprecated Remove
FAQ (rich result) Retired May 7, 2026 Keep for entity resolution; remove expectation of a rich result
How-To (rich result) Restricted Still valid for procedural content; no general SERP display
Product (basic) Active Combine with Merchant Center for full coverage
Article Active Highest priority for editorial sites

No rush to delete deprecated code

Google simply ignores deprecated types rather than penalising them. However, leaving dead code in your templates creates maintenance overhead and can mask real errors in Search Console. Clean it up on your next template pass.

March 2026: The intent-alignment update

Google’s March 2026 core update narrowed rich result eligibility to pages where the schema describes the primary content purpose of the page. Supplementary schema — FAQ blocks added to product pages to grab extra SERP real estate, How-To markup embedded in articles that weren’t actually tutorials — stopped qualifying for rich results. This ended what had been a widespread padding tactic.

The practical consequence: sites that marked up content honestly, because the schema genuinely described the page, saw their rich result rates hold or improve. Sites that had been gaming eligibility saw drops.

May 2026: FAQ rich results retired entirely

On May 7, 2026 — the same day as Google I/O — FAQPage rich results were fully removed from standard search results. This had been coming since August 2023, when Google restricted them to authoritative government and health sites only. The formal announcement at I/O removed the feature entirely. FAQPage schema still has value for entity resolution and AI readability, but it no longer produces any visual enhancement in the SERP.

Which schema types to prioritise in 2026

Not all schema is equal. Some types unlock direct rich results. Others contribute to entity understanding without producing any visible enhancement. Knowing which is which prevents wasted effort.

Schema type Rich result? Priority Use if…
Article / NewsArticle Yes Tier 1 Any editorial, news, or blog content
Product + Offer Yes Tier 1 E-commerce product pages
LocalBusiness Yes Tier 1 Any business with a physical presence
Organization + sameAs Knowledge Panel Tier 1 Every site — entity disambiguation
BreadcrumbList Yes (URL breadcrumb) Tier 1 Any site with a clear URL hierarchy
Recipe Yes Tier 1 Food or cooking content
VideoObject Yes Tier 1 Pages with embedded video
HowTo Restricted Tier 2 True step-by-step procedural guides only
FAQPage No (retired) Tier 2 Genuinely visible Q&A on page; entity value only
Person Knowledge Panel Tier 2 Named author pages, about pages
Event Yes Tier 2 Pages promoting specific events with dates
JobPosting Yes Tier 2 Careers or jobs pages
👉 In one rule: mark up only what the page is actually about. If you’d have to squint to justify the type, skip it.

JSON-LD: the correct implementation format

Google supports three formats — JSON-LD, Microdata, and RDFa — and recommends JSON-LD because it can be maintained separately from HTML, scales cleanly across templates, and produces far fewer errors. In practice, every modern implementation should be JSON-LD. Microdata and RDFa are worth understanding historically, not worth writing in 2026.

Anatomy of a correct Article block

Below is a complete, production-ready Article JSON-LD block. Each property is there for a reason; each reason is annotated.

<script type="application/ld+json">{  "@context": "https://schema.org",  "@type": "Article",  "@id": "https://www.seohack.info/structured-data-guide/#article",  "headline": "How to Create Perfect Structured Data for Google",  "description": "A complete 2026 guide to JSON-LD, schema types, entity strategy, and AI citation realities.",  "datePublished": "2026-05-26",  "dateModified": "2026-05-26",  "image": {    "@type": "ImageObject",    "url": "https://www.seohack.info/images/structured-data-og.jpg",    "width": 1200,    "height": 630  },  "author": {    "@type": "Person",    "@id": "https://www.seohack.info/author/editorial/#person",    "name": "SEO Hack Editorial"  },  "publisher": {    "@type": "Organization",    "@id": "https://www.seohack.info/#organization",    "name": "SEO Hack",    "logo": {      "@type": "ImageObject",      "url": "https://www.seohack.info/logo.png"    }  },  "mainEntityOfPage": {    "@type": "WebPage",    "@id": "https://www.seohack.info/structured-data-guide/"  }}</script>

The @id graph model — the detail most guides skip

The @id property turns individual schema blocks into a connected graph. When your Article, your Organization, and your Person each carry a consistent @id, Google can resolve them as the same entities across every page on your site — not just isolated declarations per page.

The convention that scales best: use the canonical URL of the entity plus a fragment identifier. https://yourdomain.com/#organization for the company, https://yourdomain.com/author/name/#person for an author, https://yourdomain.com/page/#article for an article. This pattern is consistent, crawlable, and won’t change when you redesign.

The silent failure nobody warns you about

A single missing comma, unclosed bracket, or unescaped quotation mark breaks the entire JSON-LD block. The browser shows no error. Google silently ignores the entire script tag. You won’t know unless you paste the block into a JSON validator or check Search Console. This is the most common cause of “my schema isn’t working” and the easiest to prevent.

Site-wide vs. page-level — where each type lives

Most guides treat every schema block as if it belongs on every page. That is wrong and creates inconsistencies. The correct split:

Site-wide (on every page, ideally injected through your template): Organization, WebSite (with SearchAction for sitelinks search box if relevant), BreadcrumbList.

Page-level (only on the page it describes): Article, Product, Recipe, Event, FAQPage, VideoObject, JobPosting, LocalBusiness.

Duplicating Organization on every single page in separate blocks creates inconsistencies between declarations and muddies the entity signal. Define it once, reference it by @id everywhere else.

The entity-first strategy shift

After the March 2026 update, the highest-leverage structured data work isn’t adding schema to more pages. It is building entity clarity across your site so Google — and AI systems that read Google’s Knowledge Graph — knows unambiguously who you are, what you cover, and that you are trustworthy.

“Organization and Person schema with sameAs identifiers became the highest-leverage implementation type. Sites with clear entity disambiguation saw measurable improvements in both AI Mode citations and Knowledge Panel accuracy.”

The sameAs property is the linchpin. It connects your schema declaration to external authoritative sources — your Wikipedia article, Wikidata entity, LinkedIn profile, Crunchbase listing, and social profiles. Without it, Google’s entity resolution has to guess. With it, you’re explicitly telling Google’s systems: this Organisation block and that Wikipedia entry describe the same entity.

{  "@context": "https://schema.org",  "@type": "Organization",  "@id": "https://www.seohack.info/#organization",  "name": "SEO Hack",  "url": "https://www.seohack.info/",  "logo": {    "@type": "ImageObject",    "url": "https://www.seohack.info/logo.png"  },  "sameAs": [    "https://twitter.com/seohack",    "https://www.linkedin.com/company/seohack",    "https://www.wikidata.org/wiki/Q_YOURQNUMBER"  ]}

If your brand doesn’t have a Wikipedia article or Wikidata entry, create one if the notability threshold is met, or strengthen the external signals that support one: press coverage, third-party brand mentions, consistent NAP data for local businesses.

Structured data and AI Overviews: the honest answer

There is more misinformation about this than any other topic in structured data. Here is what is actually known, as of May 2026, without the hype.

What Google says officially

Google has stated explicitly that there is no schema type that unlocks AI Overview or AI Mode citation eligibility. There is no special markup for AI Overviews. The structured data you implement for organic search is the same markup Gemini-powered AI Mode reads — with a different downstream effect.

What the data actually shows

The most rigorous independent study on this question was published recently by Ahrefs. They tracked 1,885 web pages that added JSON-LD schema between August 2025 and March 2026, matched against 4,000 control pages, and measured citation changes across Google AI Overviews, AI Mode, and ChatGPT. The result: no statistically significant uplift on any platform. In fact, the data showed a 4.6% decline in AI Overviews appearances — small but statistically significant against the control group.

The conflicting evidence

Several other studies — Wellows, Stackmatix, and the arXiv SDSR research from March 2026 — report positive correlations between structured data and AI citation rates. These use different methodologies, observational panels rather than controlled experiments, and should be read accordingly. Correlation between “pages that have schema” and “pages that get cited” may simply reflect that pages serious enough to implement schema are also serious enough to produce the content quality that drives citations.

The honest practitioner view: implement schema because it earns rich results for supported types, improves entity disambiguation, and makes your content easier for machines to parse. Do not implement it as a primary lever for AI citation rates. Content quality, topical authority, and E-E-A-T signals are the determining factors for AI citations — not the presence of a JSON-LD block.

The complete implementation workflow

This is the sequence used in production. It is not theoretical.

1

Audit what is already on the site

Open Google Search Console → Enhancements. You will see every schema type Google has already found, plus all warnings and errors. This is your baseline. Fix errors before adding any new markup — errors in existing blocks can suppress valid new implementations.

2

Map schema types to page templates

List every page template on your site (homepage, product, category, article, about, contact, etc.) and assign the appropriate schema type to each. One primary type per template. Resist the urge to add secondary types unless genuinely relevant.

3

Write and validate before deploying

Write the JSON-LD block. Paste it into validator.schema.org to check Schema.org compliance. Then paste the live page URL into Google’s Rich Results Test — the two validators catch different classes of issues. Both must pass.

4

Deploy and request indexing

Deploy to production. Use the URL Inspection tool in Search Console to request a fresh crawl. Google does not process schema from cached versions of pages.

5

Monitor Search Console for 4 weeks

Check the Enhancements section weekly for the first month after deployment. New errors appear here, often caused by dynamic content being pulled into schema fields incorrectly — prices, dates, or descriptions that change and then drift out of sync with the markup.

6

Audit quarterly

Schema is not a one-off task. Template changes, CMS updates, and price or inventory changes can silently break structured data. Schedule a full crawl-and-validate pass every quarter. Treat it as versioned code, not a one-time setup.

Integration type — where does the JSON-LD live in your CMS?

Integration Options

Choose based on your CMS capability and maintenance overhead:

Native CMS plugin (preferred): Yoast, Rank Math, or similar plugins handle injection automatically. Data stays in sync with your content fields. Lowest maintenance overhead. Risk: plugins can duplicate blocks if misconfigured.

Hardcoded per template: Most flexible. Developer writes JSON-LD into the template directly. No plugin dependency. Risk: dynamic values (prices, dates) must be populated programmatically and can drift if not maintained.

Google Tag Manager injection: Works for sites without CMS access. JavaScript-injected JSON-LD is generally processed by Google. Risk: render delay if GTM fires slowly, harder to audit.

Silent failures that kill rich results

These are the errors seen most consistently in audits — and they are almost always invisible until you actively look for them.

The JSON syntax error

A trailing comma after the last item in an array, a missing closing brace, or an HTML entity pulled into a property value (for example, a description field that contains &amp; instead of &) will make the entire block unparseable. Google ignores it silently. Run every JSON-LD block through JSONLint before deploying. This takes 30 seconds and catches the most common class of errors.

Schema-to-content mismatch

If your Product schema declares a price of €49 but the visible page shows €99, Google may issue a manual action for hidden or mismatched structured data. More commonly, it simply suppresses the rich result without notifying you. The rule is absolute: every property in your JSON-LD must match something visible to a user reading the page.

Marking up hidden content

FAQPage markup where the questions and answers only exist in the JSON-LD — not on the page itself in readable form — violates Google’s structured data policies. The same applies to Review markup for reviews that aren’t visible, or Event markup for events buried behind a login. Google’s stance is clear: structured data is an annotation of visible content, not a substitute for it.

Duplicate Organisation declarations

Many sites end up with Organisation schema declared in three places: the site’s theme, an SEO plugin, and a manually added block. When these declarations differ — different logo URL, different legal name format, different sameAs links — the conflicting signals reduce, rather than increase, entity confidence. Define your Organisation once with a stable @id and reference it everywhere else.

Using smart quotes in JSON

Copy-pasting schema from a Word document or Google Doc can silently substitute curly quotes (" ") for straight quotes ("). These are valid in HTML but invalid in JSON. The block fails to parse. Use a plain text editor or code editor, never a word processor, when writing JSON-LD.

The minimal tool stack

You do not need ten tools to implement structured data well. You need four.

80% Solution Stack

Google Rich Results Test Eligibility verification and rich result preview before deployment
validator.schema.org Schema.org spec compliance — catches errors Google’s tool misses
JSONLint.com JSON syntax validation — run before every deployment, takes 10 seconds
Google Search Console (Enhancements) Ongoing monitoring — errors, warnings, and rich result impressions

For enterprise sites with thousands of templated pages, Screaming Frog can extract and audit all JSON-LD blocks in a single crawl, allowing you to spot inconsistencies at scale. For small and medium sites, the four-tool stack above is sufficient.


FAQ

Does removing deprecated schema types hurt my rankings?

No. Google stated explicitly that the 2025 schema deprecations are a visual change, not an algorithmic one. Your ranking positions won’t drop because you removed Course Info or Book Actions markup. The main loss is the visual enhancement in the SERP, which affects click-through rate, not position. Code cleanup is best practice but there is no urgency.

Is it worth adding FAQPage schema now that the rich result is gone?

Possibly, in a narrower way. FAQPage no longer generates any visual rich result after May 7, 2026. However, Google still reads structured data for entity resolution and content understanding. If your page has a genuine, visible FAQ section, the markup still signals content structure clearly. If you were adding FAQPage purely to capture a rich snippet, the rationale is now gone.

Can I add schema to a page and then change the content without updating the markup?

This is one of the most common mistakes in production. When content changes — a price update, a new publication date, a revised headline — the schema must update in sync. Stale markup is a mismatch violation. On CMS-driven sites, the JSON-LD should pull values dynamically from the same data sources that populate the visible content, not be hardcoded strings that drift.

How long does it take for structured data to appear as a rich result after deployment?

Google needs to crawl and reindex the page first. For a newly deployed URL, that can take anywhere from a few hours (for high-authority, frequently crawled sites) to several weeks. Using the URL Inspection tool to request indexing accelerates this. After indexing, rich result eligibility typically reflects in Search Console within one to two weeks.

Should I use Microdata or RDFa for any reason in 2026?

Almost never. JSON-LD is Google’s recommendation and produces fewer implementation errors because it sits separately from the HTML structure. Microdata and RDFa require annotating the actual HTML elements, which makes them harder to maintain and more prone to breaking during template changes. The only exception might be legacy platforms where injecting a separate JSON-LD block is technically impossible — in that case, RDFa or Microdata is better than nothing.


The uncomfortable truth about schema in 2026

Most of the energy spent on structured data in the past two years was directed at two goals that have now largely collapsed: capturing FAQ rich snippets (retired) and boosting AI Overview visibility (not confirmed to work by controlled study).

What remains is more durable and, honestly, more interesting. Structured data done correctly is identity infrastructure. It tells every machine that reads your site — Google’s crawler, AI Mode’s Gemini, Bing’s Copilot, any future agent — who you are with precision. That clarity compounds. A well-defined Organisation entity with consistent sameAs links becomes the foundation for Knowledge Panel accuracy, AI citation confidence, and entity recognition across every future Google product.

The uncomfortable trade-off: this kind of entity-level investment pays off over twelve to eighteen months, not in the next quarterly report. It requires discipline — keeping schema in sync with content, building external entity signals, treating markup as versioned infrastructure rather than a quick-win SEO tactic.

The sites that will benefit most from structured data in 2027 are the ones implementing it correctly for the right reasons in 2026 — not chasing features that have already been deprecated.

The short version: implement schema because your content deserves to be understood clearly, not because you’re hunting a SERP visual. The first reason scales indefinitely. The second reason has a history of being deprecated.

Primary Sources

Secondary Sources

Related Articles on SEO Hack

Last reviewed: May 26, 2026 — updated post-Google I/O 2026 © SEO Hack · seohack.info

Best JSON-LD Schema Markup Generators (2025–2026): Compared, Ranked & Reviewed

Schema Markup Generators: The Complete Guide to AI-Ready Structured Data

How Schema Markup Gets You Rich Snippets (and More Clicks)

Free Schema Markup Tools SEO Experts Use — What Top Performers Do Differently

Schema Markup Secrets That Skyrocket Click-Through Rates

Schema Markup Mistakes That Hurt SEO Rankings — And How to Fix Every One