Cobra Developers
Blog, SEO

Schema markup for local businesses, explained without jargon

The short answer

Schema markup is a block of code on a web page that states facts about the business in a format machines can read without guessing: its name, address, phone, hours, services, and what kind of page this is. For a local business the useful types are LocalBusiness, FAQPage, Article, and BreadcrumbList, written as JSON-LD.

Part of our work for Tamou Law Group, a Phoenix criminal defense firm, was structured data: a description of the firm written for machines, so that search engines and AI answer tools read the same facts about the firm that a person reads on the page.

It is unglamorous work and it is often oversold. Schema markup will not rescue a thin page. What it does is remove guesswork. This is the plain version of what it is and which parts are worth your time.

What is schema markup?

Schema markup is code added to a web page that labels its facts in a shared vocabulary, so software can read them reliably. A person sees a phone number in the footer. Markup tells a machine: this is the telephone number of this business, which is a plumber, at this address.

The vocabulary is maintained at schema.org and is understood by the major search engines. It has hundreds of types, and a small business needs a handful. The markup is invisible to visitors. It sits in the page's code and changes nothing about how the page looks.

Which schema types matter for a local business?

Four schema types matter for most local businesses: LocalBusiness for who and where you are, FAQPage for question and answer sections, Article for blog posts, and BreadcrumbList for where a page sits in the site. Everything else is optional until those four are correct.

TypeGoes onWhat it states
LocalBusinessHomepage, contact, location pagesName, address, phone, hours, area served
FAQPagePages with a real FAQ sectionEach question and its answer
ArticleBlog posts and guidesHeadline, author, dates
BreadcrumbListEvery page below the homepageThe path from home to this page

LocalBusiness has more specific subtypes, such as Electrician, Attorney, or AutoRepair. Use the most specific one that fits. The full list is on the LocalBusiness page at schema.org.

What does JSON-LD look like?

JSON-LD is the format Google recommends for structured data: a script block in the page that lists facts as name and value pairs. It is kept separate from the visible HTML, which makes it easy to generate and hard to break when the design changes. A minimal LocalBusiness example follows.

{
  "@context": "https://schema.org",
  "@type": "Electrician",
  "name": "Example Electric",
  "url": "https://www.example.com/",
  "telephone": "+1-555-555-0100",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Peoria",
    "addressRegion": "AZ",
    "postalCode": "85345"
  },
  "areaServed": ["Peoria", "Glendale", "Surprise"],
  "openingHours": "Mo-Fr 07:00-17:00"
}

On the page, that block sits inside a script tag with the type application/ld+json. The business above is made up. Yours should use the exact name, phone, and hours shown on your site and on your business profile.

Does schema markup improve rankings?

Schema markup does not raise a page's ranking by itself, and anyone promising that is overselling it. It helps search engines understand the page and makes the page eligible for certain enhanced results. Whether those appear is the search engine's decision, and it is never guaranteed.

Two honest cautions. Google decides which enhanced results to show and has narrowed some of them over time, FAQ results included, so do not add markup expecting a particular display. And markup is only as good as the page under it. We wrote the Tamou Law Group structured data with both search engines and AI answers in mind, but the reason those systems can describe the firm correctly is that the facts are consistent everywhere, not that a script block exists.

How do you add schema markup and test it?

Add schema markup by generating a JSON-LD block for each page type, placing it in the page's HTML, and running the page through Google's Rich Results Test and the Schema Markup Validator. Fix every error, then check Search Console over the following weeks for reported problems.

  1. List your page types: home, service, location, blog post, FAQ.
  2. Decide which schema types belong on each.
  3. Generate the block from the same data the page is built from, so they cannot disagree.
  4. Test one page of each type.
  5. Publish, then watch the enhancement reports described in Google Search Console for business owners.

Step three matters most. One Stop Bail Bonds is a 271 page site produced by one build script, and structured data is part of that build. The address in the markup and the address in the footer come from the same line of data. On WordPress an SEO plugin provides a sitewide baseline, and anything beyond it is added in code.

What mistakes should you avoid with structured data?

The main mistakes with structured data are marking up content that is not visible on the page, describing the business differently from the page text, adding the same type twice from two plugins, and marking up reviews you wrote yourself. Markup must describe what a visitor can see.

  • Invisible content. An FAQ in the markup that is not on the page breaks Google's guidelines.
  • Mismatched facts. Hours in the markup that differ from the footer teach machines to distrust both.
  • Duplicates. A theme and a plugin each adding their own block produce two conflicting descriptions.
  • Wrong type. A general type where a specific one exists wastes the chance to be precise.

Frequently asked questions

Do I need a developer to add schema markup?

Not always. Most website platforms and SEO plugins add basic markup once you fill in your business details. A developer is useful when the output is wrong, duplicated, or when you want location and service pages described properly.

Is schema markup the same as a meta description?

No. A meta description is a sentence suggested for display under your link in search results. Schema markup is a set of labelled facts for machines. Both live in the page's code, and they do different jobs. We cover the first in title tags and meta descriptions.

Should a service area business include an address in its schema?

Include whatever you show publicly. If you hide your street address because customers do not visit, give the city and region and use the area served property to list where you work. Keep it consistent with your business profile.

Will schema markup get my business into AI answers?

Nobody can promise that. Clear, consistent facts make a business easier for any system to describe correctly, and markup is one way of stating them.

If you are not sure what your site is telling machines about your business, send us the address and we will read the markup and tell you what it says.

Who wrote this

The Cobra Developers team. We are a software studio in Arizona that builds and runs its own products and builds websites, web apps, and automation for clients. This post draws on our work on Tamou Law Group, One Stop Bail Bonds. Everything here comes from projects we shipped; see all 30 of them.

guest@cobra: ~