Rich snippets are the reason some pages own search results while others invisibly rot behind a dozen competitors. A rich snippet is Google's visual enhancement: an FAQ accordion expanding in the SERP, breadcrumb navigation showing page hierarchy, product price and star rating, organisation contact info. Each one pulls eyes to your listing and signals relevance. They're free real estate.
JSON-LD structured data tells Google what your content is. You wrap your page data in a <script type="application/ld+json"> block, pass a JSON object describing your article/faq/product/organisation, and Google's crawler parses it to display rich snippets. No crawling heuristics. No guessing. You explicitly say "this page is an Article published 2026-06-11 by Aiden Wood in the SEO category" and Google renders that metadata in the search result.
Why Rich Snippets Move the Needle
A search result with breadcrumbs, a star rating, and a price is 5–8px taller and visually distinct. It gets clicked 15–30% more often than plain-text results. That's CTR lift from structured data alone. FAQ schema adds an interactive accordion in the SERP — users can expand answers without visiting your site. It's a two-edged sword: they get answers faster, but Google's CTR data shows sites with FAQ schema still win because the accordion positions them as THE authority. Same with product schema: showing price, rating, and availability directly in search cuts search-to-purchase friction by half.
Five Schemas Every Site Should Ship
Article schema — every blog post. Tells Google the title, author, publish date, and category. Enables byline display and topic clustering.
FAQPage schema — if you have an FAQ section. Renders as an interactive accordion in search. Question → answer pairs.
Organization schema — footer-level data. Name, logo, contact, social profiles. Builds trust and enables the knowledge panel.
BreadcrumbList schema — site hierarchy. Home → Category → Article. Shows breadcrumb navigation in search results above the title.
Product schema — if you sell anything. Price, availability, rating, description. Non-negotiable for ecommerce. Shows price and availability inline in search.
The Astro Pattern
Velocity X generates all five schemas from brand.json + page frontmatter. One layout component, one resolver function, shipped on every page:
export function generateSchemaJson(page, brand) {
return {
"@context": "https://schema.org",
"@type": "Article",
"headline": page.title,
"author": { "@type": "Person", "name": brand.author },
"datePublished": page.publishedDate,
"articleBody": page.content,
"image": page.coverUrl
};
}
Drop the JSON into a <script> tag in your <head> and Ship. No external dependencies. No runtime cost. Pure static data describing what your page is.
Validate in Search Console
Google provides a free rich results test. Paste your URL, let it crawl, and it tells you exactly which schemas it found and whether they're valid. If you ship malformed JSON-LD, Google ignores it. Typos in field names, wrong data types, missing required fields — all fatal. Test before you ship.
The Verdict
JSON-LD is the laziest 30-minute SEO win available. You write the data once in a layout component, every page inherits it, and Google automatically renders rich snippets for your entire site. No technical SEO debates. No heuristic guessing. Explicit data beats crawling every time. A site with full schema implementation outranks competitors on rich features alone, even with equivalent content quality. Build once, win forever. More details on optimising Core Web Vitals alongside schema at the Core Web Vitals guide, or audit your current schema in your SEO assessment options.








