How a rich result works
A rich result is an ordinary organic listing with extra detail attached. The detail comes from structured data — usually schema.org vocabulary written as JSON-LD in the page’s source — which describes what the page is about in a form a machine can read without guessing. A recipe page can declare its ingredients and cooking time, a product page its price and availability, a how-to its steps.
Two things have to line up. The markup must be valid and must match what a visitor can actually see on the page, and Google must currently support a rich result for that type on that kind of search. Valid markup makes a page eligible, and nothing more. Google decides at the moment of the search whether the extra detail helps the person searching, which is why the same page can show a rich result on one query and a plain listing on another.
Why rich results matter
The listing occupies more space and answers more of the question before the click, which usually helps click-through — though not always, since a result that answers completely can also end the search there.
The quieter benefit is comprehension. Structured data states plainly what a page is, who published it, what it costs and how it relates to other things. That removes guesswork for search engines, and increasingly for the systems that summarise pages inside AI answers, which is a good reason to describe your important pages accurately even where no visible rich result exists for them today.
Common mistakes with rich results
Marking up things the page does not show is the serious one. Declaring reviews, prices or questions that a visitor cannot see breaks Google’s guidelines and can lead to a manual action against the site’s structured data — a far worse outcome than never having added any.
The second is treating eligibility as a promise. A report showing markup as valid is telling you the syntax is correct, not that anything will be displayed. The third is chasing every available type. Support changes over time, and a type that produced a visible result a while ago may quietly stop doing so. Add markup because it describes the page truthfully, not because a checklist said to.
How to act on it
Start with the types that match what your pages genuinely are: organisation and site details, breadcrumbs, articles, products if you sell them, local business details if you have premises. Write it as JSON-LD, and generate it from the page’s own data wherever you can, so it cannot drift out of step when the content changes.
Validate with the Rich Results Test for eligibility, then watch the enhancement reports in Search Console, which show errors across the whole site rather than one page at a time. Judge the outcome on clicks and impressions for the affected pages, not on how many types you have installed — that measurement discipline is what separates useful schema markup work from box-ticking. And re-test after any redesign, because the commonest way markup breaks is a template change nobody expected to touch it.