How to Add Schema Markup to a Small Business Website
Your shop has good reviews, clear opening hours and a phone number on every page, yet Google still shows your listing as a plain blue link while a competitor gets a star rating and hours right in the results.

Your shop has good reviews, clear opening hours and a phone number on every page, yet Google still shows your listing as a plain blue link while a competitor gets a star rating and hours right in the results. The difference is often schema markup, a small block of structured data that tells search engines exactly what your page is about.
The good news is that a small business website needs very little of it. Adding schema markup correctly takes about an hour, costs nothing, and does not require touching your theme files if you use the right tools.
What schema markup actually does
Search engines read your page like a stranger skimming a flyer. They can guess that "Mon to Fri 9 to 5" is your opening hours, but they are not sure. Schema markup removes the guessing by labelling each fact: this is the business name, this is the street address, this is the price, this is the rating.
The standard format today is JSON-LD, a short script placed in the page head or body that visitors never see. Google, Bing and other engines all read it. Older formats such as microdata still work, but they mix labels into your visible HTML and break easily when you edit content.
What you get in return is eligibility for rich results: star ratings, price ranges, FAQ dropdowns, event dates and business details next to your listing. Eligibility is the key word, and we will come back to it.
Which schema markup types a small business needs
There are hundreds of schema types. A typical local shop, cafe or service business needs four at most.
| Type | Where it goes | Key properties |
|---|---|---|
| LocalBusiness (or a subtype such as Restaurant, Dentist, AutoRepair) | Home page and contact page | name, address, telephone, openingHours, geo, priceRange |
| Organization | Home page | name, logo, url, sameAs for your social profiles |
| Product | Each product page | name, image, offers with price and availability, aggregateRating |
| BreadcrumbList | Every inner page | The path from home to the current page |
Always pick the most specific subtype you can. "Bakery" tells search engines more than "LocalBusiness", and it costs you nothing extra.
How to add schema markup in WordPress
If your site runs on WordPress, you probably already have half of this in place. Yoast SEO, Rank Math and The SEO Framework all output Organization and BreadcrumbList data by default. The gaps are usually local business details and product data.
- Check what you already output. Run your home page through the Rich Results Test in Google Search Console tools. Note which types it detects.
- Fill in the business settings. In Rank Math, go to Titles and Meta, then Local SEO. In Yoast, the Local SEO add-on handles this. Enter your exact name, address and phone number, matching your Google Business Profile character for character.
- Set opening hours per day. Use 24 hour format and include special closing days if the plugin supports them.
- Turn on product schema. WooCommerce outputs basic Product data automatically. Make sure every product has a price, stock status and at least one image, or the markup will be incomplete.
- Retest and fix warnings. Errors block rich results. Warnings for optional fields such as "brand" are worth fixing but not urgent.
Keeping your details consistent matters as much as the markup itself. If you have not linked your listing yet, our guide to connecting Google Business Profile to your website walks through it.
Adding schema markup without a plugin
On a static site or a hosted builder, you can paste a JSON-LD block directly. Most builders, including Squarespace and Wix, have a "custom code" or "header injection" field for this.
A minimal LocalBusiness block contains an @context line pointing to the Schema vocabulary, an @type such as "Bakery", then name, address as a PostalAddress with streetAddress, addressLocality, postalCode and addressCountry, a telephone in international format, and openingHoursSpecification for each day. That is roughly 25 lines.
Two rules keep hand-written markup safe. First, every value must match what visitors can see on the page. Second, validate after every edit, because a single missing comma makes the whole block invalid and search engines silently ignore it.
Why more schema is not better
A lot of SEO advice says to mark up everything: every paragraph as an Article, every image as an ImageObject, a dozen FAQ items on every page. I disagree, and Google's own behaviour backs this up.
Since 2023, Google shows FAQ rich results only for well known government and health sites. HowTo rich results were removed entirely. Marking up a product page with FAQ schema in the hope of extra space will not produce a dropdown anymore, and it adds weight to every page load.
Worse, markup that describes content not visible on the page counts as spammy structured data. Fake review stars, ratings copied from another platform or prices that do not match the page can earn a manual action, which removes rich results from your entire site. Recovering from that takes weeks.
Mark up what is true, visible and useful. For most small businesses, that means the four types above and nothing else.
How to tell if it is working
Schema markup is not an instant ranking boost. It does not move you from page three to page one. What it changes is how your listing looks once you rank, and that affects click rate.
- Search Console Enhancements report. After two to four weeks, you should see sections for Products, Breadcrumbs or Merchant listings with counts of valid items.
- Click through rate. Compare the four weeks before and after in the Performance report. A move from 3 percent to 4 percent on a page with 2,000 impressions is 20 extra visits a month.
- Your own search. Search your business name in a private browser window. Hours, address and rating appearing in the result means the data is being read.
Rich results also work best when the text around them is strong. A star rating next to a vague snippet still loses clicks, so pair your markup with meta descriptions that earn clicks.
More small fixes like this live in our web tips section.
Frequently asked questions
Does schema markup improve rankings?
Not directly. Google has said structured data is not a ranking factor on its own. It helps search engines understand your page and can earn rich results, which often raises click rate, and more clicks on a page you already rank for is real traffic.
How long does schema markup take to show in Google?
Google needs to recrawl the page first, which can take a few days to several weeks. You can speed it up by requesting indexing in Search Console after you add the markup. Even then, rich results are never guaranteed.
Can I use more than one schema plugin at once?
Avoid it. Two plugins often output duplicate or conflicting Organization and Product blocks, which confuses search engines and creates errors. Pick one SEO plugin as the single source of structured data and turn off schema output in any other plugin.
More in Web Tips
Web Tips
How to Set Up a Business Email on Your Own Domain
Customers notice when a bakery with a polished website still asks them to write to sweetcrumbs1987 at a free webmail address.
Web Tips
How to Connect Google Business Profile to Your Website
A local shop can have a tidy website and still be invisible when someone nearby searches for "game store near me" or "bike...
Web Tips
Google Title Rewrite and How to Get Your Own Title Back
You wrote a careful title tag for your guide page, and Google is showing something else entirely, often your H1, a chunk of...