Free Schema Checker: No Signup
Local Business Schema Checker
Paste a page URL or your JSON-LD code and this checker reads every LocalBusiness block on it. It flags missing name, address, phone and URL, broken opening hours and a wrong @type. In URL mode it also compares the phone, address and name in your schema with the text people see on the page. Every problem comes with a fix and a code sample you can copy.
Our server downloads the page once, reads every JSON-LD block and the visible text, and compares the NAP. Schema added by JavaScript after load is not visible to this check.
This is an independent checker based on the schema.org vocabulary and Google's published LocalBusiness guidelines. It is not Google's Rich Results Test and cannot tell you whether Google will show a rich result.
Was this tool helpful?
Rate it in one click. No sign-up, one rating per person.
How to Check Your Local Business Schema
Four steps. Most checks take a few seconds.
Pick a mode
Use URL to check a live page. Use Paste code when the page is not live yet or sits behind a login.
Run the check
The tool pulls every JSON-LD script on the page, including items inside @graph, and finds the business.
Read the list
Red items break the markup. Amber items are fields Google recommends. Each one shows the fix.
Copy or rebuild
Copy the corrected code, or send the data to the schema builder and finish it there.
What the Checker Looks At
Every LocalBusiness entity on the page gets its own report.
JSON syntax
One stray comma kills the whole block. For pasted code you get the line and column.
The @type
It must be LocalBusiness or one of its 130 subtypes from the schema.org vocabulary, such as Plumber or Dentist. Typos like "LocalBuisness" get a suggestion.
Name and address
Google requires both. The address should be a PostalAddress with street, city, state, ZIP and country.
Phone and URL
Google lists them as recommended. For a local business we treat them as must haves, since they are half of your NAP.
Geo
Latitude and longitude inside GeoCoordinates. Google asks for at least 5 decimal places.
Opening hours
Day names and times are checked one by one.
Area served and sameAs
Area served matters most for a service area business. sameAs links your profiles together.
Price, image, logo
Short fields, easy wins.
Required vs Recommended Fields
| Field | Google says | This tool treats it as |
|---|---|---|
| name | Required | Error if missing |
| address | Required | Error if missing |
| telephone | Recommended | Error if missing (NAP) |
| url | Recommended | Error if missing (NAP) |
| geo | Recommended | Warning |
| openingHoursSpecification | Recommended | Warning |
| priceRange | Recommended | Warning |
| areaServed, sameAs, image, logo | Not in Google's list | Tip |
We are stricter than Google on purpose.
A listing with no phone in its schema is a weak NAP signal, even if Google will still parse it. The full list of fields is in Google's LocalBusiness documentation.
Opening Hours Format That Validates
Most broken markup I see on contractor sites comes from hours. A plugin writes "9am" or "Mon to Fri" and the parser throws it away. Use 24 hour time like 09:00 or 17:30. Use full English day names or the schema.org day URLs. Group days that share hours into one object.
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "08:00",
"closes": "17:30"
},
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": "Saturday",
"opens": "09:00",
"closes": "13:00"
}
]βΉοΈ For a business open around the clock, set opens to 00:00 and closes to 23:59. For a day you are closed, Google suggests opens and closes both at 00:00, or you can leave the day out.
Schema NAP vs Page NAP
Your schema is a claim. The page is the proof. If a roofing company in Tulsa moves offices and updates the footer but forgets the plugin settings, the markup still shows the old street. Google now sees two addresses for one business.
What gets compared
In URL mode the checker takes the name, phone and address from your schema and looks for them in the visible text of the page, tel: links included. Phone numbers are matched on digits, so (918) 555 0142 and +1 918 555 0142 count as the same. Address is checked by street number, street name, city and ZIP.
A miss is a prompt to look
A miss does not always mean an error. Some sites keep the address only on the contact page. It does mean you should look, and check the same details against your Google Business Profile.
Planning pages for each town you serve? The service area page planner helps you map them before you add schema to each one.
This Is Not Google's Rich Results Test
This tool checks your markup against the schema.org vocabulary and Google's published LocalBusiness guidelines. It is not Google and it cannot tell you what Google will show. It reads the HTML your server sends, so schema added later by JavaScript (some tag manager setups) will not be seen.
Run the Rich Results Test or the Schema Markup Validator when you need Google's own answer. Use this one to find what is missing and fix it fast.
Before you worry about markup, make sure the page can be indexed at all. Our indexability checker tests that. And once the schema is clean, the Google review link generator helps you grow the reviews that sit behind it.
Frequently Asked Questions
Is this local schema checker free?
Yes. There is no signup and no paywall. Paste code mode runs in your browser, so the code never leaves your device. URL mode sends the address to our server, which downloads the page once and pulls out the JSON-LD and visible text. We do not store the page. A fair use limit stops abuse of the URL fetcher.
Which fields does LocalBusiness schema need?
Google requires only name and address. It recommends telephone, url, geo, openingHoursSpecification and priceRange, plus menu and servesCuisine for restaurants. For local SEO I add phone and URL to the must have list, because they complete your NAP. areaServed, sameAs, image and logo are optional but worth the two minutes they take.
Is LocalBusiness schema a ranking factor?
Google has not said it is a direct ranking factor, and I would not sell it as one. What it does is state your business details in a format machines read without guessing. That helps Google match your site to your Business Profile and can feed rich results. Clean, consistent NAP across your site, schema and profile is the real goal.
Can I use Organization instead of LocalBusiness?
You can, but you lose the local fields. Organization has no openingHoursSpecification or priceRange. If customers visit you, or you send crews to them, use LocalBusiness or a closer subtype like Electrician or AutoRepair. Big brands often use both: Organization for the company and a LocalBusiness for each branch, linked with parentOrganization.
Why does the checker find no schema on my page?
The usual reason is that the markup is added by JavaScript after the page loads, often through Google Tag Manager. This tool reads the HTML the server sends and does not run scripts. Open your page source and search for application/ld+json. If it is not there, paste the code from your plugin or tag into the Paste code tab instead.
How should I handle schema for multiple locations?
Give each location its own page and its own LocalBusiness block with that branch's name, address, phone and hours. Do not stack every branch on the home page. Use a unique @id per location, such as the page URL plus #localbusiness. Our service area page planner can help you map out those location pages first.
Does my schema need to match my Google Business Profile?
It should. Use the same business name, phone and address you use on your profile, written the same way. Small format changes like St versus Street are fine. A different phone number, an old suite number or a keyword stuffed name are not. Mismatches send mixed signals, and keyword stuffing in the name breaks Google's profile guidelines.
Is this the same as Google's Rich Results Test?
No. This is an independent checker built on the schema.org vocabulary and Google's published LocalBusiness docs. It goes deeper on local fields and compares your schema with your page text, which Google's test does not do. It cannot tell you if Google will show a rich result. For that final answer, run Google's own test as well.
Find the Gaps, Then Fix Them
Check the page, copy the corrected code, or finish the job in the free schema markup builder.
Related guides
Step-by-step guides from the LocalSEOFlow team.
Geotagging Photos for Local SEO and Google Business Profile: What 43 Photos Taught Me
Does geotagging photos help local SEO or your Google Business Profile? An honest look at what Google keeps, accurate pins and mistakes, so you work smarter.
How to Index Your Website on Google
Search Console, sitemaps, URL Inspection, fixing blockers and free tools to get a site indexed.
Free Tool Workflow
Next Step: Free Tools in This Workflow
Continue your workflow with these related free tools. No login required.
- BuildAdd LocalBusiness schema to your pages
Generate JSON-LD for your business, services and service area.
- BuildPlan a page for every service and city
Get slugs, title tags, H1s and an internal link map for your city pages.
- ScanCheck pages for noindex and robots.txt blocks
Find what stops a URL from being indexed before you submit it.
- BuildMake a Google review link and QR code
Turn happy customers into reviews with a short link and printable QR card.
π All tools are 100% free Β· No login required Β· Files never leave your device