Lumar · Main entity
Schema is how machines read your content.
Every page is about one thing. Lumar names it as a schema.org type, on every page of your crawl, and tells you where your markup says something else.
One page. One main entity.
- 01A product page mentions many things: the shop, a breadcrumb, the price, reviews, a block of FAQs.
- 02Search engines and AI assistants read schema to work out which of them the page is about.
- 03That one thing is the main entity. Lumar names its most specific schema.org type, here a Product.
Every type. Two rounds.
- 01About 740 schema.org types can be what a page is about. Types that fit any page, like WebPage, are set aside first.
- 02They are too many for one question, so round one splits them into three questions, asked together. Every type is weighed; nothing is ruled out early.
- 03Each question keeps its five strongest types. If a question cannot be answered, it is split and asked again; anything still unanswered is reported, never dropped.
- 04Round two weighs the fifteen finalists together, side by side.
- 05The answer comes with a confidence score, so close calls show their runner-up.
Read in code. Not guessed.
- 01Lumar reads your JSON-LD and microdata directly. No model looks at your markup.
- 02It finds the part of your markup that describes this page, and reads what it says the page is about.
- 03An FAQ block on the page names its own main entity, but it describes the block, not this page, so it never counts as the page's answer.
Wrong is a different kind of thing.
- 01Markup says Article, the page is a BlogPosting. Same branch of schema.org, just less specific: a match.
- 02Markup says Article, the page is an Event. Different branches: a real mismatch.
- 03Markup names nothing: reported as missing, never counted as wrong. On lumar.io, comparing exact types flagged 15 of 17 blog posts; comparing branches leaves the 2 real ones.
In the report
What it found on lumar.io.
Real rows from a crawl of our own site. Most pages name no main entity at all; a few name the wrong kind of thing.
Built for every page of every crawl.
Types weighed0for every page, in two rounds
Model0built to choose, not a chatbot
Per page0typical time to decide
Finalists0weighed together in round two
Know what every page is about.
And whether your schema agrees. On every page, on every crawl.