Structured Data: Does a Small Site Need It?
6 min read
You have seen the search results that carry star ratings, a price, and a few questions you can expand underneath. Most of that extra detail comes from a block of JSON-LD written into the page source, invisible to visitors and readable by machines. Small businesses ask whether this is worth doing. It is, provided you know what it can and cannot give you. It helps search engines and AI engines understand what the page is about, which cuts down on misreadings. On ranking, Google is blunt: structured data is not a ranking factor.
1. What structured data is: a self-introduction written for machines
It states what the page is about as a set of fields a machine can read, tucked into the top of the document. Visitors never see it and it changes nothing about the layout. On an article page, for example, a person sees a headline and body text. The markup states the article title, the author, the publication date and the last updated date, which tells a machine directly who wrote it, when it went out, and whether it has been revised since.
The specification comes from schema.org, and Google, Bing and most AI engines read the same one, so the work is done once and serves all of them. Write it as JSON-LD, meaning one self-contained block kept entirely separate from the layout, so a redesign cannot disturb it. The other two syntaxes mix attributes into your HTML tags, which breaks easily during maintenance and is not worth choosing for a new site.
A page can carry several blocks, and several types can be combined into one block. Only one principle matters: the markup describes the content of that page, so every page's markup should be different. One shared block repeated site-wide says nothing at all.
2. Why it helps: how results look, and whether AI engines recognise you
There are two uses. Search engines turn it into rich results: star ratings and prices on products, the expand arrows on FAQs, the breadcrumb path under the title. None of those appearances are possible without the matching markup. AI engines use it to work out who you are, whether the passage can be quoted, and whether the author and date are trustworthy.
For GEO, two types do most of the work. Organization ties your brand name, your URL and your contact details together, which is the basic step. FAQPage has the format AI engines lift most readily, because the question and the answer are already paired for the machine and it does not have to cut them out of a wall of prose itself.
3. Start with these: Organization or LocalBusiness, FAQPage, Article
schema.org has hundreds of types and a small business needs almost none of them. Put the few below in the right places and you have most of the benefit. The test is simple: use the type that matches what the page is about, and do not add markup for the sake of having more.
| Type | Which page | Fields to get right |
|---|---|---|
| Organization | Home page, for a purely online service | name, url, logo, contactPoint, plus sameAs to link social and external profiles |
| LocalBusiness | Home page, when there is a physical shop or you only serve certain areas | The Organization fields plus address, telephone, openingHours and areaServed |
| FAQPage | Pages that genuinely have a question and answer section | One entry per question. The questions must be visible on the page; markup-only breaks Google's rules |
| Article or BlogPosting | Blog and technical article pages | author as a real person or the organisation name, and dateModified updated every time the content changes |
If you have a shop or serve only certain areas, LocalBusiness deserves priority, because it feeds maps and local search at the same time. For a purely online service, Organization is enough. Inventing an address no customer will ever visit serves no purpose.
4. Then add BreadcrumbList and Product or Offer
BreadcrumbList states where the page sits in the site structure, for example home, then services, then SEO. Search results show that path under the title in place of a long and unreadable URL. Number the positions from 1, and keep the order identical to the breadcrumb trail visitors can see.
Product and Offer belong on product or service pages, stating the name, price, currency and availability. Set the currency to whatever you actually charge in, TWD for a site pricing in New Taiwan dollars, and do not leave availability out. If a required field is missing, Google skips the whole block and the work counts for nothing.
Service businesses tend to get stuck on price. If you quote "from" a figure, use the price range form and state the lower bound rather than inventing a fixed price. Service pages can also use the Service type with a service area and a quote field, which is more accurate than forcing them into Product. As for ratings, only mark up scores your site genuinely displays. With no review system in place, leave the field out entirely.
5. How to add it: a plugin on WordPress, the template on a custom site
The WordPress SEO plugins (Yoast, Rank Math, SEOPress) all include a generator. Switch it on and it outputs Organization, Article and breadcrumb markup automatically, and most sites never need to write any by hand.
On a custom-built site, put the block straight into the page template. Anything that varies, the title, the date, the URL, should be filled from the data source rather than hard-coded into the template. Over time that costs far less to maintain than pasting markup into each page.
There is also a question of placement. The safest place for the block is at the top level of the document. If it is added by code after the page loads, a crawler may not be around long enough to read it. To check, use the browser's "view page source" and confirm the markup is really in there. Developer tools show you the result after the code has run, which can differ from what the machine received.
6. How to verify it: three tools, each answering something different
Always verify after you publish, and use all three, because they check different things. Getting three different answers is normal rather than a sign that one of them is broken.
What each tool answers
- Rich Results Test: does Google accept it, and will it give you the appearance. It tests a live URL, and it also takes pasted source code so you can check a page before it goes live.
- Schema.org Validator: is the syntax and vocabulary correct. That includes types Google does not support but which are valid, and this is the only place problems with those show up.
- The Search Console rich results report: what happened after real crawling. Come back a week or two after launch for the list of invalid items and warnings, and remember to click validate once the errors are fixed.
Errors have to be fixed, because they mean the whole block was discarded. Warnings are recommended fields: filling them in usually makes the result more complete, but leaving them causes no harm, so they can wait.
7. Common mistakes, and what to expect
The worst mistake is markup that does not match what a visitor sees. Five questions declared with none on the page, or a 4.8 star rating on a site with no review feature at all. The second most common is copying an example off the internet without changing the URL and the name, so the whole block points at somebody else's site and a machine reads it as an endorsement of a competitor.
Check each of these before you publish
- Every field should point to something visible on the page. If you cannot find it on the page, delete the field.
- Go through a copied template field by field. URL, name, logo, phone number: check each one has been replaced with yours.
- Keep dateModified in step with the content. A date stuck two years in the past counts against you with both search and AI engines.
- Do not mark up what you wish you had. No reviews means no rating field. No events means no Event.
Expectations need setting too. Even with the markup correct, Google still decides for itself whether to show a rich result, and a page having stars this week and none the next is routine. Treat it as a way to reduce how often machines misread you. Ranking is a separate matter, driven by content quality, technical health and links from elsewhere.
Structured data costs very little to put in, and once it is right it rarely needs touching again beyond keeping dates and prices in step with the content. It will not push your ranking up, but it will stop search engines and AI engines guessing. For a small business, covering Organization on the home page, BlogPosting on articles and FAQPage on the questions page already captures most of the benefit.
Common questions
- Will adding structured data improve my ranking?
- Google's own documentation does not list it as a ranking factor. What it says is that valid markup makes a page eligible for special appearance features. Its job is to help search engines understand the page and decide whether to give you that appearance. Some sites do see click rates rise afterwards, and that comes from occupying more space in the results rather than from any change in position.
- I have an SEO plugin on WordPress. Do I still need to write JSON-LD myself?
- Usually not. Yoast, Rank Math and similar plugins already output Organization, Article and BreadcrumbList. Hand-written markup is for types they do not cover, such as a specific Service, a Course, or a custom Offer with a price range.
- My page validates, so why do the FAQ expanders never appear in search results?
- Validating only means the markup is correct. Whether it displays is Google's decision, and in recent years Google has cut back FAQ rich results sharply, so most ordinary business sites no longer see those expand arrows. The markup is still worth keeping, because AI engines and search systems read the questions and answers regardless.