Skip to content
TurboIndex

Schema Markup Generator

Pick a type, fill in what you know and copy the finished JSON-LD script tag. Fields you leave empty do not appear in the output.

Schema type

JSON-LD

Still missing

Headline, Image URLs (one per line), Published, Author name

Paste into the page HTML

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article"
}
</script>

Empty fields are left out. Fields marked * are required or strongly recommended. Reference: documentation for Article. Test the result with Google's Rich Results Test before you deploy.

Which type for which page

  • Article (or BlogPosting, NewsArticle): blog posts and news. Gives Google a clean headline, image, date and author.
  • Product: product detail pages. With an offer (price, currency, availability) and real ratings, the page can show price and stars in results.
  • LocalBusiness: the contact or location page of a business with a physical address. Choose the most specific subtype.
  • BreadcrumbList: any page below the home page. Replaces the raw URL in the result with a readable trail.
  • Organization: once, on the home page or about page. Logo, contact details and links to your official profiles.
  • WebSite: once, on the home page. Sets the site name. Google retired the sitelinks search box in 2024, so the SearchAction part is optional.
  • VideoObject: pages where a video is the main content. Thumbnail, upload date and description are required.
  • JobPosting: single job ads. Needed to appear in the jobs experience on Google, and the one page type the Indexing API is officially meant for.
  • FAQPage and HowTo: valid vocabulary, but see the note in the questions below about their limited display on Google.

Rules that keep markup out of trouble

  • Describe only what is on the page. Every value in the JSON-LD should be visible to visitors.
  • Use absolute URLs for images, logos and pages.
  • Dates in ISO 8601 format, for example 2026-09-19 or 2026-09-19T08:00:00+01:00. Add your time zone offset to date and time values if you know it.
  • Prices as plain numbers with a dot as decimal separator, currency as a three letter ISO 4217 code.
  • No self-written reviews. Ratings for LocalBusiness and Organization that a site publishes about itself are not eligible for stars.
  • Remove JobPosting markup, or set validThrough, when a position is filled.

Test and monitor

Paste the code into Google's Rich Results Test before deploying. After the release, check what is actually in the delivered HTML with the structured data viewer. Search Console reports errors per type under Enhancements once Google has recrawled the pages.

Rich results only appear for indexed pages. To get new pages crawled sooner, connect your sitemap to TurboIndex. For the rest of the head, use the meta tag generator.

Questions and answers

Where do I put the JSON-LD code?

Anywhere in the HTML of the page it describes, in the head or the body. Google reads both. It has to be part of the page itself: a script block on the home page does not describe a product page. Most CMSs have a field or a plugin for custom head code per page.

Does structured data improve rankings?

Not directly. It helps Google understand the page and makes the page eligible for rich results such as review stars, prices, breadcrumbs or job listings, which can raise the click-through rate. Google does not guarantee that a rich result is shown even when the markup is valid.

Are FAQ and HowTo rich results still shown?

Rarely. Since 2023 Google shows FAQ rich results only for well-known government and health websites, and HowTo rich results were removed from search results. The markup is still valid schema.org and can be read by other systems, but do not expect a visual change on Google from it.

Can I mark up content that is not visible on the page?

No. Google's structured data guidelines require that the markup matches what users can see. Ratings, prices, questions and answers in the JSON-LD have to appear on the page. Marking up invisible or invented content can lead to a manual action.

JSON-LD, Microdata or RDFa?

Google supports all three and recommends JSON-LD, because it sits in one block, separate from the HTML layout, and is the easiest to maintain.