Free Schema Markup Generator

Build JSON-LD or Microdata structured data for Article, Product, LocalBusiness, Organization, Person, Event, FAQ, HowTo, Recipe and Review pages. Fill in the form, read the checks under the code, then copy it into your page. Everything runs in your browser.

Client-Side Processing

All schema generation happens in your browser. Your data never leaves your device.

Schema Configuration

Schema Type

Switching types keeps what you typed for each type, so you can come back to it.

Article Details

Output Format

Generated Schema Markup

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

Check before publishing

  • Add a headline.

The validator links open the external sites in a new tab; nothing is sent until you paste your code there yourself.

10 Schema Types

Article, Product, LocalBusiness, Organization, Person, Event, FAQ, HowTo, Recipe and Review.

JSON-LD & Microdata

Both formats are built from the same data, for every type.

Built-in Checks

Flags missing required fields, bad URLs and out-of-range ratings, with links to Google and Schema.org validators.

Export Ready

Copy or download ready-to-use schema markup.

How to generate schema markup, free and without uploading

To generate schema markup, click one of the ten Schema Type buttons (Article, Product, LocalBusiness, Organization, Person, Event, FAQ, HowTo, Recipe or Review), fill in the fields or click Load Sample, choose JSON-LD (Recommended) or Microdata under Output Format, then click Copy Schema, or Download HTML to save a file. The Generated Schema Markup box rewrites itself on every keystroke, and a Check before publishing list appears under it when a field is missing or a value is malformed. In JSON-LD mode the copied text is a complete <script type="application/ld+json"> block, ready to paste into the page it describes.

It runs in your browser; nothing is uploaded (you can check the Network tab in DevTools). The markup is built from what you type by a script that ships with the page. There is no account and nothing to install. The Validate with Schema.org and Test with Google buttons open those sites in a new tab, and nothing is sent to them unless you paste your code there yourself.

Schema markup, also called structured data, is code that labels what a page contains, such as a product with a price or an event with a start date, using the schema.org vocabulary. Google recommends JSON-LD when your site setup allows it (Google Search Central, Introduction to structured data, as of October 2026). Valid markup makes a page eligible for enhanced results; it does not promise one. Pair it with the meta tag generator, the Open Graph generator, the XML sitemap generator and the robots.txt generator.

Table of Use: which schema type fits your page

Page kinds, the Schema Type button to click, the fields the form asks for and what the checks flag
Your pageSchema TypeFields in the formWhat the checks flag
Blog post or news storyArticleArticle type, Headline, Author name and URL, Date published, Date modified, Image URL, PublisherNo headline, headline over 110 characters, modified date before published date
Product pageProductName, Description, Image URL, Brand, SKU, Price, Currency, AvailabilityNo name, no price, a price that is not a plain number
Shop, restaurant, clinicLocalBusinessName, Business type (19 choices), address, Phone, WebsiteNo name, no street or city
Company homepageOrganizationName, Website, Logo URL, Contact email and phone, Social profile URLsNo name, an email that looks invalid, a URL without https://
Author or team profilePersonName, Job title, Works for, Website, Photo URL, Profile URLsNo name, a URL without https://
Conference or workshopEventName, Start and End date and time, Attendance, Venue, Online event URL, UTC offset, DescriptionNo start date, end before start, no venue or online URL, a note on online-only events
Q&A sectionFAQQuestion and Answer pairsNo complete pair, a half-filled pair, a note that Google ended FAQ rich results
Step-by-step guideHowToName, Description, Total time, StepsNo name, no steps, a note that Google ended HowTo rich results
Recipe pageRecipeName, Description, Image URL, Author, Prep and Cook time, Yield, Ingredients, InstructionsNo name, no image, times that are not whole minutes
ReviewReviewItem and Item type (10 choices), Rating, Reviewer, Date, TextNo item name, no reviewer, a rating outside 1 to 5

JSON-LD for a Product with an empty Description, shown condensed: the property is omitted, not written blank.

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Wireless Bluetooth Headphones",
  "image": "https://example.com/headphones.jpg",
  "brand": { "@type": "Brand", "name": "SoundCo" },
  "sku": "SC-WH-200",
  "offers": {
    "@type": "Offer",
    "price": "149.99",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock"
  }
}

Features

  • Ten schema types. Article, Product, LocalBusiness, Organization, Person, Event, FAQ, HowTo, Recipe and Review, each with its own form. Switching types keeps what you typed for each one.
  • JSON-LD and Microdata from one source. Both formats are built from the same data, so they state the same facts.
  • Built-in checks. The Check before publishing list flags missing fields, URLs that do not start with https:// or http://, a headline over 110 characters, a bad date order, a malformed price and ratings outside 1 to 5.
  • Clean output. Blank fields are dropped, and a Product only gets an Offer once you enter a price.
  • Events with time zones. Pick In person, Online or In person and online, then one of 40 UTC offsets so times are written like 2026-11-18T09:00-05:00.
  • Durations done for you. HowTo and Recipe times are typed in minutes and written as ISO 8601 durations, so 90 minutes becomes PT1H30M.
  • Safe to paste. A stray </script> in your text cannot end the script block early, and Microdata values are HTML-escaped.
  • Load Sample, Clear, Copy Schema and Download HTML. Downloads are named after the type, for example schema-article.html.

How to use the schema markup generator

  1. Click the Schema Type button that matches your page, for example Product for a shop page or Article for a blog post.
  2. Fill in the fields under the form heading (for example Product Details), or click Load Sample to start from an example and overwrite it. Click Clear to empty the current type.
  3. Read the Check before publishing list under the code and fix each item.
  4. Under Output Format, click JSON-LD (Recommended) or Microdata.
  5. Click Copy Schema, or Download HTML to save a file.
  6. Paste the JSON-LD block into the <head> or <body> of the page. For Microdata, merge the attributes into the HTML elements that already show the content.
  7. Click Validate with Schema.org or Test with Google, paste your code or page URL there, and check the result before you publish.

Who can use it

  • Bloggers and publishers adding an Article block with author, dates and image, and giving each post a clean address with the slug generator.
  • Online shop owners marking up a product with price, currency and availability.
  • Local businesses such as cafes, dentists and salons that want a LocalBusiness block with address and phone.
  • Event organisers describing a conference or workshop with dates, venue and time zone.
  • Developers and SEO specialists who check a hand-written block with the JSON validator, tidy it with the JSON formatter or compact it with the JSON minifier.
  • Site builders who paste the result into a template, view it with the HTML beautifier and shrink the page with the HTML minifier.

FAQs

How do I generate schema markup for free?

Click a Schema Type button such as Article or Product, fill in the fields or click Load Sample, and choose JSON-LD (Recommended) or Microdata under Output Format. The code updates as you type. Click Copy Schema, or Download HTML to save a file. There is no account, no limit and no cost.

Where do I paste the generated JSON-LD?

Paste the whole <script type="application/ld+json"> block into the HTML of the page it describes, either in the <head> or in the <body>. In WordPress and most site builders, use a custom HTML block or the header-code field. Each page should carry markup that describes that page, not a copy from another one.

Should I use JSON-LD or Microdata?

Use JSON-LD unless your templates force Microdata. Google recommends it if your site's setup allows it, as the easiest format to implement and maintain at scale. Microdata puts attributes on the elements that show the content, so merge the generated attributes into your existing markup instead of adding a second copy.

Do FAQ and HowTo schema still produce rich results in Google?

No. As of October 2026, Google Search Central says the FAQ rich result stopped appearing in Google Search from 7 May 2026, and it removed the HowTo rich result in September 2023. Both stay valid schema.org types that other tools can read, and this generator still builds them, with a warning.

Does schema markup improve my search rankings?

Not by itself. Google describes structured data as a way to make a page eligible for enhanced results such as product prices, review stars or event dates, not as a promise of a rich result or a higher position. A rich result can still make a listing more noticeable, which may bring more clicks.

What does the Check before publishing box mean?

It lists problems the generator can detect while you type: a missing headline, product name or price, a URL that does not start with https:// or http://, an end date before the start date, or a rating outside 1 to 5. The code is still generated, but fix each item before you publish so the markup is complete.

Is my data sent anywhere when I use this generator?

It runs in your browser; nothing is uploaded (you can check the Network tab in DevTools). The markup is built by a script that ships with the page as you type. The Validate with Schema.org and Test with Google buttons only open those sites in a new tab, and nothing reaches them until you paste your code there.