Step-by-Step JSON-LD Templates for Every Major Use Case
Ready-to-paste structured data templates with clear instructions
Implementing JSON-LD structured data doesn't have to be complicated. Whether you're adding FAQs, product information, how-to guides, or event details, these ready-to-use templates will get you started quickly. Simply copy, customize with your content, and paste into your website's <head> section.
Ready to optimize your content?
Generate optimized JSON-LD schemas to protect your traffic and optimize for AI search engines.
Get Started FreeNo Credit Card Required
How to Use These Templates
- Copy the JSON-LD template for your use case
- Replace placeholder values (marked with
YOUR_VALUE) with your actual content - Paste the code into a
<script type="application/ld+json">tag - Place it in your HTML
<head>section - Validate using Google's Rich Results Test tool
1. FAQ Schema Template
Perfect for FAQ pages, support documentation, or any content that answers common questions. This schema helps your FAQs appear as rich snippets in search results.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "YOUR_QUESTION_HERE",
"acceptedAnswer": {
"@type": "Answer",
"text": "YOUR_ANSWER_HERE"
}
},
{
"@type": "Question",
"name": "ANOTHER_QUESTION",
"acceptedAnswer": {
"@type": "Answer",
"text": "ANOTHER_ANSWER"
}
}
]
}
</script>Example: Replace "YOUR_QUESTION_HERE" with "What is JSON-LD?" and "YOUR_ANSWER_HERE" with your actual answer. Add more Question objects for additional FAQs.
2. HowTo Schema Template
Ideal for step-by-step guides, tutorials, recipes, and instructional content. This can appear as a rich snippet with expandable steps.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "HOW_TO_TITLE",
"description": "BRIEF_DESCRIPTION",
"image": "URL_TO_IMAGE",
"totalTime": "PT30M",
"estimatedCost": {
"@type": "MonetaryAmount",
"currency": "USD",
"value": "0"
},
"supply": [
{
"@type": "HowToSupply",
"name": "SUPPLY_ITEM_1"
}
],
"tool": [
{
"@type": "HowToTool",
"name": "TOOL_ITEM_1"
}
],
"step": [
{
"@type": "HowToStep",
"name": "STEP_1_NAME",
"text": "STEP_1_INSTRUCTIONS",
"image": "URL_TO_STEP_IMAGE",
"url": "URL_TO_STEP_PAGE"
},
{
"@type": "HowToStep",
"name": "STEP_2_NAME",
"text": "STEP_2_INSTRUCTIONS"
}
]
}
</script>Notes: "totalTime" uses ISO 8601 duration format (PT30M = 30 minutes). "estimatedCost" is optional. Add more steps as needed.
3. Product Schema Template
Essential for e-commerce sites. Include pricing, availability, reviews, and ratings to enable rich product snippets in search results.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "PRODUCT_NAME",
"image": [
"URL_TO_IMAGE_1",
"URL_TO_IMAGE_2"
],
"description": "PRODUCT_DESCRIPTION",
"sku": "PRODUCT_SKU",
"brand": {
"@type": "Brand",
"name": "BRAND_NAME"
},
"offers": {
"@type": "Offer",
"url": "PRODUCT_URL",
"priceCurrency": "USD",
"price": "99.99",
"priceValidUntil": "2026-12-31",
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "120"
}
}
</script>Important: Update "availability" to "https://schema.org/OutOfStock" or "https://schema.org/PreOrder" as needed. Remove "aggregateRating" if you don't have reviews.
4. VideoObject Schema Template
For video content, tutorials, product demos, or any video on your site. Helps videos appear in video search results and video carousels.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "VIDEO_TITLE",
"description": "VIDEO_DESCRIPTION",
"thumbnailUrl": "URL_TO_THUMBNAIL",
"uploadDate": "2026-02-10T00:00:00Z",
"duration": "PT5M30S",
"contentUrl": "URL_TO_VIDEO_FILE",
"embedUrl": "URL_TO_EMBED",
"publisher": {
"@type": "Organization",
"name": "YOUR_ORGANIZATION",
"logo": {
"@type": "ImageObject",
"url": "URL_TO_LOGO"
}
}
}
</script>Notes: "duration" uses ISO 8601 format (PT5M30S = 5 minutes 30 seconds). Use "contentUrl" for direct video file or "embedUrl" for embedded videos.
5. Event Schema Template
Perfect for conferences, webinars, workshops, concerts, or any scheduled event. Enables rich event snippets with date, location, and ticket information.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "EVENT_NAME",
"description": "EVENT_DESCRIPTION",
"image": "URL_TO_EVENT_IMAGE",
"startDate": "2026-03-15T10:00:00Z",
"endDate": "2026-03-15T18:00:00Z",
"eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode",
"eventStatus": "https://schema.org/EventScheduled",
"location": {
"@type": "Place",
"name": "VENUE_NAME",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "City",
"addressRegion": "State",
"postalCode": "12345",
"addressCountry": "US"
}
},
"organizer": {
"@type": "Organization",
"name": "ORGANIZER_NAME",
"url": "ORGANIZER_URL"
},
"offers": {
"@type": "Offer",
"url": "TICKET_URL",
"price": "99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"validFrom": "2026-01-01T00:00:00Z"
}
}
</script>Notes: For online events, change "eventAttendanceMode" to "https://schema.org/OnlineEventAttendanceMode" and update location accordingly. Remove "offers" if tickets aren't available.
6. Article/BlogPosting Schema Template
Essential for blog posts, news articles, and editorial content. Helps articles appear in Google News and article rich snippets.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "ARTICLE_TITLE",
"description": "ARTICLE_DESCRIPTION",
"image": "URL_TO_FEATURED_IMAGE",
"datePublished": "2026-02-10T00:00:00Z",
"dateModified": "2026-02-10T00:00:00Z",
"author": {
"@type": "Person",
"name": "AUTHOR_NAME",
"url": "AUTHOR_URL"
},
"publisher": {
"@type": "Organization",
"name": "PUBLISHER_NAME",
"logo": {
"@type": "ImageObject",
"url": "URL_TO_LOGO"
}
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "ARTICLE_URL"
}
}
</script>Tip: Use "BlogPosting" instead of "Article" for blog posts. Both work, but BlogPosting is more specific.
7. Organization Schema Template
Establish your brand's identity and authority. Should be on your homepage to help search engines understand your organization.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "YOUR_ORGANIZATION_NAME",
"url": "YOUR_WEBSITE_URL",
"logo": "URL_TO_LOGO",
"description": "ORGANIZATION_DESCRIPTION",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "City",
"addressRegion": "State",
"postalCode": "12345",
"addressCountry": "US"
},
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+1-555-123-4567",
"contactType": "customer service",
"email": "contact@example.com"
},
"sameAs": [
"https://www.facebook.com/yourpage",
"https://twitter.com/yourhandle",
"https://www.linkedin.com/company/yourcompany"
]
}
</script>Tip: The "sameAs" array should include all your social media profiles to establish brand consistency.
8. BreadcrumbList Schema Template
Helps users and search engines understand your site structure. Can appear as breadcrumb navigation in search results.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://example.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "Category",
"item": "https://example.com/category"
},
{
"@type": "ListItem",
"position": 3,
"name": "Current Page",
"item": "https://example.com/category/page"
}
]
}
</script>Note: Update the position numbers and URLs to match your actual site structure. Add or remove items as needed.
Best Practices
- Validate your JSON-LD using Google's Rich Results Test before going live
- Keep it accurate—don't include information that doesn't match your actual content
- Update regularly—especially for products, events, and time-sensitive content
- Use absolute URLs for all links and images
- Test in production to ensure everything renders correctly
Common Mistakes to Avoid
- Forgetting to replace placeholder values
- Using relative URLs instead of absolute URLs
- Including invalid date formats (use ISO 8601)
- Missing required fields for specific schema types
- Not validating before publishing
Ready to optimize your content?
Generate optimized JSON-LD schemas to protect your traffic and optimize for AI search engines.
Get Started FreeNo Credit Card Required