What schema markup is
Schema markup is structured data that describes what a page is about in a form machines can read. The common format is JSON-LD, a block of JSON inside a <script type="application/ld+json"> tag that uses the vocabulary from schema.org. Instead of search engines inferring that a page is an article or a product, the markup states it, with fields such as a headline, author, price or question and answer.
Search engines may use this data to understand a page and, in some cases, to show enhanced results such as rich snippets. It is not a ranking factor on its own, and valid markup does not guarantee any special display. Eligibility rules are set by each search engine and change over time, and some types, such as FAQ results, are now shown to far fewer sites than before.
The markup should describe content that is actually visible on the page. Marking up things users cannot see goes against search engine guidelines and can lead to the markup being ignored.
When structured data is useful
Add it when a page clearly fits a type: a blog post, a product listing, a page that answers a question, or a local business page. It helps search engines understand the page, and it is a prerequisite for certain rich result features.
For serious use, treat this tool's output as a starting point. Real pages usually need more properties than a short form can provide, and you should confirm the final markup with the testing tools offered by search engines.
How to use the Schema Generator
- Choose a type with the buttons: Article, Product, FAQPage or LocalBusiness.
- Fill in the fields that appear. All types share a name or title and a description. Article adds Author and URL, Product adds Price (USD), LocalBusiness adds URL, and for FAQPage the labels become Question and Answer.
- Read the JSON-LD box, which shows the script tag around your data and updates as you type.
- Click Copy. Note that the copied text is the JSON object only, without the surrounding script tag, so wrap it yourself or copy from the box directly.
- Place it inside a
<script type="application/ld+json">element in your page.
To format or inspect JSON afterward, the JSON Formatter is useful.
What the output includes and leaves out
The output is intentionally minimal. Article produces headline, description, url and a Person author, with no image, dates or publisher. Product produces name, description and an Offer with the price and a fixed currency of USD, with no image, brand, SKU or availability. LocalBusiness produces only name, description and URL, with no address, phone or hours. FAQPage produces a single question and answer.
Because many rich result types require more properties, expect to extend the JSON by hand. The price is typed as text, so enter digits like 29.99 and no currency symbol.
Do not mark up content that is not on the page, and keep names and prices matching what visitors see. After adding the markup, test the live page with a structured data testing tool. Nothing you type is uploaded; the JSON is built in your browser.