Schema Markup Generator
Generate JSON-LD structured data markup for articles, products, FAQs, and recipes. Improve SEO with rich results in Google Search.
Schema Markup Generator
Calculator
Adjust values & calculateEnter your values below. Every result is computed in your browser โ no data is sent to any server.
Formula: JSON-LD = { @context: schema.org, @type: SchemaType, ...properties }
Additional inputs: Description, Price, Currency, Availability.
Worked example โ Generated valid Article JSON-LD with 4 fields. Ready for deployment.
Formula
JSON-LD = { @context: schema.org, @type: SchemaType, ...properties }JSON-LD structured data wraps schema.org vocabulary in a JavaScript Object Notation format. Each schema type has required and optional properties. The markup is placed in a script tag with type application/ld+json.
Worked Examples
Example 1: Article Schema for Blog Post
Problem:Generate Article schema for a blog post titled "10 SEO Tips" by John Smith, published on 2024-01-15.
Solution:Schema Type: Article headline: "10 SEO Tips" author: { @type: Person, name: "John Smith" } datePublished: "2024-01-15" @context: https://schema.org Output: Valid JSON-LD wrapped in script tag
Result:Generated valid Article JSON-LD with 4 fields. Ready for deployment.
Example 2: Product Schema for E-commerce
Problem:Create Product schema for "Wireless Headphones" by BrandX, priced at $79.99, rated 4.5/5 from 230 reviews.
Solution:Schema Type: Product name: "Wireless Headphones" brand: { @type: Brand, name: "BrandX" } offers: { price: 79.99, priceCurrency: USD, availability: InStock } aggregateRating: { ratingValue: 4.5, reviewCount: 230 }
Result:Generated valid Product JSON-LD with rich snippet eligibility for price and star ratings.
Frequently Asked Questions
What is Schema markup and why is it important for SEO?
Schema markup is a structured data vocabulary that helps search engines understand the content and context of your web pages. It uses a standardized format called JSON-LD (JavaScript Object Notation for Linked Data) recommended by Google, Bing, and other search engines. When implemented correctly, schema markup can generate rich results in search listings, such as star ratings, FAQ dropdowns, recipe cards, product prices, and event details. These enhanced search results typically have higher click-through rates than standard listings. Google has reported that pages with structured data can see up to a 30 percent increase in click-through rates compared to pages without it, making schema markup a critical component of modern SEO strategy.
What is JSON-LD and how does it differ from other schema formats?
JSON-LD stands for JavaScript Object Notation for Linked Data and is the format recommended by Google for implementing structured data. Unlike older formats like Microdata and RDFa, which require inline annotations within your HTML elements, JSON-LD is placed in a separate script tag in the head or body of your page. This separation makes JSON-LD much easier to implement and maintain because you do not need to modify your existing HTML structure. It is also easier for content management systems and tag managers to inject dynamically. Google officially recommends JSON-LD over other formats, and most modern SEO tools and plugins generate JSON-LD by default. The format is human-readable and can be validated using Google Rich Results Test tool.
Which schema types generate rich results in Google Search?
Google currently supports rich results for numerous schema types. The most commonly used include Article for news and blog posts, Product for e-commerce listings with prices and reviews, FAQPage for frequently asked questions that appear as expandable dropdowns, Recipe for cooking instructions with images and times, HowTo for step-by-step guides, LocalBusiness for business listings with hours and location, Event for upcoming events with dates and venues, and VideoObject for video content. Review and AggregateRating schemas generate star ratings in search results. BreadcrumbList helps display navigation paths. Each schema type has specific required and recommended properties that must be properly filled out to qualify for rich results display in search engine results pages.
How do I test and validate my schema markup?
Google provides two primary tools for testing schema markup. The Rich Results Test at search.google.com/test/rich-results checks whether your page is eligible for rich results and shows any errors or warnings. The Schema Markup Validator at validator.schema.org validates your markup against the full schema.org vocabulary. To test, paste your URL or raw JSON-LD code into either tool. Common errors include missing required fields, incorrect data types like using a string where a number is expected, and invalid URLs. After deploying schema markup to your site, monitor Google Search Console under the Enhancements section to track indexing status and any detected issues. It typically takes several days to weeks for Google to process and display rich results after implementation.
Can I have multiple schema types on a single page?
Yes, you can and often should include multiple schema types on a single page. For example, a recipe blog post could include Recipe schema for the cooking instructions, Article schema for the blog post itself, and BreadcrumbList schema for the navigation path. Each schema type should be placed in its own script tag with the application/ld+json type, or you can use a graph structure to combine them. Google recommends using the graph approach where multiple entities are wrapped in a single JSON-LD block using the @graph property. Make sure each schema type accurately represents the content on the page and avoid adding schema for content that does not actually exist on the page, as Google considers this a form of structured data spam that can result in manual actions or penalties.
What is the difference between required and recommended schema properties?
Required properties are the minimum a search engine needs before an item is eligible for a given rich result; omit one and the item is invalid for that feature. Requirements are also per feature rather than per type: a Product node can qualify for a product snippet on name plus review, aggregateRating or offers, while offers.price and priceCurrency are required for merchant listing experiences. This generator reflects that by labelling a missing Product price as required and a missing brand as merely recommended, though it lists both together in a single Warnings panel rather than separating errors from suggestions the way the Rich Results Test does.
How does the @id property link entities together across a site?
@id assigns a stable, globally unique identifier, usually a canonical URL with a fragment such as https://example.com/#organization, to a node in your structured data. Other blocks then reference that node by @id instead of repeating its properties, so every Article can point its publisher at a single Organization definition. This keeps markup consistent, reduces duplication, and lets search engines merge statements made about the same entity on different pages.
What duration format do schema properties such as prepTime and cookTime use?
They use ISO 8601 durations, which begin with P for period and place a T before any time components. Thirty minutes is PT30M, an hour and a quarter is PT1H15M, and two days is P2D. That is why this generator converts a prep time entered as 30 into PT30M and reports totalTime as the sum of prep and cook time. Plain numbers or free text such as thirty mins are invalid and will be rejected by structured data validators.
When should a product use a single Offer rather than an AggregateOffer?
Use Offer when the page sells one purchasable item at one price, carrying price, priceCurrency and availability exactly as generated here. Use AggregateOffer when the page represents an item available at several prices, such as a variant group or a comparison listing, giving lowPrice, highPrice, priceCurrency and offerCount instead of a single price. Declaring one fixed price for a page that visibly shows a range creates a mismatch between markup and content, which is a common cause of rejection.
Why might technically valid markup still fail to produce a rich result?
Passing validation confirms eligibility, not entitlement. The page still has to be crawled and indexed, the markup must describe content genuinely visible on the page, the site has to meet the search engine's content and structured data policies, and the engine decides per query whether the enhanced format helps the searcher. Rich results also roll out unevenly by country, language and device. Treat structured data as making a result possible, then monitor the Enhancements reports for what actually shipped.
References
Reviewed for accuracy by Daniel Agrici, Founder & Lead Developer ยท Editorial policy
Related Calculators
๐งฎRobots.txt Generator
Generate a robots.txt file with crawl directives for search engine bots.
๐งฎCanonical URL Generator
Generate canonical URL tags to prevent duplicate content issues in search engines.
๐งฎHreflang Tag Generator
Generate hreflang tags for multilingual and multi-regional websites.
๐งฎOpen Graph Tag Generator
Generate Open Graph and Twitter Card meta tags for social media sharing optimization.
๐งฎMarketing ROI Calculator
Calculate marketing campaign return on investment from spend and revenue generated.
๐งฎContent Marketing ROI Calculator
Calculate the ROI of content marketing efforts from production costs and generated revenue.
๐งฎDomain Authority Checker
Check and compare domain authority scores for competitive SEO analysis.
๐งฎKeyword Density Checker
Analyze keyword density and frequency distribution in any webpage or text content.