Schema Markup Examples: Ready-to-Use JSON-LD Code for Rich Results
Browse real-world schema markup examples with copy-paste JSON-LD code snippets. Learn how to implement Organization, FAQ, Product, Article, LocalBusiness, and BreadcrumbList structured data to earn rich results in Google Search.
Try Schema Generator FreeWhat Is Schema Markup and Why Does It Matter?
Schema markup is a standardized vocabulary of tags (defined at schema.org) that you add to your HTML to help search engines understand the meaning behind your content. When Google, Bing, and other search engines encounter schema markup, they can generate rich results — enhanced search listings that display star ratings, FAQs, product prices, event dates, breadcrumb trails, and other visual elements directly in the search results page. Rich results consistently achieve higher click-through rates than standard blue links, often by 20-30% or more. Schema markup does not directly improve your ranking position, but the increased visibility and click-through rates it generates can indirectly boost your SEO performance. Google currently supports dozens of structured data types, and the list grows every year. The most commonly used types include Organization, FAQ, Product, Article, LocalBusiness, BreadcrumbList, HowTo, and Review. Implementing even a few of these on the right pages can significantly improve how your site appears in search results.
- Schema markup helps search engines understand your content's meaning, not just its text
- Rich results generated from schema markup can increase click-through rates by 20-30%
- Google supports dozens of structured data types including FAQ, Product, Article, and more
- Schema markup is recommended by Google, Bing, and Yahoo through the schema.org initiative
- Structured data does not directly affect rankings but improves visibility and CTR
JSON-LD Format Explained
JSON-LD (JavaScript Object Notation for Linked Data) is Google's recommended format for implementing schema markup. Unlike Microdata or RDFa, which require you to embed attributes throughout your HTML elements, JSON-LD is placed in a single script block in your page's head or body section. This makes it easier to add, maintain, and debug without touching your existing HTML structure. A JSON-LD block always starts with a script tag of type application/ld+json, followed by a JSON object that includes a @context property pointing to schema.org and a @type property specifying the schema type. Every JSON-LD object must include these two properties at minimum. From there, you add the specific properties relevant to that schema type. You can also nest multiple schema types within a single JSON-LD block using the @graph property, which is useful for pages that need Organization, BreadcrumbList, and Article markup all at once. The key advantage of JSON-LD is separation of concerns — your structured data lives independently of your HTML markup, making both easier to manage.
- JSON-LD is Google's preferred and recommended structured data format
- Placed in a <script type="application/ld+json"> block — no HTML changes needed
- Every JSON-LD object requires @context and @type properties
- Use @graph to combine multiple schema types in a single block
- Easier to implement, debug, and maintain than Microdata or RDFa
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebPage",
"name": "Example Page Title",
"description": "A brief description of the page.",
"url": "https://example.com/page"
}
</script>Organization Schema Example
Organization schema tells search engines about your business entity — its name, logo, contact information, and social media profiles. When implemented correctly, this markup can trigger a Knowledge Panel on the right side of Google's search results when someone searches for your brand name. The Knowledge Panel displays your logo, description, social links, and contact details, lending significant credibility and visibility. Organization schema should be placed on your homepage at minimum, and optionally on your About page. The most important properties are name, url, logo, contactPoint, and sameAs (for social profiles). Google specifically uses the logo property to determine which image to display in the Knowledge Panel and in search results. Make sure your logo URL points to a high-resolution image (at least 112x112 pixels, recommended 1200x1200 pixels). The sameAs property accepts an array of URLs pointing to your official social media profiles, which helps Google verify and connect your presence across platforms.
- Place on your homepage and About page at minimum
- Include name, url, logo, contactPoint, and sameAs properties
- Logo should be high-resolution (recommended 1200x1200 pixels)
- sameAs links to all official social media profiles
- Can trigger a Google Knowledge Panel for branded searches
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "WebWave Digital Agency",
"url": "https://www.example.com",
"logo": "https://www.example.com/images/logo.png",
"description": "Full-service digital marketing agency specializing in SEO, web design, and content strategy.",
"foundingDate": "2020",
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+1-555-123-4567",
"contactType": "customer service",
"availableLanguage": ["English"]
},
"sameAs": [
"https://www.facebook.com/example",
"https://www.twitter.com/example",
"https://www.linkedin.com/company/example",
"https://www.instagram.com/example"
]
}
</script>FAQ Schema Example
FAQ schema markup allows your frequently asked questions to appear as expandable dropdowns directly in Google search results. This can dramatically increase the visual real estate your listing occupies on the results page, pushing competitors further down and increasing your click-through rate. Each FAQ item requires a question (name) and an answer (acceptedAnswer). Google displays up to 3-5 FAQ items in the rich result, though you can mark up more. The questions should be actual questions your audience asks, phrased naturally. Answers can include basic HTML formatting like links, bold text, and lists, which Google will render in the expanded dropdown. FAQ schema is ideal for product pages, service pages, blog posts, and dedicated FAQ pages. However, Google has tightened eligibility in recent years — FAQ rich results now only appear for well-known, authoritative government and health websites in some regions. Despite this, implementing FAQ schema still helps search engines understand your content structure and may appear in other search features.
- Each FAQ item needs a question (name) and answer (acceptedAnswer)
- Answers can contain basic HTML like links and lists
- Best suited for product pages, service pages, and dedicated FAQ pages
- Questions should be naturally phrased and relevant to user intent
- Google may display 3-5 FAQ items as expandable dropdowns in search results
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is schema markup?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Schema markup is structured data code that you add to your website's HTML to help search engines understand your content better. It uses a standardized vocabulary from schema.org and can generate rich results in Google Search."
}
},
{
"@type": "Question",
"name": "How do I add schema markup to my website?",
"acceptedAnswer": {
"@type": "Answer",
"text": "The easiest way is to use JSON-LD format. Add a <script type='application/ld+json'> block to your page's HTML containing the structured data. You can place it in the <head> or <body> section of your page."
}
},
{
"@type": "Question",
"name": "Does schema markup help SEO?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Schema markup does not directly improve rankings, but it can generate rich results that increase your click-through rate by 20-30%. Higher CTR sends positive signals to search engines and can indirectly improve your rankings over time."
}
}
]
}
</script>Product Schema Example
Product schema markup enables rich product information to appear in Google Search results, including price, availability, review ratings, and product images. For e-commerce sites, this is one of the most impactful schema types you can implement. Product rich results stand out visually with star ratings, price ranges, and stock status, giving shoppers the information they need at a glance and driving more qualified traffic to your product pages. The essential properties include name, description, image, brand, offers (with price, priceCurrency, and availability), and aggregateRating if you have reviews. Google requires that the structured data matches what is visible on the page — you cannot mark up a price in schema that differs from the displayed price. Product schema also supports additional properties like SKU, GTIN, MPN, and condition, which help Google match your products to specific shopping queries. For sites with many products, consider generating the JSON-LD dynamically from your product database to keep the structured data in sync with your inventory.
- Essential properties: name, image, description, brand, offers, aggregateRating
- Price and availability in schema must match what is displayed on the page
- Include SKU, GTIN, or MPN for better product matching in search
- Star ratings from aggregateRating appear directly in search results
- Generate JSON-LD dynamically from your product database for accuracy
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Ultra Comfort Running Shoes",
"image": "https://www.example.com/images/running-shoes.jpg",
"description": "Lightweight marathon running shoes with responsive foam cushioning and breathable mesh upper.",
"brand": {
"@type": "Brand",
"name": "SportMax"
},
"sku": "RM-2026-BLK",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/products/running-shoes",
"priceCurrency": "USD",
"price": "129.99",
"availability": "https://schema.org/InStock",
"priceValidUntil": "2026-12-31"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"bestRating": "5",
"reviewCount": "284"
}
}
</script>Article Schema Example
Article schema helps search engines understand your blog posts, news articles, and editorial content. When implemented correctly, it can enhance your search listings with publication dates, author information, and article images. Google uses Article schema to populate its Top Stories carousel, Discover feed, and standard search results with richer information. There are three main Article types: Article (general), NewsArticle (for news publishers), and BlogPosting (for blog content). Each type supports properties like headline, author, datePublished, dateModified, image, and publisher. The headline should match your page title and be under 110 characters. The image property should point to a high-quality image at least 1200 pixels wide. Including dateModified is important because it signals content freshness to Google, and pages that show recent modification dates tend to perform better for time-sensitive queries. Author information should ideally link to an author profile page to support Google's emphasis on E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness).
- Choose the right type: Article, NewsArticle, or BlogPosting
- Headline should match page title and be under 110 characters
- Include datePublished and dateModified for content freshness signals
- Image should be at least 1200 pixels wide for best display
- Link author to a profile page to support E-E-A-T signals
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "How to Implement Schema Markup: A Complete Guide",
"image": "https://www.example.com/images/schema-guide-hero.jpg",
"datePublished": "2026-01-15T08:00:00+00:00",
"dateModified": "2026-03-10T12:30:00+00:00",
"author": {
"@type": "Person",
"name": "Sarah Johnson",
"url": "https://www.example.com/authors/sarah-johnson"
},
"publisher": {
"@type": "Organization",
"name": "WebWave Blog",
"logo": {
"@type": "ImageObject",
"url": "https://www.example.com/images/logo.png"
}
},
"description": "Learn how to add schema markup to your website with step-by-step instructions and real JSON-LD code examples.",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.example.com/blog/schema-markup-guide"
}
}
</script>LocalBusiness and BreadcrumbList Schema Examples
LocalBusiness schema is essential for any business with a physical location or service area. It tells Google your business name, address, phone number, opening hours, and geographic coordinates, which directly feeds into Google Maps results, the local pack (the map and three listings that appear for local searches), and Google Business Profile. Accurate LocalBusiness markup reinforces the NAP (Name, Address, Phone) consistency that is critical for local SEO. BreadcrumbList schema, on the other hand, defines the navigational hierarchy of a page within your site. When Google detects BreadcrumbList markup, it replaces the green URL in your search listing with a clean breadcrumb trail like Home > Category > Subcategory, making your listing more informative and clickable. BreadcrumbList is one of the easiest schema types to implement and has a high success rate for generating rich results. Both schema types can coexist on the same page using the @graph property. For multi-location businesses, create separate LocalBusiness markup for each location page with unique addresses and phone numbers.
- LocalBusiness feeds into Google Maps and the local 3-pack results
- Include name, address, telephone, openingHours, and geo coordinates
- BreadcrumbList replaces the URL in search results with a navigational trail
- Both types can be combined on one page using @graph
- Multi-location businesses need separate markup per location page
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Downtown Coffee Roasters",
"image": "https://www.example.com/images/storefront.jpg",
"telephone": "+1-555-987-6543",
"email": "hello@downtowncoffee.com",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main Street",
"addressLocality": "Portland",
"addressRegion": "OR",
"postalCode": "97201",
"addressCountry": "US"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 45.5231,
"longitude": -122.6765
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
"opens": "06:00",
"closes": "19:00"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Saturday","Sunday"],
"opens": "07:00",
"closes": "17:00"
}
],
"priceRange": "$$"
}
</script>
<!-- BreadcrumbList Example -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://www.example.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "Locations",
"item": "https://www.example.com/locations"
},
{
"@type": "ListItem",
"position": 3,
"name": "Portland",
"item": "https://www.example.com/locations/portland"
}
]
}
</script>Testing and Validating Your Schema Markup
Implementing schema markup is only half the battle — you must validate it to ensure it is error-free and eligible for rich results. Google provides two essential testing tools. The Rich Results Test (search.google.com/test/rich-results) checks whether your markup qualifies for specific rich result types and shows you a preview of how it would appear in search results. The Schema Markup Validator (validator.schema.org) performs a more thorough validation against the full schema.org specification, catching errors that the Rich Results Test might not flag. Always test with both tools. Common validation errors include missing required properties, incorrect data types (for example, using a string where a number is expected), and URLs that do not resolve. After deploying schema markup to your live site, monitor the Rich Results report in Google Search Console to track which pages have valid structured data, which have errors, and which are generating impressions in search. Google Search Console will alert you to new errors as they arise, so check it regularly. Fix errors promptly because invalid markup is ignored entirely — there is no partial credit.
- Use Google's Rich Results Test to verify eligibility for rich results
- Use the Schema Markup Validator at validator.schema.org for thorough checks
- Monitor the Rich Results report in Google Search Console after deployment
- Common errors: missing required properties, wrong data types, broken URLs
- Fix validation errors promptly — invalid markup is completely ignored by Google
- Test before and after deployment to catch issues early
Key Takeaways
Frequently Asked Questions
Generate Schema Markup Free
Create valid JSON-LD structured data for your website in seconds. Choose from Organization, FAQ, Product, Article, LocalBusiness, and more — no coding required.
Free forever • No credit card • Cancel anytime
Schema Generator For Your Audience
More SEO Examples & Guides
SEO Audit Report Example & Template
A complete example of an SEO audit report showing what sections to expect, how to interpret scores, and what action items to prioritize for improving your website's search performance.
Meta Description Examples & Best Practices
A comprehensive collection of meta description examples across industries with templates, common mistakes, and best practices for writing descriptions that improve click-through rates.
SEO Title Tag Examples & Best Practices
A complete guide to writing effective SEO title tags with formulas, examples by page type, power words, and common mistakes to avoid for better rankings and click-through rates.
Keyword Research Report Example
A detailed example of a keyword research report showing how to analyze search volume, keyword difficulty, search intent, and competitor gaps to build a data-driven SEO content strategy.