All free tools

Free tool · No signup

Schema Markup Generator

Fill in a form, get valid JSON-LD structured data to paste into your page.

Required by Google

Use the most specific type that fits. For a shop with an address, use the Local Business generator.

At least 112×112 px, on a plain background. Google crawls the image, so it must be public.

Two-letter ISO code, such as US, GB or PK.

Social and profile links

Profiles that are clearly the same entity: LinkedIn, X, Facebook, Instagram, GitHub, Wikipedia.

Contact points
  1. contact point 1

JSON-LD

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Example Studio",
  "url": "https://www.example.com/",
  "logo": "https://www.example.com/logo.png",
  "description": "Example Studio designs and builds websites for small businesses.",
  "email": "hello@example.com",
  "telephone": "+1 555 010 0199",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Springfield",
    "addressRegion": "IL",
    "addressCountry": "US"
  },
  "sameAs": [
    "https://www.linkedin.com/company/example-studio",
    "https://x.com/examplestudio"
  ],
  "contactPoint": [
    {
      "@type": "ContactPoint",
      "contactType": "customer service",
      "telephone": "+1 555 010 0199",
      "email": "support@example.com"
    }
  ]
}
</script>

Valid Organization markup

In the Rich Results Test, choose Code and paste. Your data stays in this browser: nothing is sent to a server.

Search preview · approximate

example.com

Example Studio

Example Studio designs and builds websites for small businesses.

Google can use it for the logo and details in knowledge panels and to tie your social profiles to your brand. It doesn't produce a rich result on its own. Google's gallery

What schema markup is

Schema markup, or structured data, is a small block of code that describes what a page is about in a vocabulary search engines share: schema.org. A product page says “this is a product, it costs $89 and it's in stock”; a business page says “this bakery is at 12 Market Street and opens at 7”. Search engines can read that without guessing from your layout.

This generator writes it as JSON-LD, the format Google recommends: one <script type="application/ld+json"> block, separate from your HTML, so it's easy to add and update.

What it can unlock, and what it can't

Valid markup makes a page eligible for rich results: review stars and prices under a product, a breadcrumb trail instead of a raw URL, business details next to a map. Google decides whether to show them, and structured data isn't a general ranking factor. What it changes is how your result looks, which can change how many people click it.

The markup also has to match what people see. Marking up reviews that aren't on the page, or prices that differ from the visible ones, can cost you rich results for the whole site.

Supported types

Each type has its own page with the properties Google requires and recommends and a complete example:

  • Organization schema generator (Organization): Organization markup tells search engines who is behind a site: the official name, logo, social profiles and how to reach you.
  • Local Business schema generator (LocalBusiness): LocalBusiness markup describes a business people can visit or call: its address, opening hours, phone number and location on a map.
  • Product schema generator (Product): Product markup describes one product on its own page: what it is, what it costs, whether it's in stock and what buyers rate it.
  • Article schema generator (Article): Article markup describes a blog post or news story: its headline, images, author and when it was published and updated.
  • FAQ schema generator (FAQPage): FAQPage markup lists the questions and answers on a page that you wrote yourself, such as a support page or the FAQ at the end of a service page..
  • Breadcrumb schema generator (BreadcrumbList): BreadcrumbList markup describes where a page sits in your site, such as Home › Shoes › Running shoes.
  • Person schema generator (Person): Person markup describes an individual: their name, photo, job, employer and the profiles that belong to them.

How the generator works

  • Required and recommended fields follow Google's rich result documentation for each type. Required ones are marked with a star; missing recommended ones show as warnings.
  • Live validation checks formats as you type: full https:// URLs, YYYY-MM-DD dates, prices without currency symbols, ISO currency and country codes, ratings from 1 to 5.
  • No empty properties. Fields you leave blank are dropped from the output rather than written as empty strings.
  • Private by design. Everything runs in your browser. Your draft is kept in this browser and in the share link's # fragment, which browsers never send to a server.

Where to paste the code

  • WordPress: check what your SEO plugin (Yoast, Rank Math) already outputs, then add the block with a header-code plugin such as WPCode, or in your child theme's header.php before </head>. For one page only, use a Custom HTML block in that page.
  • Shopify: for site-wide markup such as Organization, go to Online Store › Themes › Edit code and paste it in theme.liquid before </head>. For products, edit the product section (often main-product.liquid) and use Liquid variables such as {{ product.title | json }} so every product gets its own values. Most themes already output basic Product markup.
  • Next.js: render it in the page component as <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify(data).replace(/</g, "\\u003c") }} />. Escaping < stops a value from closing the script tag early; this site does the same.
  • Webflow: Page settings › Custom code › Inside <head> tag. For CMS collection pages, add it to the template's page settings and insert fields from the collection.

Common mistakes

  • Markup that doesn't match the page. Every value should be visible to people on the same page.
  • Fake or self-written reviews. Google ignores ratings a business writes about itself, and can issue a manual action for misleading review markup.
  • Two conflicting blocks. Themes and SEO plugins often add Product, Article or Organization markup already. Check the live page first and extend what's there rather than adding a second, different one.
  • Relative or private URLs. Images and logos must be full, public URLs that Google can crawl.
  • Expecting FAQ dropdowns. Since 2023 Google shows FAQ rich results only for well-known government and health sites.

How to test it

Paste the code into Google's Rich Results Test (choose Code), or test the live URL once it's published. The Schema Markup Validator checks against the full schema.org vocabulary, including types Google doesn't use. After publishing, the Enhancements reports in Search Console show errors across the whole site. For AI search, pair it with an llms.txt file.

By Muhammad Saif · Updated

Questions

Does schema markup improve rankings?

Not directly. Google has said structured data isn't a general ranking factor. It makes pages eligible for rich results, such as review stars, prices and breadcrumbs, which can make a result stand out and earn more clicks.

JSON-LD or Microdata?

JSON-LD. Google recommends it because it sits in one script block, separate from your HTML, so it's easier to add and maintain. Microdata and RDFa still work but are woven into the markup.

How many schema types can one page have?

As many as describe what's really on the page, for example Organization, BreadcrumbList and Product on a product page. Each can be its own script block, or one block with an @graph array.

Where do I paste the code?

Anywhere in the page's HTML, usually the <head>. Then test the live page in Google's Rich Results Test and watch the Enhancements reports in Search Console.

Is my data sent anywhere?

No. The generator runs entirely in your browser. Your draft is kept in this browser's local storage and in the share link, and never sent to a server.