“We’ll set up schema markup for you.” What are they actually selling?
That line in an agency’s proposal sounds like programming, and it tends to be priced accordingly. Yet it’s a simple thing: structured data is a few lines tucked away in a page’s code that tell machines, in their own language, what a person sees with their eyes. Who you are. What you do. Where you operate. When you’re open. How to reach you.
Picture a plumber in Brno. A visitor reads on his site: “Novák Plumbing — water, heating, gas. Brno and the surrounding area, emergency call-outs including weekends.” Three seconds and it’s clear. But the robot reading the page sees only a pile of words and has to guess: is Novák the name of the company, a person, or a street? Is “emergency call-outs” a service or opening hours? Does the phone number in the footer belong to this company, or to a partner e-shop?
Structured data ends the guessing. In machine-readable form — most often in the format known as schema.org — it says in black and white: this is a local business, it’s called Novák Plumbing, the field is plumbing work, the town is Brno, this is the phone number, these are the opening hours. A business card for machines. Nothing more, nothing less.
Why deal with it right now
More machines than people read your site these days. Google builds search results and AI answers out of it, ChatGPT draws on Bing’s index when looking up companies, voice assistants on both. When a customer asks for “a plumber in Brno with weekend emergency service”, a machine composes the answer — and it composes it from what it managed to read off websites. You can check exactly what AI says about your business right now using the walkthrough in what ChatGPT says about your business.
One honest caveat up front: structured data is not a shortcut to rankings. Google’s own documentation states explicitly that even flawless markup guarantees no rich display, let alone a position. Anyone selling you schema markup as leverage onto page one is selling something they don’t control. The real benefit lies elsewhere and it’s understated: machines don’t have to fill in the blanks about you. And what a machine doesn’t invent, it can’t get wrong.
Which markup makes sense for a small business
There are hundreds of markup types. A small business needs a handful — and three filled in correctly beats fifteen done carelessly.
| Markup | What it tells machines | Who it’s for |
|---|---|---|
| LocalBusiness | company name, field, address, opening hours, phone | any business with premises or a local service area |
| Service | which service you offer and for which area | trades, repair shops, consulting — services without a fixed per-item price list |
| FAQPage | which questions and answers are on the page | pages with frequently asked customer questions |
| Article | that it’s an article, who wrote it, when it was written and updated | a company blog |
| BreadcrumbList | where the page sits in the site’s structure | sites with multiple page levels |
For Novák the plumber, that means: LocalBusiness on the homepage and contact page, Service on the “water pipework”, “boiler replacement” and “emergency service” pages, FAQPage where he answers common questions, Article on blog posts.
LocalBusiness markup is also one of the technical pieces holding up local visibility — alongside a Google business profile and properly named service pages, as covered in local SEO for a small business. With FAQPage, the rule is that markup only describes content that has to be worth reading in the first place — how to pick the questions and write the answers is covered by FAQs on your website.
And what to skip: product markup, unless you run an e-shop, and marking up reviews you wrote yourself on your own site — ratings carry more weight where you don’t control them, and why Google reviews are the ones that matter is a chapter of its own. Feel free to leave alone the exotic types a generator offers you. A business card shouldn’t run to twenty pages.
What AI Overviews and ChatGPT read off the card
AI systems read primarily the actual text of your pages. But structured data helps them with the hardest part: assembling unambiguous facts out of that text. That “Novák” is a company, not an author’s surname. That it operates in Brno, not in Prague, where it only has a billing address. That “weekend emergency service” is a service with its own phone number, not a footnote.
Google builds its picture of companies out of facts assembled this way, and Bing — which powers search in both ChatGPT and Copilot — treats markup similarly. So when an AI assistant decides which company to name in an answer, it picks from the ones it’s clear about.
Again, honestly: it’s one signal among many. Without understandable content that answers customers’ real questions, no markup will get you into an AI answer — what decides whether you get cited is covered in how to write content that AI cites. Structured data doesn’t replace that content. It only makes sure that once a machine does notice you, it reads the right details about you.
How to get markup added without knowing any code
The good news: this is a one-off job measured in hours, not a monthly project.
Your site runs on WordPress, Wix or a similar platform. SEO plugins like Yoast or Rank Math can generate the basic markup from a form — you fill in the company name, business type, address and opening hours, and the plugin creates and inserts the code itself. Ten minutes of work, no code. The one thing to watch out for: don’t let the theme and the plugin generate markup at the same time. Two contradictory records on one page are worse than one missing.
Your site is custom-built. Send your developer a one-sentence brief: “Add LocalBusiness and Service markup to the site based on the real details that are already on the pages.” That’s routine for a developer — usually they’ll insert a block in the JSON-LD format into the page header, which is exactly the “piece of code” we’ve been talking about all along. Expect hours of work in terms of scope.
You have nobody on hand. You can have the code generated for you — there are plenty of form-based JSON-LD generators, and essentially they just convert filled-in fields into machine notation. The generated block can then be inserted into the site by anyone who can handle the pages — your site administrator as part of routine maintenance, for instance.
Whichever route you take, insist on two rules that follow directly from Google’s policies. First: markup may only state what a visitor can see on the page too. A business card claiming something different from the shop window is a reason for Google to ignore the markup. Second: the details must match reality. Opening hours, phone, address — all exactly as they stand today, not as they stood when the site launched.
The most common mistakes that devalue the card
- The markup claims something that isn’t on the page. The most common offence, and the only one that risks a loss of trust — Google stops taking such markup seriously.
- Outdated details. The business moved, the site keeps telling machines the old address. A machine has no way of knowing it “doesn’t apply any more”.
- Double markup. The theme generates one set, the plugin another, each with different opening hours. The machine doesn’t know what to trust, so it trusts nothing.
- Expecting a jump in rankings. Markup added on Monday won’t move positions on Friday. That’s not what it’s for.
- Marking up everything you can. Fifteen types on one page won’t help more, it just raises the chance of an error. A little done precisely beats a lot done sloppily.
A free check: ten minutes, three steps
You don’t have to take anyone’s word for it — you can verify for yourself whether your site has structured data and whether it’s accurate.
- Rich Results Test. Search for “Rich Results Test”, paste in your homepage address and the page for your most important service. The tool shows which markup Google found and whether it contains errors. An empty result means your site isn’t telling machines anything yet.
- Search Console. If your site is connected, the enhancements section shows markup across the whole site, including errors that have crept in over time — after a theme change, for example.
- A reality check. Go through what the tools found and compare it against the facts: are the opening hours, phone, address and name correct? No tool will do this for you, because no tool knows your business.
If the test came back empty, you have a cheap and quick opportunity: adding basic markup is one of the few things around a website you can buy once and be done with. If you’re not sure what your results mean — or if, alongside machine readability, you want to check the more important thing, namely whether your site answers the questions customers actually arrive with — that’s exactly what the initial analysis is for: it goes through your site with the eyes of both Google and AI and tells you what to fix first and what not to pay for. The scope of work and indicative prices are in the pricing.
Do keep one order, though: content first, business card second. Structured data describes what’s on the site. If there’s nothing there to convince a customer, machines get a perfectly readable business card for an empty shop.


