‹ Blog

LocalBusiness Schema: The Fields That Earn AI Recognition

A field-by-field tour of the LocalBusiness markup that helps AI engines recognise you as a real, specific entity — including the three properties almost everyone leaves out.

There's a gap between what Google requires in a LocalBusiness block and what actually makes you legible to an AI engine. Google requires exactly two properties for a valid LocalBusiness: name and a complete address. That clears the technical bar and does almost nothing for recognition. The fields that earn you the Recognize layer of the REAL Method are a longer, more interesting list. Here they are, in order of how much they pull their weight.

1. The right @type — use a subtype

This is the field people get wrong most often, and it's foundational. Don't use generic LocalBusiness if a subtype fits, and never use Organization for a business with a physical service area. Google's own guidance is to use the most specific applicable type: Dentist, Plumber, Electrician, RoofingContractor, Restaurant, DaySpa, Attorney. The subtype tells an engine what category to consider you for. Organization says "some company exists" — useless for "best electrician near me."

2. name

Exactly as it appears on your signage and Google Business Profile. Consistency is the whole point: the engine is trying to match this string to the same business across your reviews, directories, and map listing. "Westside Plumbing Co." here and "Westside Plumbers Calgary" on Google is a recognition problem.

3. address (as PostalAddress)

Required, and it must be a structured PostalAddress object — streetAddress, addressLocality, addressRegion, postalCode, addressCountry as separate fields, not one text blob. This is the anchor for every "near me" judgment.

4. telephone

A clean, internationally-formatted number (+1-403-555-0142). Critically, this is separate from your click-to-call button: the button is for humans, the field is for the crawler. Plenty of sites have the button and no telephone in the schema, which means the machine-readable record of how to reach you is simply missing.

5. areaServed

The single most-skipped high-value field. List the cities, regions, or postal areas you actually serve. This is literally how you tell an engine "I work in these places." A contractor who serves five suburbs but lists none of them in areaServed is invisible for four of those five searches. Note: areaServed isn't on Google's rich-result list, but it's exactly the kind of property that helps an AI engine place you geographically.

6. sameAs

The entity-confirmation field. sameAs is an array of URLs pointing to your other authoritative profiles — Google Business Profile, Facebook, Instagram, LinkedIn, and, if you have one, your Wikidata entry. It tells the engine "all of these describe the same real business," which is how disambiguation works. A business with rich, consistent sameAs links is far easier for a model to trust than an island with one homepage URL.

7. openingHoursSpecification

Per-day open and close times, expressed as structured OpeningHoursSpecification objects. "Open Saturday" is the kind of fact an engine will happily repeat in an answer to "who's open this weekend" — but only if it's machine-readable. Closed days matter too.

8. priceRange

One character — $, $$, $$$, or $$$$ — and routinely skipped. It's a real schema field that helps engines slot you into comparison and "affordable / high-end" style queries. Three seconds to add.

9. geo (GeoCoordinates)

Latitude and longitude as a GeoCoordinates object. It removes any ambiguity about your physical location, which matters when there are similarly-named businesses or your address sits near a municipal boundary.

10. aggregateRating and review — with a warning

Your rating and reviews are powerful evidence signals, and they're valid schema.org properties. But know the rule: since September 2019, Google does not display review star snippets for LocalBusiness/Organization when the business controls the reviews on its own site — so-called "self-serving" reviews. It's a display suppression, not a penalty. The reviews still matter as evidence; just don't expect stars in your Google result from marking up your own testimonials. The durable version of review evidence lives on Google, Yelp, and industry platforms, not in self-hosted markup.

Putting it together

A complete block isn't long — maybe forty lines — and the difference between a two-field stub and a full one is the difference between "a company exists" and "this specific dentist, here, open these hours, in this price range, serving these neighbourhoods, confirmed by these profiles." The second one is recognisable. The first isn't.

A few rules that save headaches:

If hand-writing JSON isn't your thing, the Schema Generator builds a clean, complete block from a short form — and the GEO Grader scores what you already have. Questions on a tricky setup like multiple locations? hello@rankinglocal.ai reaches me directly.

Frequently asked questions

Which LocalBusiness schema fields actually matter for AI?

Google requires only name and address for validity, but the fields that make you legible to AI engines are: a specific @type subtype (Dentist, Plumber, not generic Organization), telephone, areaServed, sameAs, openingHoursSpecification, priceRange, geo coordinates, and image — plus aggregateRating where appropriate. The three most commonly skipped high-value fields are areaServed (which cities you serve), sameAs (links confirming your other profiles), and priceRange. Score yours at /tools/geo-grader/.

Should I add review stars to my own LocalBusiness schema?

You can mark up aggregateRating and review — they're valid properties and useful as evidence — but since September 2019 Google won't show review star snippets for LocalBusiness or Organization when the business controls the reviews on its own site. It's a display rule, not a penalty. The reviews still count as evidence for AI; just rely on Google, Yelp, and industry platforms for durable review signals rather than expecting stars from self-hosted markup.

Related reading