Restaurant, fully implemented
A complete Restaurant and Menu implementation on a page that says plainly the business is fictional.
This is a laboratory, not a business. Every page here exists to test how search engines and AI assistants handle structured data. Nothing is for sale and no organisation described on this site is real.
Each one is a single schema type implemented in full on a working page, with the markup it ships and a dated record of what engines did with it. The marks are computed from the type names, so the same type always carries the same shape.
A complete Restaurant and Menu implementation on a page that says plainly the business is fictional.
Event markup with time zones, eventStatus, attendance mode and a real Place, on an openly fictional listing.
The same page shape with no JSON-LD at all. Without this, nothing else here is a comparison.
A full Product and Offer implementation. The authored markup carries invented reviews; the output does not.
The one specimen whose subject is genuinely real: this site. Every question and answer below is true.
A genuinely useful procedure: checking what structured data a page really ships, rather than what it claims to.
A real article on why a control page matters, marked up as Article with a named author and dated revisions.
Full LocalBusiness markup with geo, hours and service area, deliberately placed where no business could be.
Person markup for someone who does not exist, with no sameAs links borrowing a real profile.
The one type you cannot fake without shipping invalid markup, so the lab made a real six-second video for it.
An olive oil cake written out properly, because a Recipe specimen that nobody could cook tests nothing.
The one type where a fictional specimen could waste somebody's time, so the fiction is stated in the fields themselves.
A second unmarked page, published with this batch so each batch is compared against its own baseline.
Every specimen against every check.
| # | Specimen | Type | Validator | Rich result | Indexed | AI citation |
|---|---|---|---|---|---|---|
| 01 | Restaurant, fully implemented | Restaurant | queued | not run | not run | not run |
| 02 | Event, with the properties everyone skips | Event | queued | not run | not run | not run |
| 03 | Control: no structured data | control | not run | not run | not run | not run |
| 04 | Product, and the ratings that never ship | Product | queued | not run | not run | not run |
| 05 | FAQPage, answering real questions about this lab | FAQPage | queued | not run | not run | not run |
| 06 | HowTo, with steps that actually work | HowTo | queued | not run | not run | not run |
| 07 | Article, about the thing most collections leave out | Article | queued | not run | not run | not run |
| 08 | LocalBusiness, at coordinates in open water | LocalBusiness | queued | not run | not run | not run |
| 09 | Person, invented on purpose | Person | queued | not run | not run | not run |
| 10 | VideoObject, pointing at a video that exists | VideoObject | queued | not run | not run | not run |
| 11 | Recipe, which genuinely works | Recipe | queued | not run | not run | not run |
| 12 | JobPosting, with the disclaimer inside the markup | JobPosting | queued | not run | not run | not run |
| 13 | Control B: no structured data, second batch | control | not run | not run | not run | not run |