ShieldThemes Web Development
+1 (415) 555-0142 Get a quote →
← Journal/SEO

Schema markup that still earns rich results, and what to skip

Structured data is worth doing well on a handful of types. Which schema we implement, how we generate it, and the markup we no longer bother with.

Ravi Iyer
Ravi Iyer
SEO & Performance Lead · Jun 03, 2025 · 5 min read
Schema markup that still earns rich results, and what to skip

Structured data has gone through several hype cycles. At one point every page on the web seemed to carry FAQ markup in the hope of extra space in search results. Then search engines narrowed which rich results they show, and a lot of that effort stopped paying off. Schema markup is still valuable, and arguably more so as AI-driven search experiences rely on machine-readable facts about entities, products and organizations. But the value is concentrated in a few types, implemented accurately and generated from real data. Here is how we approach it.

The types that consistently pay off

For most of the businesses we work with, these types deliver visible results or clearer understanding by search engines:

  • Product, with Offer and AggregateRating. For e-commerce, this drives price, availability and review stars in results and feeds merchant listings. It is the highest-value markup for stores, provided the data matches what is on the page.
  • Organization and WebSite. Name, logo, contact points, social profiles and sameAs links help search engines connect your site to your brand entity. This supports knowledge panels and increasingly how AI systems describe you.
  • LocalBusiness and its subtypes for companies with physical locations, with address, hours and geo coordinates consistent with your business profiles.
  • BreadcrumbList, which replaces raw URLs with readable paths in results and reinforces your site hierarchy.
  • Article with author and date information for editorial content, supporting authorship signals.
  • Event, JobPosting, Recipe, Course and similar where they genuinely fit, since these unlock specialized search features.

What we no longer prioritize

Some markup types still validate but rarely produce visible results for typical business sites:

  1. FAQPage on general commercial pages. FAQ rich results are now limited to a narrow set of authoritative sites. The markup does little harm, but we do not add FAQ sections just to carry it.
  2. HowTo, which search has largely stopped displaying as a rich result.
  3. Review markup on your own business on your own site. Self-serving reviews of the organization are not eligible for stars.
  4. Speculative or obscure types that no search feature uses. They add maintenance without benefit.
The question is not whether a schema type exists. It is whether a search feature uses it, and whether you can keep the data accurate for years.

Generate it from data, not by hand

The most common structured data problem we see is not missing markup; it is markup that drifts from reality. A price in the JSON-LD that differs from the price on the page, a product marked in stock when it is sold out, an event whose date passed months ago. Search engines treat mismatches as a quality problem, and in the worst cases issue manual actions.

Our rule is that structured data should be generated from the same source as the visible content:

  • On WordPress, we output JSON-LD from theme templates or a small plugin using post fields and custom fields, rather than pasting blocks into the editor.
  • On Shopify, product and offer data come from Liquid objects in the theme, so price and availability update with the catalog.
  • On headless and custom sites, we build a single function per content type that returns the schema object, with tests to confirm required properties are present.

A simplified example of the pattern for an article template:

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "{{ post.title }}",
  "datePublished": "{{ post.published_at }}",
  "dateModified": "{{ post.updated_at }}",
  "author": { "@type": "Person", "name": "{{ author.name }}", "url": "{{ author.url }}" },
  "publisher": { "@id": "https://example.com/#organization" }
}

Using @id references to connect entities, such as linking every article's publisher to a single Organization node, keeps the graph consistent across the site and avoids repeating the same details in dozens of places.

Structured data and AI search

AI-generated answers and assistants increasingly summarize businesses and products rather than simply listing links. These systems draw on many sources, but clean, consistent facts make their job easier. Three practices help:

  1. Keep one canonical set of entity facts. Company name, address, founding date, leadership and service areas should match across your Organization markup, About page and external profiles.
  2. Link to authoritative profiles through sameAs, so your entity is not confused with a similarly named company.
  3. Put the same facts in visible text. Many AI crawlers read HTML rather than executing scripts, and markup that contradicts or goes beyond the page is treated with suspicion.

None of this guarantees a citation, but inconsistent entity data is one of the more common reasons an assistant describes a business inaccurately.

Validate, monitor and measure

Schema work is not finished at deployment. Our process:

  • Validate on staging with the Rich Results Test and a schema validator for every template, not just one example page.
  • Add automated checks to CI or a scheduled crawl that extract JSON-LD and confirm required fields are present and prices match the visible page.
  • Watch Search Console enhancement reports weekly for the first month, then monthly. New errors usually mean a template changed.
  • Measure outcomes by comparing click-through rate for affected pages before and after. On product templates, we commonly see click-through improvements of 10 to 25 percent once price and review data appear, though results vary by category and competition.

Our schema markup service follows this approach, building structured data into your templates so it stays accurate. For stores, it is often bundled with custom Shopify themes or WooCommerce work, and for businesses with locations, with local SEO.

Make your structured data earn its keep

Tell us your platform and main page types, and we will send a fixed-price proposal to audit your current markup and generate the rest from your data. Ask for a proposal.

Ravi Iyer
WRITTEN BY
Ravi Iyer
Ravi owns technical SEO and Core Web Vitals work, including migrations and visibility in AI-powered search.
All articles by Ravi Iyer →
Want this on your project?
Get a fixed-price quote from a senior lead within 24 hours.
Request a quote →

Keep reading

How we shipped a support agent that resolves 62% of tickets
AI · 5 min
How we shipped a support agent that resolves 62% of tickets
What to learn in the two weeks before a website redesign
Design · 5 min
What to learn in the two weeks before a website redesign
Migrating to Shopify Plus without losing a single ranking
Shopify · 5 min
Migrating to Shopify Plus without losing a single ranking