Why Local Businesses need this
Many local business owners spend their evenings on the things that feel urgent: a Google Business Profile that got suspended because someone added the town and a keyword to the name, a review count that stalled, a competitor who keeps showing up in the map pack. Those worries are real. Google says plainly that nobody can pay for a better local ranking, and that prominence builds partly from links and reviews you earn over months. That leaves the website as one of the few places where you control the details. If the business name, address and phone on your site disagree with the profile, or if the page prints no machine-readable markup at all, you are making Google guess. The Structured Data (Schema) Checker fetches a page the way a crawler receives it and lists the JSON-LD and Microdata types it finds, so you can see whether a LocalBusiness type is there. It will not fix a suspension, add reviews or move you up the map. It answers one narrow question quickly: what does this page actually declare about my business?
Local Businesses specific guidance
Which pages to run first
Start with the page that carries your business details, usually the home page or a contact page such as https://www.example-dental.com/contact/. Run one URL at a time, because the checker reads a single page and does not crawl. Before you trust the result, open that page in your browser, press Ctrl+U to view the source, and search for application/ld+json. If your SEO plugin or theme prints markup, you will see it there, and the checker should list the same blocks. If you can only find the markup in the browser inspector but not in the source, a script added it after load, and this checker will not see it. Then repeat for one service page and one location page. A clean result for the home page says nothing about the other templates.
How to read the result
Read the Structured Data Overview first: the Schema types, JSON-LD items and Microdata items cards, then the chips such as JSON-LD: LocalBusiness or JSON-LD: Organization. Scroll to JSON-LD Source and compare the name, address and phone with your Google Business Profile, character for character. A suite number written differently is exactly the kind of drift you can fix in ten minutes. The Rich Result Eligibility table maps LocalBusiness to Local business panel, but that is only a lookup by the exact type name: a subtype such as Dentist or Plumber reads supporting data, even though Google accepts it. It does not check required properties, and it does not tell you whether Google will show anything. If a block reads Invalid JSON-LD block detected, look for a trailing comma, curly quotes copied from a document, or two objects pasted one after another without an array.
What to fix, in which order
Fix in this order. First, repair invalid blocks, since a broken block cannot be read as intended. Second, if the home or contact page returns the message that no JSON-LD or Microdata was found, generate a LocalBusiness block with the Schema Generator, using the same name your profile shows, and add it through your theme or SEO plugin. Third, bring the values into line with your profile, without adding keywords or a town to the business name, since that habit is what gets profiles suspended. Rerun the same URL after each change, then confirm in Google's Rich Results Test. Passing here does not move your map ranking, which depends on relevance, distance and prominence, and it does not show that Google has indexed the page.
Example scenarios
1. Dental practice home page with nothing in the source
- Situation
- Illustrative example: a dental practice rebuilt its site with a page builder last spring. The old theme printed local markup, the new one never did, and nobody checked after launch. The Google Business Profile is complete, with about 60 reviews, but the site itself declares nothing.
- Input
https://www.example-dental.com/- Reading the result
- The checker would typically show the message that no JSON-LD or Microdata structured data was found on this page, with no type chips. Read that as a template gap, not a penalty. Generate a LocalBusiness block, add it to the home page, and rerun the same URL to confirm the chip appears.
2. Plumber with Organization markup only
- Situation
- Illustrative example: a plumbing company installed an SEO plugin and filled in the company name and logo, but never set up the local details. The plugin prints 2 items on the about page, an Organization and a BreadcrumbList, while the contact page was never checked.
- Input
https://www.example-plumbing.com/about/- Reading the result
- You would typically see chips such as JSON-LD: Organization and JSON-LD: BreadcrumbList, plus chips for the types nested inside them, such as ListItem or ImageObject, because every @type in a block is counted. Organization is listed as Knowledge panel / logo in the eligibility table. There is no LocalBusiness chip. The site is not broken, but it never states the address or phone in markup, so add a LocalBusiness block to the contact page.
3. Bakery contact page with a broken block
- Situation
- Illustrative example: a bakery owner copied a JSON-LD snippet from a Word document into a custom HTML widget. The editor turned the straight quotes into curly quotes, so 1 of the 2 blocks on the page no longer parses.
- Input
https://www.example-bakery.com/contact/- Reading the result
- One block would appear under JSON-LD Source, and the other would show Invalid JSON-LD block detected. The JSON-LD items card would count only the types inside the valid block. Retype the quotes as plain straight quotes in a text editor, paste the snippet again, and rerun until both blocks print.
Common mistakes
- Checking only the home page. Service and location pages often use different templates, so run one of each before you decide the site is covered.
- Putting keywords or the town in the markup name. Copying a keyword-heavy business name into schema repeats the habit that can get a Google Business Profile suspended. Use the name exactly as it appears on your signage and profile.
- Treating a LocalBusiness chip as proof of correctness. The chip only shows the type is present. Open JSON-LD Source and compare the address and phone with your profile, because a wrong value is worse than a missing one.
- Relying on a tag manager to inject the markup. The checker reads the HTML as served and does not run scripts, so injected markup will not appear. Print it in the page source through your theme or SEO plugin instead.
- Expecting markup to fix rankings or reviews. Local results depend on relevance, distance and prominence, and prominence comes from links and reviews you earn. Schema only makes your details easier to read.
Frequently asked questions
Does LocalBusiness schema help me rank in Google Maps?
No tool or markup can buy a better position. Google states that local results rest mainly on relevance, distance and prominence, and that prominence draws partly on links and reviews. Structured data on your site helps you state your business details clearly, but it is not a ranking lever you can pull. Use the checker to confirm the markup exists and matches your profile, then spend the real effort on a complete profile, the right primary category and fresh reviews.
How do I check if my website has local business schema?
Paste the exact page address, such as your home page or contact page, into the checker and run it. Look at the chips under the overview for a LocalBusiness type, then read the JSON-LD Source below to compare name, address and phone with your profile. If the message says no JSON-LD or Microdata was found, the page source has none that could be read; a page whose only block is broken JSON shows it too, so search the source for ld+json. Test a second page type too, because markup is often added to the home page only.
My Google Business Profile got suspended. Will schema markup fix it?
No. A suspension is a decision about your profile, usually tied to guidelines such as a business name stuffed with keywords or locations, or a virtual office or P.O. box used as the address. Markup on your website does not change that review. What the checker can do is show whether your site's declared name and address match what your profile says, which removes one inconsistency while you follow Google's appeal steps.
What business name should I use in my local schema?
Use the real name as it appears on your signage and on your profile, with no tagline, service list or town added. Google's profile guidelines warn that extra information in the name can lead to suspension, and copying a keyword-heavy name into your markup repeats the problem on your own site. In the JSON-LD Source, check that the name value is identical to your profile, including punctuation such as an ampersand.
How many pages do I need to check, and how often?
Run one page for each template that matters: the home page, the contact or location page, and a representative service page. The checker reads one URL per run and does not crawl, so a clean home page tells you nothing about the rest. Rerun the affected URL after any theme update, plugin change or site redesign, since those are the moments when markup quietly disappears or breaks.
Reference: Google's guidelines for representing your business explain that keywords or location details added to the business name, and virtual offices or P.O. boxes, can lead to suspension.