Build search-ready structured data for 30+ schema types without writing a line of JSON. Fill in a form, watch the code build itself, and copy a script tag straight into your page. Every field Google requires is marked, so you know it is right before you publish.
{}
No JSON knowledge required. The generator writes the syntax; you supply the facts about your page.
Choose what the page is really about — a product, an article, a local branch, an event. One primary type per page.
Complete the fields, starting with those marked *. The status pill tells you how many required fields are still empty.
Press Copy <script> to take the finished JSON-LD block, or download it as a file.
Most free generators cover four or five types and emit the bare minimum. This one covers the long tail and tells you what Google actually expects.
From Article and Product through to ClaimReview, Dataset, PodcastEpisode and Vehicle — plus every LocalBusiness subtype.
Google’s required properties carry a red asterisk and a live counter, so incomplete markup never reaches production.
The JSON-LD rebuilds on every keystroke with syntax highlighting. What you see is exactly what you paste.
Load a realistic, already-valid example for any type, then edit it — far faster than starting from an empty form.
Combine Organization, WebSite, WebPage and BreadcrumbList into a single connected block — the structure Google prefers sitewide.
The generator runs entirely in your browser. No account, no data collection, no limits on how much you generate.
Match the page to its primary entity. Add BreadcrumbList to every page, and Organization plus WebSite once on the homepage.
| Your page | Use this type | What it can unlock |
|---|---|---|
| Blog post, news story, guide | Article / BlogPosting / NewsArticle | Article rich result, Top stories, author attribution |
| Product or category listing | Product with Offer | Price, availability and review stars in results |
| Shop, clinic, agency, restaurant branch | LocalBusiness subtype | Map pack details, hours, ratings, knowledge panel |
| Homepage / brand entity | Organization + WebSite | Knowledge panel, logo, sitelinks search box |
| Service or landing page | Service | Clearer entity understanding and area served |
| FAQ section visible on the page | FAQPage | Expandable questions (restricted by Google, still parsed by AI engines) |
| Tutorial with ordered steps | HowTo | Step listings and AI answer extraction |
| Job vacancy | JobPosting | Google Jobs listing |
| Conference, webinar, workshop | Event | Event rich result with dates and tickets |
| Recipe page | Recipe | Recipe carousel, cook time, ratings |
| Hosted or embedded video | VideoObject | Video thumbnails and key moments |
| Online course or class | Course | Course listings and carousels |
| Author or team member profile | Person / ProfilePage | Author entity and E-E-A-T signals |
Any HTML site. Paste the copied block inside <head>, or immediately before </body>. Position does not affect how it is read.
WordPress. Use a header-scripts plugin, your theme’s custom-code box, or a per-page custom field. If your SEO plugin already outputs Organization or WebSite markup, do not add a second copy — duplicated entities confuse consolidation.
Shopify. Add it to theme.liquid for sitewide types, or to the relevant template for page-level types.
Google Tag Manager. Possible via a Custom HTML tag, but server-rendered markup is more reliable — prefer putting it in the page source where you can.
One primary type per page. A product page gets Product; the same page should not also claim to be an Article.
Only mark up what is visible. Structured data must describe content a visitor can actually see on that page. Marking up hidden or absent content is a policy violation.
Keep it in sync. If the price, stock status or opening hours change on the page, the markup has to change with them. Stale markup is treated as inaccurate.
Verify after publishing. Run the live URL through the schema checker, then confirm with Google’s Rich Results Test and watch Search Console.
Jump straight to the generator with a type pre-selected.
Schema markup is a shared vocabulary that lets you state, in machine-readable form, what a page represents: that this string is a price, that one is an opening time, this block is a set of questions and answers. Search engines use those statements to build the enhanced results you see every day — star ratings, breadcrumb trails, job cards, recipe carousels — and increasingly, AI answer engines use them to decide which source to summarise and cite.
JSON-LD is the format to use. Google recommends it because it sits in one self-contained script block rather than being woven through your HTML attributes. That makes it easy to add, easy to audit and easy to change without touching your layout. Microdata and RDFa still work, but they are far more fragile: a template edit can silently break the nesting and take the markup with it.
Hand-writing JSON-LD is where most implementations go wrong. The failures are rarely conceptual — they are a missing priceCurrency, a date written the way humans write dates, an image path that is relative instead of absolute, or an entire block killed by one trailing comma. A schema markup generator removes that class of error entirely, because the syntax is produced for you and the required fields are impossible to overlook.
Structured data is not a direct ranking factor, and no generator can make it one. What it does is win space and attention on the results page, and give search engines an unambiguous description of your entity. Generate it here, paste it in, then confirm it with the schema markup checker before you consider the job done.
Run it through the free schema checker to find errors, missing properties and rich result blockers — no file size limit.
A tool that turns a simple form into valid JSON-LD structured data. You describe your page in plain fields — name, price, dates, author — and it produces the script block search engines read, with correct syntax and nesting.
Yes, completely. No account, no trial, no usage cap, and no watermark or attribution in the generated code. It runs in your browser, so nothing you type is uploaded anywhere.
No. If you can fill in a contact form you can use this. The only technical step is pasting the finished block into your page or CMS, which most platforms make a copy-paste job.
JSON-LD, the format Google recommends. It lives in a single script tag independent of your HTML, which makes it far easier to maintain than Microdata or RDFa woven through your page.
Inside <head>, or just before </body> — either works. In WordPress use a header-scripts plugin or your theme’s custom-code field; in Shopify add it to theme.liquid or the relevant template.
Yes, and you usually should. A blog post typically carries Article plus BreadcrumbList plus WebPage. Use the @graph bundle feature to combine them into one connected block rather than scattering separate script tags.
Yes — the output is plain HTML and platform-independent. One caution: if an SEO plugin already outputs Organization or WebSite markup, do not add a duplicate. Check what already exists with the schema checker first.
Not directly. It makes pages eligible for rich results that take up more space and earn more clicks, and it helps search and AI engines understand your entity. The benefit shows up in click-through rate and visibility rather than raw position.
Yes. The Product type here covers offers, availability, condition, shipping details, return policy, aggregate ratings and individual reviews — the fields merchant listings and review snippets depend on.
Fill the form until the status pill reads “all required fields filled”, then press Check this markup to send it straight to the schema checker for a full audit against Google’s requirements.