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



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.
“@context”: “https://schema.org”,
“@type”: “Article”,
“@id”: “https://example.com/page#article”,
“headline”: “Your actual page headline”,
“dateModified”: “2026-05-26”,
“author”: {
“@type”: “Person”,
“name”: “Real Author Name”
}
}
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.
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 |
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.
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.
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.
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.
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.
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.
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?
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 & 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
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
- Google Search Central — Introduction to Structured Data (2026)
- Digital Applied — Structured Data After I/O 2026: Schema Cheat Sheet
- Search Engine Roundtable — Ahrefs Schema Citation Study (1,885 pages, May 2026)
- Digital Applied — Schema Markup After March 2026: Structured Data Update
Secondary Sources
- Digi Solutions — Schema Markup Best Practices & Key Optimization Strategies 2025
- SEO Strategy — JSON-LD Schema Markup: Complete Implementation Guide 2026
- ViserX — Google Drops 7 Schema Types: What Marketers Must Know
- SiteSpeak AI — Schema for AI Overviews: What Google Actually Uses
- Schema.org — Official vocabulary and specification (v30.0)
Related Articles on SEO Hack
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