Try it right here
Paste your JSON-LD and see instantly if it's valid — no account needed.
Valid schema markup
Detected type: LocalBusiness
Schema and SEO tools by topic
View all tools →What is schema markup?
Schema markup is a small block of code you add to a page to tell search engines what the page is actually about. Not "here is some text" — but "this is a bakery, it opens at 9, it sits at this address".
Search engines read your page as words. Schema markup turns those words into facts a machine can file away: name, price, opening hours, author, rating. The vocabulary comes from schema.org, a standard Google, Microsoft, Yahoo and Yandex agreed on. The recommended format is JSON-LD — a block of code in the page's head that stays separate from your visible content, so it never breaks your layout.
The same example the animation above is built from:
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Bakery Miller",
"url": "https://bakery-miller.de",
"telephone": "+49 551 123456",
"priceRange": "€€",
"address": {
"@type": "PostalAddress",
"streetAddress": "Weender Str. 12",
"postalCode": "37073",
"addressLocality": "Göttingen"
},
"openingHours": "Mo-Fr 09:00-18:00"
}Line by line
- @context
- Says which vocabulary you are using. Practically always https://schema.org — this line is identical in almost every block of markup.
- @type
- The single most important line: what kind of thing is this? LocalBusiness, Product, Recipe, Article. It decides which fields are expected and which rich results you can qualify for.
- name, url, telephone
- Plain properties. Write exactly what a visitor sees on the page — markup that contradicts the visible content violates Google's guidelines.
- address
- Some properties are objects of their own, with their own @type. A PostalAddress holds street, postal code and city as separate fields instead of one string.
- openingHours
- Many fields expect a fixed notation rather than free text. "Mo-Fr 09:00-18:00" is a format, not a sentence — which is why a generator is safer than typing it by hand.
What schema markup does — and what it doesn't
This is where most guides overpromise. Structured data is useful, but it is not a magic ranking lever. What it actually changes:
What it makes you eligible for
Rich results in Google
Star ratings on products, cooking time on recipes, salary and location on job postings, event dates, breadcrumbs instead of a raw URL. Without markup these simply cannot appear.
Being understood as an entity
Organization and Person markup connects your site to a real-world thing — the basis for knowledge panels and for search engines linking your brand across pages and platforms.
Citations in AI answers
ChatGPT, Perplexity and Google AI Overviews summarise pages. Clearly labelled facts are easier to extract and attribute than the same information buried in prose.
Feeds and special surfaces
Google Jobs, product listings and event surfaces pull from structured data. No markup, no entry — no matter how good the page is.
What it does not do
It is not a ranking factor
Adding markup does not move you up the results by itself. Google is explicit about this. The benefit is how your result looks and how well your content is understood — not the position.
It guarantees nothing
Valid markup makes you eligible for a rich result. Whether Google shows it is Google's decision, and it changes over time — FAQ rich results, for instance, were cut back to a handful of government and health sites in 2023 (as of July 2026).
It doesn't fix weak content
Markup describes a page. It cannot make a thin page worth ranking. If the content isn't there, structured data has nothing to declare.
It punishes lying
Markup that claims ratings, prices or availability the page doesn't show can trigger a manual action. Rule of thumb: nothing in the markup that a visitor cannot see.
Which schema type do I need?
The type depends on what your page is about, not on your industry. Common starting points — most sites need two or three, not twenty:
| Your page is about | Useful types | Generators |
|---|---|---|
| A shop, restaurant, practice or workshop with an address | LocalBusiness, Organization, Review | |
| Products in an online shop | Product, AggregateRating, BreadcrumbList | |
| Blog posts, news, magazine articles | Article, Person, BreadcrumbList | |
| Recipes and cooking videos | Recipe, VideoObject | |
| Concerts, workshops, conferences | Event, Organization | |
| Job openings | JobPosting, Organization | |
| Software, apps, SaaS products | SoftwareApplication, FAQPage | |
| Courses and training | Course, Organization |
From nothing to valid markup in four steps
No coding required. Ten minutes for the first page, two for every one after that.
Pick the type
Decide what the page is primarily about. One page, one main type — a product page is a Product, even if a person is mentioned on it.
Fill in the fields
The generator asks for what the type expects and writes the JSON-LD as you type. Required fields first; optional ones improve your chances at a rich result.
Embed the code
Copy the block and paste it into the page's head, inside a script tag with type="application/ld+json". In WordPress, Shopify or Webflow this goes into the custom-code or head field — no plugin needed.
Check it
Validate the finished page. A missing comma silently invalidates the whole block, and search engines will not warn you on your own site.
From the blog
Read the blog →Frequently asked questions
What is schema markup, in plain terms?
A list of facts about your page, written in a format machines read. Instead of hoping a search engine works out that "Bakery Miller" is a business and "09:00-18:00" are opening hours, you state it outright. The reader never sees it; it sits in the page source.
Schema markup, structured data, JSON-LD — what's the difference?
Structured data is the general idea: information in a fixed, machine-readable shape. Schema.org is the vocabulary that defines the types and properties. JSON-LD is one of three formats for writing it down, alongside Microdata and RDFa. In practice the three terms get used interchangeably.
Does schema markup help SEO?
Indirectly. It is not a ranking factor, so it will not lift a page in the results on its own. What it does is make you eligible for rich results and help search engines and AI systems understand what your page describes. A better-looking result can earn more clicks at the same position.
Which format should I use — JSON-LD, Microdata or RDFa?
JSON-LD. Google recommends it, and it is the only one of the three that sits in a self-contained block instead of being woven into your HTML. That makes it far easier to add, change and remove without touching your layout.
Where exactly do I put the code?
Inside the head of the page it describes, in a script tag with type="application/ld+json". Placing it in the body works too, but the head is the convention. Every page gets its own markup — a product page describes that product, not your whole catalogue.
How do I add it in WordPress, Shopify or Webflow?
All three have a field for custom head code, either site-wide or per page. Paste the generated block there. WordPress SEO plugins often output some markup already — check what exists before adding a second block for the same type.
Does schema markup matter for AI search?
It helps, though nobody outside the providers knows exactly how much. Assistants like ChatGPT and Perplexity and features like Google AI Overviews have to extract facts from a page. Explicitly labelled data is less ambiguous than the same fact in a sentence — and correct attribution matters when a system decides which source to cite.
How do I check whether my markup is correct?
Paste the code or enter the URL into a validator. It catches two classes of problem: broken JSON syntax, and missing properties your chosen type expects. Both fail silently otherwise — the markup is simply ignored, with no error shown anywhere on your site.
Does every page need schema markup?
No. Start where it pays off: pages that can win a rich result, and pages describing your business. A contact page or an imprint rarely benefits. Marking up everything for the sake of it costs time and creates upkeep.
Do I need a plugin or a paid tool?
No. The generators here produce the finished JSON-LD in the browser, free and without an account. A plugin makes sense when markup has to be produced automatically for hundreds of pages — for a handful of pages, copy and paste is faster and you keep control over what is declared.
It is built for website owners, small businesses and freelancers who need clean technical SEO without writing code. Structured data helps search engines and AI assistants understand your pages — which matters for classic Google results and, increasingly, for answers generated by AI search.
Start with one page
Pick the page that matters most — your homepage, your best product, your busiest article — and mark it up properly. Ten minutes, no account, and you can check the result straight away.
