Skip to main content
Technical SEO
5 min readPublished on May 22, 2026Updated on September 09, 2026

Schema.org for Local Businesses: Why Generic Markup Does Nothing

Simon Heistermann

Simon Heistermann

Owner

This article was written with AI assistance and editorially reviewed.

Most local websites we look at have one of two problems: no schema markup at all, or a plugin-generated skeleton that validates cleanly and says nothing meaningful. A LocalBusiness block with no real geo-coordinates and the most generic industry type available is not structured data - it is an empty form that happens to be shipped as JSON.

In short

Five schema.org types decide whether an AI can treat your business as a clear, citable source: Organization, LocalBusiness, Service, FAQPage and BreadcrumbList. What matters is not that the blocks exist, but that they are linked by unique IDs and carry genuine data.

Why generic schema markup does nothing

A validator checks syntax, not substance. A LocalBusiness block typed only as "LocalBusiness" instead of a matching subtype like "Electrician" or "PhysicalTherapy", carrying no real geo-coordinates, with opening hours that have not been updated since the plugin was installed, passes every technical test - and still says almost nothing usable. AI search systems such as ChatGPT, Perplexity or Google AI Overviews prefer to pull answers from structured data, because it hands them facts instead of forcing them to infer meaning from prose. Markup with no real substance simply gets skipped in that selection, even when it is formally error-free.

What schema.org technically does

Schema.org is a shared vocabulary websites use to mark up their content as structured data - usually as a JSON-LD block in the page's <head>, separate from the visible HTML. Search engines and AI crawlers read this block in addition to the normal text and get unambiguous, machine-readable facts instead of sentences that need interpreting. The difference is between "we have been serving customers for many years" in body copy and a field reading foundingDate: 2019-03-01 in markup - similarly informative to a human, but a fundamental difference to a machine between a guess and a fact.

The five types that matter for local businesses

TypeRoleKey required fields
OrganizationCore identity of the business, usually on the homepagename, url, logo, sameAs (social profiles)
LocalBusiness (subtype)Location and reachability, with a matching industry subtype instead of a generic typeaddress, geo, openingHours, telephone
ServiceOne core service, referencing its providername, provider, areaServed
FAQPageQuestion-and-answer pairs that can be lifted directly into AI answersat least three genuine questions with a complete answer
BreadcrumbListThe page's position within the site hierarchyitemListElement with position and URL per level

The most common mistake with LocalBusiness is the type itself: schema.org offers a more specific subtype than the generic "LocalBusiness" for most industries - "Electrician", "RealEstateAgent" or "ProfessionalService" among them. The specific type answers "what does this business actually do" for an AI instantly, without it having to read the rest of the page to find out.

A linked graph, not five isolated blocks

Five separate, unconnected JSON-LD blocks are worth less than five blocks tied together with unique @id values. Schema.org allows exactly that through a @graph:

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://example.com/#organization",
      "name": "Example Ltd",
      "url": "https://example.com"
    },
    {
      "@type": "ProfessionalService",
      "@id": "https://example.com/#localbusiness",
      "name": "Example Ltd",
      "parentOrganization": { "@id": "https://example.com/#organization" },
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "1 Example Street",
        "addressLocality": "Example City",
        "postalCode": "12345",
        "addressCountry": "DE"
      }
    }
  ]
}

The @id values turn two separate objects into one connected graph: a crawler recognises that the ProfessionalService entity belongs to the same organisation without having to match names on its own. The same principle extends to Service, FAQ and BreadcrumbList markup, each block referencing the central Organization or LocalBusiness entity by @id.

Testing before it goes live

Two tools complement each other, neither replaces the other. Schema.org's own Schema Markup Validator checks whether the syntax meets the standard, regardless of whether Google ever turns it into a visible result. Google's Rich Results Test additionally shows which of the supported rich result types Google actually recognises from the markup. What matters: markup must reflect the visible page content, not embellish or exaggerate it. Google treats a deliberate mismatch between markup and visible content as a violation of its structured data guidelines, which in the worst case disables rich results for the affected page entirely.

Concrete steps for the next 90 days

  • Days 1-30: check existing schema with the Rich Results Test, replace generic LocalBusiness types with the matching subtype
  • Days 31-60: connect Organization and LocalBusiness into one graph via @id, add Service markup for each core service
  • Days 61-90: introduce FAQPage and BreadcrumbList markup on the most important pages, re-validate every type

Conclusion

Schema markup is not a box a plugin ticks for you - it is a deliberate description of who you are and what you offer, in a language machines understand without interpretation. Five linked, genuinely substantive types are worth more than twenty isolated blocks from a default template. What role a clean crawler allowance plays before anyone even reads your markup is covered in our article on robots.txt and AI crawlers. How structured data fits into a broader GEO strategy is covered in our article on GEO instead of SEO. What a technical SEO audit including a schema review costs is covered in our article on SEO costs. For a no-obligation review of your current markup, feel free to get in touch.

Want to know whether your schema markup actually says anything?

Get in touch
Technical SEO

WordPress or Custom Build? Run the Five-Year Numbers

WordPress powers a large share of the web, and for good reasons. What it actually costs to run, where it wins outright, and when a custom build makes sense.

September 09, 20265 min read
Technical SEO

Websites for IT Service Providers: Your Own Site Is the Work Sample

An IT provider with a slow, insecure website refutes its own pitch. What an IT manager checks in the first few minutes, and what follows from it.

September 09, 20266 min read
Technical SEO

Website Maintenance in 2026: What It Costs and What Must Be In It

What website maintenance actually covers, what the market charges for it, and how to spot an empty maintenance contract before you sign it.

September 09, 20267 min read
Technical SEO

Website Hosting for Businesses: What Actually Matters in 2026

Shared hosting, managed hosting or a platform: what the difference means for load time and resilience - and who actually owns the domain at the end.

September 09, 20267 min read
Technical SEO

SEO Costs 2026: What Visibility Really Costs

What SEO realistically costs small and mid-sized businesses: one-off optimisation versus ongoing management, and what should be included in the price.

September 09, 20266 min read
Technical SEO

A GDPR Check for Your Website: The Gaps That Are Almost Always There

Fonts from someone else's server, maps without consent, analytics before agreement: the typical gaps on SME websites, as a list you can actually check.

September 09, 20266 min read

Frequently asked questions

Simon Heistermann

Simon Heistermann

Owner

Heistermann Solutions is the web studio run by Simon Heistermann. We build custom websites for small and medium-sized businesses that want to achieve more online.

Every article grows out of day-to-day project work and is reviewed editorially before publication.

Get it for free

Enter your email address. You'll immediately receive a confirmation link - after clicking it the checklist is available right away.

Let's talk about your project

Free introductory call