Tools

Schema.org JSON-LD generator

Turn simple key: value lines into Schema.org JSON-LD for articles, products, events, software, businesses and breadcrumbs, with Google's required fields checked.

Runs in your browserSEO & GEO1.2K
Free

Input

0 B

Result

The result will appear here.

Structured data is how a page tells Google, Bing and AI answer engines what it is — an article with an author and dates, a product with a price, an event with a place and time — and JSON-LD is the format Google recommends for it. Writing it by hand means remembering nested @type objects and exact property names. Here you pick a type, write plain lines like author.name: Lin Wei or offers.price: 0, and get a ready-to-paste script block. Each result is checked against the required and recommended properties in Google Search Central's documentation for that rich result, so you know what is missing before you deploy. For type-checked JSON-LD inside your own TypeScript code, google/schema-dts (Apache-2.0) provides the full Schema.org vocabulary as types.

How it works

  • Dotted keys build nested objects, and common ones get their @type automatically: author becomes a Person, publisher an Organization, offers an Offer, address a PostalAddress.
  • Repeating a key makes a list (several sameAs profiles, several images), numbers are written as numbers, and values like InStock or EventScheduled are expanded to their full schema.org URLs.
  • FAQ pages take q: and a: lines, breadcrumbs take one 'name | url' per line, and local businesses take opening hours as lines such as 'hours: Mo-Fr 09:00-18:00'.
  • Every < in the output is escaped as \u003c, so a value that contains </script> can never close the tag early and inject markup into your page.
  • Run it with an empty input to get the starting lines for the chosen type.

Where your data goes

Nowhere. This tool runs entirely in your browser: the text you paste is processed by the page and is never transmitted to a server or written to a log.

This tool is free and needs no account. Its results exist only in your open page and are not saved anywhere.

What it costs

This tool is free, with no sign-in and no points.

Common questions

Will adding JSON-LD get me rich results?
It makes a page eligible, nothing more. Google decides whether to show a rich result, the markup must describe content that is actually visible on the page, and some types have narrowed or disappeared: HowTo results were removed in 2023, and Google deprecated FAQ rich results entirely in May 2026. FAQPage markup is still valid Schema.org and does no harm, so the tool still writes it, with a note.
What is the difference between required and recommended?
Required properties decide eligibility: a SoftwareApplication without offers.price and a rating or review, or an Event without a location address, will not get the rich result. Recommended properties improve how it looks and how well Google understands the page. The tool lists both, separately, using the property names from Google's docs.
Where do I put the output?
Anywhere in the page's HTML, head or body; Google reads both. In Next.js, render it in a script element with type application/ld+json. Then paste the page URL into Google's Rich Results Test, or the code into validator.schema.org, to confirm it parses as intended.
Can I use a more specific type, such as BlogPosting or Restaurant?
Yes: add an @type: line. BlogPosting and NewsArticle work where Article does, WebApplication and MobileApplication where SoftwareApplication does, and any LocalBusiness subtype such as Restaurant, Store or Dentist. The checks follow the base type you chose.

The open-source behind it

This tool is a self-contained implementation. google/schema-dts (Apache-2.0) does the same job as a library — if you need this behaviour inside your own program, start there rather than calling a web page.

google/schema-dts

Also known as

  • json-ld generator
  • schema markup generator
  • structured data generator
  • schema.org generator
  • rich results json-ld
  • article schema