GEO courseModule 4 of 10: Who You AreLesson 4.2
Structured Data That Matches the Page (Including Listings)
Structured data (schema) is code that labels the facts on a page for machines: "this is the business name", "this is the price", "these are our official profiles". For GEO it's about accuracy, not a growth hack: it should state exactly what the visible page says, and nothing else.
Why it matters
Wrong or out-of-date markup (an old phone number, "available" on a sold home) can feed wrong facts to machines long after the page itself was fixed.
The evidence
Evidence: Official guidance
Google's own guidance (no special schema needed) plus one large matched test that found no citation uplift. Microsoft says it helps, without data.
Do this first
Run your homepage and one live listing through the Rich Results Test, and compare every field with what's on screen.
01What it is
A label on a lunchbox saying what’s inside. A good label helps. A label that says “cheese” on a ham sandwich confuses everyone.
Think of it like
The label inside a coat: name, size, washing instructions. Useful if correct. Misleading if someone sewed in the wrong label.
See it happen
Same listing. The page says one thing, the hidden code says another, and the code still “passes”.
4 fields disagree, and the code still “passes” the test
What people see on the page
What the hidden code (schema) tells machines
An old plugin setting and a feed that never updated. A machine reading the code is told the wrong phone number and that a home under offer is still available.
02Why it matters
To the people searching
Customers never see schema. They see its effects: the right phone number and logo in search results, or a sold property described as available because the code was never updated.
buyers
May be sent stale prices or availability if old listing markup is repeated.
tenants
Same risk for rents and "let agreed" status.
sellers
Expect their home's price and status to be right everywhere.
landlords
Expect your correct name, phone and logo, not those of a similar firm.
To Google, Bing and AI
Evidence: Official guidanceGoogle says there's no special schema needed for its AI features, and that structured data should match the visible page. It's still useful for rich results and helps Google tell organisations apart. Microsoft says schema helps its systems understand content, without publishing data. OpenAI, Anthropic and Perplexity haven't said they use it. The best test so far: Ahrefs tracked 1,885 pages that added schema against about 4,000 that didn't (2025 to 2026) and found no meaningful change in AI citations. So treat schema as cheap, harmless when correct, and not a way to get cited.
- Special schema types Google says you need for AI Overviews or AI Mode
- 0Special schema types Google says you need for AI Overviews or AI Mode
- Pages Ahrefs tracked after adding schema: no meaningful change in AI citations
- 1,885Pages Ahrefs tracked after adding schema: no meaningful change in AI citations
An agent example
An agency's plugin outputs a phone number from the old head office and opening hours that no longer match the branch. The Rich Results Test passes, because the code is valid, but comparing it with the contact page shows the mismatch. The agency fixes the plugin settings so the code and the page agree. On its listings, it asks its provider to generate markup from the live feed, so "under offer" changes the code at the same time as the page.
03Your turn
Check yours, then fix it
- 1Paste your homepage address into the Rich Results Test. Note what it detects and any warnings.
- 2Run the same page through the Schema Markup Validator, which checks everything, not just Google's types.
- 3Repeat with a live listing, one under offer and one let agreed.
- 1View page source and search for application/ld+json.
- 2Read the name, phone, address, opening hours and profile links (sameAs). Compare each with the visible page and your fact sheet.
- 3On listings, compare price, status (availability), address and bedrooms with what's on screen.
- 4Open each sameAs link: is it your official, live profile, showing the same name?
Here is the JSON-LD from my page and the visible page text. Does the markup match the page? List every field that differs, or that appears in the code but not on the page (for example ratings, prices or status).
- 1On the homepage or About page: Organization or RealEstateAgent, with name, url, logo, address, telephone, openingHours, areaServed and sameAs links to your real profiles (Google, LinkedIn, Facebook, Companies House).
- 2WordPress: Yoast SEO and Rank Math add Organization markup. Check the business detail fields.
- 3Other sites: generate it (Merkle's free tool, or the AI prompt below), validate it, and add it through your CMS or ask your developer.
- 1Ask your provider to generate listing markup (RealEstateListing with an Offer) from the live feed, so a status or price change updates the code within the hour.
- 2If they can't keep it in sync, ask them to remove it.
- 3Don't expect a special result in Google for listings. The benefit is accuracy.
- 1No review stars or ratings in markup for your own business: Google doesn't allow them on a business's own pages about itself.
- 2No fees, awards or claims in the code that aren't on the visible page.
- 3Never copy another firm's template with their details still in it.
Create JSON-LD for a RealEstateAgent with these details: name, address, phone, website, logo URL, opening hours, areas served and these official profile links. Use only what I give you. [paste details]
Then: Add one line to your change checklist: when an address, phone, hours or branch name changes, update the markup the same day, then re-validate.
04Keep it up
Validate after any redesign, plugin update or change of details, and spot-check five listings each quarter.
See also
That's lesson 4.2
Worked through it? Mark it done and we’ll keep track on this device.
← Back to 4.1 One Name, One Set of Facts: Naming, NAP and Your Agency Fact Sheet