Utilia

Schema Markup Generator

Generate valid JSON-LD schema markup for FAQ pages, articles, organizations, local businesses and products, with checks for required properties.

Then check the page or the code in Google's Rich Results Test: https://search.google.com/test/rich-results

Checks

How to use the schema markup generator

  1. Pick a Schema type: FAQ page, article, organization, local business or product.
  2. Fill in the form. Use Load example first if you want to see what a complete entry looks like.
  3. Add as many repeated items as you need: questions, authors, profile links, opening hours or product images. Each row has its own Remove button.
  4. Watch the Checks list: it tells you which required or recommended properties are missing and which values look wrong, such as a relative URL or a rating above 5.
  5. Copy or Download the generated <script type="application/ld+json"> block and paste it into the HTML of the page it describes, in the <head> or the <body>.
  6. Test the published page, or paste the code, in Google’s Rich Results Test (the link is under the code).

What structured data is

Structured data describes the content of a page in a vocabulary that machines understand, schema.org. Search engines use it to understand what a page is about (an article, a shop, a product with a price) and, for some types, to display rich results such as star ratings, prices, opening hours or a knowledge panel for your organization.

JSON-LD is the format Google recommends. The markup sits in its own script block, separate from your visible HTML, so it is easy to add, update or generate from a template. The code must describe content that is actually visible on the page: marking up reviews, prices or questions that visitors can’t see goes against Google’s guidelines.

The five types in this tool

  • FAQPage: a list of questions with their answers, for a page that is a real FAQ written by the site (not a forum). Since August 2023, Google shows FAQ rich results only for a small number of authoritative government and health websites. The markup is still valid and can help other search engines and tools understand the page.
  • Article (or BlogPosting, NewsArticle): headline, image, dates and authors. Google has no strictly required properties for articles, but recommends the headline, image, author and dates.
  • Organization: name, website, logo, contact details and sameAs links to your official profiles. It helps search engines connect your site to your brand.
  • LocalBusiness: address, phone, coordinates, price range and opening hours, with a more specific type such as Restaurant or Dentist when one fits. Put it on the home page or the page of each location.
  • Product: name, images, brand, SKU or GTIN, an offer with price, currency and availability, and an aggregate rating. Google needs at least an offer, a review or a rating to show a product rich result.

Details handled for you

  • Empty fields and empty rows are left out, so you never publish "name": "".
  • Prices accept a comma or a dot (89,50 becomes "89.50"), and availability and condition use full schema.org URLs as Google expects.
  • Opening hours use OpeningHoursSpecification with days such as “Monday to Friday” expanded into a list of days.
  • The JSON is produced with JSON.stringify, and the characters <, > and & are escaped as \u003c, \u003e and \u0026, so text containing </script> can’t break out of the script block.

Frequently asked questions

Does structured data improve rankings?

Not directly. It helps search engines understand your pages and can make them eligible for rich results, which often get more clicks. Eligibility is not a guarantee: Google decides when to show rich results.

Can I put several schema blocks on one page?

Yes. A product page can have a Product block and an Organization block, for example. Each block you generate here is independent; paste them one after the other.

Why does the Rich Results Test show no rich result for my FAQ?

Because FAQ rich results are now limited to a few well-known government and health sites. If the test reports the FAQ markup as valid, there is nothing to fix.

Which date format should I use?

This tool writes dates as YYYY-MM-DD, which is valid ISO 8601. If you need the exact time, you can add it afterwards in the form 2026-03-14T09:30:00-05:00.

Is my data sent anywhere?

No. The code is generated in your browser. The Rich Results Test link only opens Google’s page; nothing is sent until you paste your code or URL there yourself.