Blog
GEO

JSON-LD or Microdata? Choosing a Schema.org format

Schema.org supplies the vocabulary. JSON-LD and Microdata encode it, while itemprop is a Microdata attribute. Choose a format for accurate, maintainable information rather than a promised AI citation advantage.

two rectangles, one labeled "JSON-LD Schema.org" and the other "microdata itemprop"

Updated on 20 October 2026.

Separate vocabulary from syntax

Schema.org defines types and properties, such as Organization and name. JSON-LD expresses data in a script block. Microdata uses HTML attributes including itemscope, itemtype and itemprop. Comparing Schema.org with itemprop mixes different categories.

Google supports JSON-LD, Microdata and RDFa. It recommends JSON-LD for implementation and maintenance, while valid implementations of all supported formats are acceptable. This does not establish that one syntax produces more AI citations.

Choose for your existing site

Identify what your CMS, theme and SEO plugin already generate. Keep valid Microdata if it matches the page and stays accurate after edits. Migrate to resolve a concrete maintenance problem, not merely because a checklist labels JSON-LD as GEO.

JSON-LD can separate the data generator from the visible template, but it still needs synchronization. Names, prices and authors must match the content users see. Assign ownership of each entity and check whether another component emits conflicting information.

Compare implementation decisions

The table concerns maintenance, not a ranking advantage.

QuestionJSON-LDMicrodata
Where is data encoded?Separate script blockHTML element attributes
Main maintenance riskScript diverges from visible contentTemplate edits remove attributes
When should it stay?When correct and maintainedWhen correct and maintained

One fictional entity in two formats

The samples encode the name of a fictional organization. They are not a Semly deployment or a complete eligibility example for a specific rich result. example.com is an illustrative address.

<script type="application/ld+json">
{"@context":"https://schema.org","@type":"Organization","name":"Demo","url":"https://example.com/"}
</script>
<div itemscope itemtype="https://schema.org/Organization"><span itemprop="name">Demo</span><a itemprop="url" href="https://example.com/">Demo</a></div>

Accept and verify the implementation

Compare rendered HTML with the visible page. Check names, URLs, authors and applicable product facts. Do not add fabricated ratings or credentials. Check each language version against its actual content and URL.

Use Schema.org validation for vocabulary and syntax, and Rich Results Test for Google-supported features. Passing a test does not guarantee a rich result. After publication, inspect the actual URL as well as the sample. A template change may affect many pages.

Separate Semly monitoring from page markup

Semly observes brand descriptions and sources in answers to monitored questions. A CMS or SEO tool manages markup on the website. These responsibilities complement each other but do not establish a causal effect on citations.

Google requires no special Schema.org markup for generative search features. Prioritize truthful accessible information. Fix incorrect source data and its generator; when existing markup is correct, weigh migration costs against a specific maintenance benefit.

Related guidance

Using Semly alongside Yoast SEO or Rank Math: assigning WordPress tasks without duplicate settings

Does llms.txt work? Uses, limits and an acceptance test

Sources and scope

Google: JSON-LD, Microdata, RDFa

Schema.org

Google: AI Search

Check whether AI can find your business

Get a free audit

Share:

Check if AI ChatGPT sees your brand

Get your first AI visibility report in minutes.