Lesson 14 of 14
Writing JSON-LD that parses is the easy part — the actual bar is 'is this page eligible for a rich result,' and the only reliable way to know is running it through Google's Rich Results Test and Search Console, not eyeballing the schema against docs.
12 min read
Every option explains itself — why the right one is right, and why each wrong one is wrong. Miss one and it comes back later on a spaced-repetition schedule.
This topic is about judgment and practical tradeoffs more than a single right answer — a mock interview is the better way to test yourself on it.
Be interviewed on this →Hints without spoilers, and a plain explanation of why a wrong answer was wrong — answered only from this lesson. Free account, no card.
Sign up freeWhat interviewers actually ask about this, and what a strong answer has to cover.
A strong answer covers
Likely follow-ups
Writing JSON-LD that parses as valid JSON is the easy 20% of structured data. The actual bar search engines apply — "is this page eligible to show a rich result" — is a separate, stricter check, and the only reliable way to know you've cleared it is to run the page through Google's own validation tooling, not to eyeball the schema against schema.org's docs and assume it's fine.
Two tools do this job, and they check different things:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Mouse",
"image": "https://example.com/mouse.jpg",
"description": "A wireless mouse."
}
This is syntactically valid JSON-LD and will parse without error — but it's very likely ineligible for a Product rich result, because Google's Product requirements expect offers (price/availability) or review/aggregateRating to actually produce the price or star-rating snippet people associate with product rich results. "Valid JSON" only means the parser didn't choke; "eligible for a rich result" means the specific schema type's required and recommended fields are present and match what's genuinely visible on the page:
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wireless Mouse",
"image": "https://example.com/mouse.jpg",
"description": "A wireless mouse.",
"offers": {
"@type": "Offer",
"price": "24.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
This is a strong "have you actually shipped structured data, or just read about JSON-LD" filter — a candidate who only knows to "add schema markup" hasn't closed the loop, while one who describes pasting the URL into the Rich Results Test, distinguishing errors from warnings, and checking that the marked-up content is actually visible on the page is describing a real validation workflow, not a copy-paste step.