Build log · GEO · 13 June 2026
I built a Chrome extension that shows you the structured data a page is missing
A free Chrome extension that reads any page’s structured data and shows what is present, what Google has quietly deprecated, and what is missing to be the trusted answer in AI search. On-device, and open-sourced.
By Piers Butler, Laurelin Labs
Structured data used to be a nicety. You added a bit of schema, you maybe earned a star rating in the search results, and that was the end of the conversation. In AI search it is something else entirely. Structured data is one of the clearest ways a machine decides what a page is about, who is behind it, and whether it can be cited with confidence. It has moved from decoration to identity.
The problem is that almost nobody can see what their own pages are emitting. Schema accretes over years, across plugins and redesigns and well-meaning developers. Some of it is good. Some of it is for features Google switched off. Some of it is a fossil from a vocabulary that died in 2020. So I built a small, free Chrome extension that reads the structured data on any page and tells you three things: what is there, what is now dead weight, and what is missing. And I open-sourced it.
The gap nobody is looking at
There are three different questions hiding inside “do we have schema”, and they have drifted apart.
There is what Schema.org allows, which is hundreds of types. There is what Google will actually reward with a search feature, which is a much smaller subset, and which keeps shrinking. And there is what AI answer engines ingest to build and disambiguate entities, which is different again. The interesting failures live in the gaps. A site proudly ships FAQ markup for a rich result Google removed in May 2026. Another leans on HowTo, demoted to an AI-only signal in March. A third still carries data-vocabulary.org tags from a decade ago. And almost every corporate site I look at has an Organization block with no sameAs, no @id, and no named people attached, which is the single biggest miss for entity authority.
You cannot fix what you cannot see. I wanted to just look.
What the extension does
Click the icon on any page and it injects a one-off reader into the tab, parses every block of structured data, and shows you a verdict. Detected types, with their source. Deprecated or at-risk types, with a plain note on what changed and when. And the recommended types that are missing for that kind of page, with the reason each one matters. If it finds an Organization or Person, it checks whether the properties that actually carry entity weight, sameAs, @id, logo, knowsAbout, jobTitle, are present, and flags the ones that are not.
The constraint that matters: the scan never leaves your browser. There is no server and no telemetry. The only thing the extension ever sends is what you choose to type into the contact form, and even that is also kept locally. A page audit is your business, not mine.
The build: where it got interesting
The architecture is deliberately small for a Manifest V3 extension. The privacy-first choice was made up front: no host permissions at all. The extension asks only for activeTab and scripting, which means nothing runs until you click, and it physically cannot watch your browsing. That is a slightly harder way to build it, and it is the right one.
Parsing structured data is messier than it looks. JSON-LD arrives in three shapes, a single object, an array of objects, and the @graph wrapper, and types nest inside types. The first parser I wrote was too strict and threw on real-world pages that mix all three. The fix was a forgiving, recursive walker that collects every @type it can find and quietly skips any block of malformed JSON rather than failing the whole scan. Real sites are not tidy, and the tool has to cope.
The genuinely useful logic is the deprecation map. It is not enough to say a type is “bad”. FAQPage is still valid schema and still helps AI, it just no longer earns a Google feature, so the honest note is “keep it for AEO, do not expect a rich result”. That nuance, current to 2026, is the difference between a linter that nags and one a practitioner trusts.
One small security note I was glad to get right, the same one as last time. Every string the extension pulls off a page is rendered as text, never as HTML. A @type or a URL on someone else’s page is untrusted input, and that one habit means a hostile string cannot inject anything into the popup.
What it reveals
Run it across a few corporate sites and a pattern jumps out. Most ship Organization and Article and stop. The leadership team, the people a buyer or journalist or investor actually asks an AI about, are almost never present as Person entities. There is rarely a single coherent @id graph tying the company, its people, and its content together. And deprecated markup lingers for years because nobody had a reason to look.
That is the whole thesis of how we work at Laurelin Labs in one screen. Entity authority is not exotic. It is mostly the unglamorous work of being legible, complete, and unambiguous to a machine, and then proving it. This extension just makes the gap visible.
A note on collecting data at scale
The obvious commercial thought is to phone home every page everyone scans and build a structured-data dataset of the web. The answer is no, for the same reason as last time. The moment a page audit stops being local and starts being collected, you have taken on data you did not need and a trust problem you did not have. The scan stays on the device. The only data that reaches us is a contact form someone deliberately filled in, with a clear reason and their consent. That is not a missing feature. It is the design.
Try it
It is free. Pin the icon, open any site, and see what it is really telling the machines. It is open source if you would rather read or run it from the repo. A one-click Chrome Web Store build is on the way.
This is what Laurelin Labs is for. Build the small instrument, publish what it teaches, and make the brands and the people behind them the trusted, retrievable answer. Go and scan your own site first.
Built by Laurelin Labs. Not affiliated with Google or Schema.org. See the privacy policy.
The field notes
Frameworks, builds and what is changing in AI search.
Sent occasionally, never noise. The thinking behind the work, and the experiments before they ship.
No spam. Unsubscribe anytime.