A search engine reading your page sees a wall of text. It is very good at guessing what that text means, and guessing is still what it is doing.
Structured data removes the guess. It is a small block of code, usually invisible to visitors, that states plainly: this is a business, this is its address, these are its hours, this page is an article published on this date. Instead of inferring, the machine is told.
That is the whole idea. The rest is knowing which labels are worth adding and which rules will get you into trouble.
What it gets you, and what it does not
Structured data is not a ranking factor. Adding it does not push you up the results. Anyone who tells you otherwise is selling something.
What it does is make you eligible for things a plain listing cannot have. Star ratings under a result. An FAQ that expands in place. A recipe card, an event date, a product price, a breadcrumb trail instead of a raw address. These are called rich results, and they take up more space and get looked at more.
It also matters increasingly for the answers that assistants and AI summaries generate. A machine assembling an answer about plumbers in your town will more readily use a business whose details are stated explicitly than one whose address it has to scrape out of a footer.
So the honest summary: it does not lift your position, it makes the position you have work harder.
The types worth having
There are hundreds of schema types. A small business needs a handful.
Organization or LocalBusiness. The foundation. Your legal name, address, phone number, opening hours, and the URL of your logo. Put it once, sitewide, and give it a stable identifier so every other block on the site can point at the same business rather than describing a new one on every page. Use the more specific type if one fits you exactly, such as Plumber or Dentist, and Organization if none does.
BreadcrumbList. Turns the grey address under your result into a readable trail. Cheap to add, visible immediately.
Service. One per service page, naming what it is and where you do it. This is the one that pairs a service to an area without you writing forty thin location pages.
FAQPage. Marks up questions and answers you already have on the page. Worth knowing that Google narrowed FAQ rich results in 2023 so that most sites no longer get the expanding boxes. The markup still helps machines read the page, it just no longer changes how your listing looks for most businesses.
Article. For blog posts. Headline, publication date, author.
Product and Offer. Only if you sell things online. Price, availability, currency.
That is it. Marking up every paragraph of your site is a way to spend a week and gain nothing.
The rules that actually get enforced
Two of these get sites into real trouble, and neither is obscure.
Only mark up what is visible on the page. If your structured data says you are open until eight and the page says six, or lists an address that appears nowhere on the site, that is a violation. The markup describes the page, it does not add facts to it.
Never mark up reviews you collected yourself and displayed nowhere. Self serving review markup, where a business writes its own aggregate rating into the code, is the most commonly penalized abuse of the whole system. Google can and does issue manual actions for it. If you want stars, get real reviews on a real platform.
Beyond those: do not mark up content that is behind a login, do not use a type that does not describe the page, and do not leave markup for a page that no longer exists.
Keeping it consistent
The detail that quietly matters is that the name, address, and phone number in your structured data should match your Google Business Profile and your directory listings exactly. Same suite number format, same abbreviation, same phone. A business that is “Suite 4” in one place and “Ste. 4” in another is giving a machine a reason to wonder whether it is one business or two.
This is the same discipline as keeping your listings consistent, applied to the code rather than the directory.
How to check it
The Rich Results Test. Paste in a live URL and Google tells you which rich result types it found and whether they are valid. This is the one to use, because it tests what Google actually supports rather than what the schema vocabulary allows.
The Schema Markup Validator. Broader, catches syntax errors, useful when the Rich Results Test says it found nothing and you want to know why.
Search Console, under Enhancements. Once you have valid markup on a live site, Google reports what it found and any errors. This is the one that catches a template change breaking every page at once, which is the failure that matters.
Check after every site change that touches templates. Structured data breaks silently and nothing on the page looks different.
Where to put it
Use JSON-LD, in a script tag, rather than sprinkling attributes through your HTML. It is what Google recommends, it sits in one place, and it survives a redesign because it is not tangled up in the markup that the designer is going to change.
If your site is built on a platform, there is usually a plugin or a built in setting. Check what it emits before trusting it. A surprising number generate a LocalBusiness block with placeholder text still in it, or produce two competing Organization blocks that describe the same company twice.
The realistic expectation
You add correct markup for your business, your services, and your articles. Nothing visible happens for a few weeks. Then your results start showing breadcrumbs, your business details stop being reassembled incorrectly by third parties, and the assistants that summarize local businesses have something unambiguous to work from.
It is plumbing. Worth doing once, properly, then leaving alone.



