Structured data, minus the syntax errors.
Pick a schema type, fill in a short form, and get clean JSON-LD structured data you can paste into your page and check in Google’s Rich Results Test.
Your JSON-LD
Paste the code anywhere in the page HTML, usually the <head>. Only mark up information that is visible on the page. If your SEO plugin already outputs a type, such as Article or Organization, edit it there instead of adding a duplicate.
Five schema types
that cover most sites
Structured data helps search engines understand what a page is about and makes it eligible for rich results. These five types cover blogs, local businesses, stores and brand pages.
Article
Headline, author, publisher, image and dates for blog posts and news, with Article, BlogPosting or NewsArticle subtypes.
FAQ page
Write questions and answers in plain lines and get a valid FAQPage block with every Question and Answer nested correctly.
Organization
Name, logo, contact details and social profiles, which help search engines connect your brand across the web.
Local business
Address, phone, opening hours, price range and map coordinates, with subtypes like Plumber, Dentist and Restaurant.
Product
Price, currency, availability, brand, SKU and review rating for product pages.
Only what you fill in
Empty fields are left out entirely, so the output stays clean and you never ship placeholder values.
How to use the schema markup generator
- Choose the schema type that matches the main content of the page.
- Fill in the fields; leave out anything the page does not show.
- Copy the code and paste it into the page HTML.
- Run the URL through Google’s Rich Results Test to confirm it is valid and eligible.
What schema markup does for SEO
Schema markup is structured data, written in the schema.org vocabulary, that describes a page in a format machines can read without guessing. Google recommends JSON-LD, the format this tool produces.
Structured data is not a direct ranking boost. What it does is make a page eligible for rich results, such as review stars, product prices or business details, and help search engines and AI systems understand entities: who wrote this, which business this is, what the product costs.
Rich results have changed
Google has narrowed some rich results over time. FAQ rich results, for example, are now mostly shown for well-known government and health sites, and HowTo rich results were removed. FAQPage markup is still valid and still describes the page, but do not add it expecting the dropdowns to appear in Google.
Rules that keep structured data safe
Mark up only visible content. Every value in the JSON-LD should be on the page for users to see.
Be accurate. Fake reviews, wrong prices or ratings you wrote yourself can lead to a manual action that removes rich results.
One source per type. If your SEO plugin already outputs Article or Organization markup, edit that instead of adding a second, conflicting block.
Also setting up link previews? The Open Graph generator creates the social tags that control how your pages look when shared.
Frequently asked questions
What is schema markup?
Schema markup is structured data added to a page, using the schema.org vocabulary, that tells search engines exactly what the content is: an article, a business, a product, a set of questions and answers.
Does schema markup improve rankings?
Not directly. It makes pages eligible for rich results and helps search engines understand the content, which can improve how your listing looks and how often people click it.
Is JSON-LD better than microdata?
Google supports both, but recommends JSON-LD because it sits in one script block and is easier to add and maintain without touching the visible HTML.
How do I test my schema markup?
Paste the page URL or the code into Google’s Rich Results Test to check eligibility for rich results, and the Schema.org validator to check the markup against the full vocabulary.
More free SEO tools
Meta Tag Generator
Title, description, canonical, robots and social tags as one paste-ready block.
Hreflang Tag Generator
Reciprocal hreflang tags with x-default for every language version.