How to Create JSON-LD Schema Markup (FAQ, Article, Product)

To create JSON-LD schema markup, open the free Schema Markup Generator, choose FAQ, Article, Organization, or Product, and fill in the fields. Required fields are marked with *. The tool outputs a ready-to-paste <script type="application/ld+json"> block. Add it to your page, then test the live URL with Google's Rich Results Test.
Try it now
Schema Markup Generator
Loading tool…
What schema markup does (and doesn't do)
Structured data describes your page in a standard vocabulary from schema.org. JSON-LD is the format Google recommends, because it sits in its own script block instead of being mixed into your HTML. Google's introduction to structured data explains how it's used.
Keep your expectations realistic:
- Markup doesn't guarantee rich results. It can make a page eligible, and Google decides what to show.
- FAQ and HowTo results changed in 2023. Google announced in August 2023 that FAQ rich results would show mainly for well-known, authoritative government and health websites, and that HowTo rich results would be removed. FAQPage markup is still valid schema and can still help machines understand your page. Just don't expect expandable FAQ answers in search for a typical business site.
- Markup must match what's visible on the page. Google's structured data policies say not to mark up content that people can't see. The tool repeats this: "Only mark up content that is visible on the page."
How to generate JSON-LD, step by step
- Open the Schema Markup Generator.
- Pick a tab: FAQ, Article, Organization, or Product.
- Fill in the fields. Anything ending in * is required, and URL fields must be full addresses starting with
https://(orhttp://). - Watch the right-hand panel. If something is missing, a Missing information box tells you what to fix. Otherwise, the JSON-LD script appears.
- Copy the script and paste it into your page's
<head>or body. - Publish, then test the page with the Rich Results Test.
What each schema type includes
FAQ. Each card has a Question and an Answer. Use Add question for more and the trash icon to remove one. Empty pairs are skipped, but you need at least one complete pair.
Article. Headline *, Author name *, and Date published * are required. Description, Article URL, Image URL, Author URL, Publisher name, Publisher logo URL, and Date modified are optional. If you leave Date modified empty, it's set to the publish date. The author is output as a Person. If your author is an organization, change @type by hand.
Organization. Organization name * and Website URL * are required. You can add Logo URL, Description, Email, Telephone, and Social profiles (one URL per line), which become sameAs links.
Product. Only Product name * is required. Brand, SKU, Description, and Image URL are added if you fill them in. An Offer is only added when you enter a Price: a plain number like 19.99 with no currency symbol, plus a 3-letter Currency such as USD (the default). Availability can be In stock, Out of stock, or Pre-order, and Product URL goes inside the offer. A rating is only added when you fill in both Average rating and Review count.
Worked example: Product markup
Product name Canvas Tote Bag, Brand Acme, SKU TOTE-01, Price 24.00, Currency usd, availability In stock:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Canvas Tote Bag",
"sku": "TOTE-01",
"brand": { "@type": "Brand", "name": "Acme" },
"offers": {
"@type": "Offer",
"price": "24.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
The lowercase usd was uppercased to USD, and empty fields were left out entirely. (The real output is wrapped in a <script> tag and indented on separate lines.) If you enter $24 as the price, you'll see "Price must be a number like 19.99 (no currency symbol)."
Best practices
- Mark up only what's on the page. If your FAQ schema has five questions, the page should show those five questions and answers.
- Choose the most specific type that fits. Use Article for blog posts, Product for a single product page, and Organization on your homepage or About page.
- Check Google's docs for each feature. Google lists required and recommended properties for each rich result type, and they can be stricter than schema.org's own rules.
- Only use real ratings. Add Average rating and Review count only if real customer reviews are shown on the page.
- Keep it updated. When a price or availability changes, update the markup too.
Common mistakes
- Adding FAQ markup to every page in the hope of getting rich results. For most sites, those results no longer appear.
- Marking up hidden content, such as answers that aren't on the page.
- Using relative URLs like
/logo.png. The tool rejects these with a message such as "Image URL must be a full URL starting with https://". - Pasting the script twice through both a theme and a plugin, which creates duplicate entities.
Troubleshooting
The Rich Results Test says the page isn't eligible. That may be expected. Not every schema.org type has a matching Google rich result, and the test only reports on features Google supports. Use the Schema Markup Validator to confirm the syntax is valid.
The JSON looks broken after pasting. Some editors swap straight quotes for curly ones. Paste into a plain code or HTML block, and check the JSON part with the JSON Formatter. Our guide on how to format and validate JSON covers common syntax errors.
You see \u003c in the output. The tool escapes < characters so text in your fields can't accidentally close the script tag. Browsers and search engines read it as <.
Alternatives
Many CMS SEO plugins add Article and Organization markup automatically, so check what your site already outputs before adding more. Google's Rich Results Test and the Schema Markup Validator are the standard ways to check any markup, whichever tool created it.
Privacy and next steps
The generator runs in your browser and doesn't fetch or upload your pages. While you're editing the page's <head>, set its title and description with the Meta Title & Description Checker. See our guide on how to write a meta title and description, or explore everything in free SEO and text tools.
Frequently asked questions
Tools in this guide
Schema Markup Generator
Generate JSON-LD structured data for FAQ, Article, Organization, and Product pages.
JSON Formatter & Validator
Format, validate, and minify JSON. Tree view with syntax error highlighting.
Meta Title & Description Checker
Check title and meta description length, preview the search result, and copy ready-made meta tags.
Keep reading
- SEOFree SEO and Text Tools: Meta Tags, Schema, UTM, Word CountFree SEO and text tools that run in your browser. Check meta titles, generate JSON-LD schema, build UTM links, create URL slugs, and count words.
- SEOHow to Write a Meta Title and Description That Gets ClicksLearn how to write a meta title and description that fit in search results, with length guidance, a live preview, and copy-ready HTML and Open Graph tags.
- DeveloperHow to Format and Validate JSON OnlineFormat and validate JSON online in your browser: paste, click Format, Minify, or Validate, and get line and column hints for syntax errors. No upload.