Local business schema: the fields that matter
Six fields do the work, two of them are barely discussed, and one field commonly included in example code is a manual action waiting to happen.
Every guide to this lists every available property, which is how sites end up with thirty fields of markup, several of which contradict what is on the page.
Schema is not a ranking lever. It is a machine-readable statement of facts about your business. Its value is entirely in being unambiguous and correct, which means a short accurate block beats a long one every time.
The six that do the work
- 01The type. Use the most specific one that fits: Plumber, Dentist, AutoRepair, RealEstateAgent. LocalBusiness is the fallback when nothing specific applies, not the default.
- 02name, address and telephone. The three that must match your Business Profile and your directories exactly. This is the whole point of the exercise.
- 03openingHoursSpecification. Structured hours, including any special hours. Must agree with your listing.
- 04geo. Latitude and longitude, for a business with premises.
- 05url. Your canonical homepage, or the page the business is described on.
- 06areaServed. For a business that travels, this is where you say where, and it is frequently omitted by exactly the businesses that need it.
That is a complete, useful block. Anything beyond it is optional and should be added because it is true and useful, not because a guide listed it.
The two that are barely discussed and matter most
sameAs
An array of links to your other verified profiles: your Business Profile, Facebook, LinkedIn, your trade association entry, your directory listings.
This is the field that lets anything reading your site cross-check that the business here is the same business as the one over there. In a world where assistants are assembling an answer about you from several sources, an explicit statement of which sources are yours does more work than most of the rest of the block.
A stable @id
A unique identifier for the business entity, typically your domain plus a fragment such as #organization. Use the same one everywhere you reference the business.
It lets other markup on your site point at the business rather than restating it. Your contact page can reference the same entity as your homepage, so the two can never drift apart, which is exactly the failure schema is supposed to prevent.
The field to leave out
aggregateRating. Several of the guides currently ranking for this query include it in their example blocks with no qualification, and it is the one field here that carries real risk.
Google requires a rating in review markup to come from reviews that are actually displayed on that page. Publishing a rating drawn from your Google listing, or a number your developer put in because the field existed, is fabricated review data. It is grounds for a manual action, and a manual action is a much larger problem than the rich result was ever worth.
The rule that makes all of this safe
Never mark up a fact the page does not show and the business cannot evidence.
Every schema problem we find reduces to that one sentence. Hours in markup that differ from the hours on the page. An address in markup that no longer exists. A price that has not been charged in two years. Services listed in markup that the site does not mention.
Markup is a claim you have made in machine-readable form, and a claim contradicting your own page is worse than no claim, because it establishes that your data is unreliable.
What it does not fix
- It will not put you in the map pack. That is your listing, your proximity and your prominence.
- It will not rank a thin page. It describes the page; it does not improve it.
- It will not make you eligible for star ratings unless you display genuine reviews on the page.
- It will not compensate for details that disagree across the web. Fix the details, then mark them up.
Checking it
- 01Run the page through Google's Rich Results Test and the Schema Markup Validator. Both are free and take a minute.
- 02Read the output next to the page. Every claim in the markup should be visible on the page or trivially true.
- 03Compare the hours, address and phone against your Business Profile character by character.
- 04Check your plugin or theme is not generating a second, contradictory block. Two LocalBusiness blocks disagreeing is more common than it should be.
The consistency this is built on is covered in NAP consistency, and the reason unambiguous facts are worth more than they used to be is in how AI search is changing local SEO.
Does local business schema improve rankings?
Can I add star ratings to my search result with schema?
Which schema type should I use?
Do I need schema on every page?
My plugin generates schema automatically. Is that fine?
Want your markup checked against what your site actually says?
The free audit validates your structured data and flags every claim in it that your page or your listing contradicts.
〉 Keep reading
Internal linking for a local site, in plain terms
Links between your own pages are the cheapest ranking work available and the most commonly skipped. What they do, the three rules, and what we found on our own site.
Building location pages that are not thin duplicates
Most location pages are one page with the town name swapped. Here is what has to differ before a second page earns its place, and the test that settles it.