InterCore Technologies
● InterCore · Agentic search optimization

LocalBusiness and Multi-Office Schema for Law Firms

Be the firm AI recommends.

Structure schema.org LocalBusiness for multi-office law firms. Entity graph architecture, @id naming, GBP connection, and avoiding duplicate entities.

Get your free AI visibility report →Read the guide
By Scott Wiseman·CEO & Founder, InterCore Technologies·Updated Jul 2026
Quick
answer

Structure schema.org LocalBusiness for multi-office law firms. Entity graph architecture, @id naming, GBP connection, and avoiding duplicate entities.

TL;DR — Key takeaways
  • LocalBusiness is a schema.org type for location-specific entities: a single office, a restaurant, a retail location. Law firms with multiple offices need multiple LocalBusiness nodes, each representing one office with real, verified geo-coordinates, address, phone, hours, and reviews.
  • The critical architecture: one firm-level Organization node (declared once, top-level, carries the firm name, logo, general info); multiple LocalBusiness nodes (one per office, each with its own @id, address, phone, geo, and location-specific review data); and multiple Person nodes (one per attorney, each worksFor the top-level firm via the firm's @id).
  • Avoid the duplicate-entity trap: do NOT re-declare the Organization node on every page with different addresses. Instead, reference it by its stable @id (e.g., '#organization'). Each office gets its own LocalBusiness @id (e.g., '#office-san-francisco', '#office-los-angeles') so the entity graph is singular and unambiguous.
  • Every LocalBusiness node must carry real, location-specific data: byte-identical NAP (name, address, phone) matching Google Business Profile; real geo-coordinates (latitude/longitude, geocoded to the building address, not a neighborhood); open-hours; and real, third-party review data (aggregateRating with real counts from GBP). Fabricated or generic data breaks trust and suppresses rankings.
  • The firm's single Organization node anchors the entire graph. Each LocalBusiness node references it (provider → '#organization'); each Person node references it (worksFor → '#organization'). This structure tells search engines: 'One firm, multiple locations, one leadership structure, shared expertise.' The alternative (one isolated Organization per office) creates an entity forest; search engines treat each as a separate firm.
  • Google Business Profile is the canonical single-office listing. Every LocalBusiness node should carry a sameAs URL pointing to its specific GBP profile (the office location, not the firm landing page). This is how search engines connect your schema to real-world business data and verify you are not fabricating reviews, hours, or location info.
The complete guide

Read it, chapter by chapter

The full 7-chapter guide for law firms — pick any chapter to read it here.

Chapter 1 of 7

What Is LocalBusiness Schema? (And Why It's Different from LegalService)

LocalBusiness is a schema.org type designed to mark up location-specific, customer-facing businesses: a single office, a restaurant, a retail store, a hotel. For a multi-office law firm, LocalBusiness is the right choice for each individual office—the physical location a client can visit, with real hours, a real address, a real phone number, and real reviews.

This is subtly different from LegalService, which is a generic service node that represents a service offering (e.g., 'medical malpractice defense') without inherent location-specificity. A LegalService node usually lives at `/practice-area` or describes a service; a LocalBusiness node lives at `/office/[city]` and describes a place. The distinction matters because LocalBusiness has required and recommended fields specific to place-based businesses—geo-coordinates, address, phone, hours, and review aggregates—that LegalService does not assume.

LocalBusiness vs. LegalService for Law Firms
PropertyLocalBusinessLegalService
What it representsA physical, location-specific office or presenceAn abstract service offering (e.g., 'divorce defense')
Geo-coordinatesRequired (real building address, lat/lng)Optional; can be a service area
AddressYes, byte-identical to real office addressUsually omitted or generic firm address
PhoneLocation-specific phone number (preferred) or firm main lineFirm-wide contact info or missing
HoursLocal business hours (e.g., 9–5, closed Sundays)Not applicable
Review aggregatesReal, location-specific ratings from GBPRarely used
Canonical URL/office/[city] or /locations/[city]/practice-area/[practice] or /service/[service]

Google's Search Central documentation recommends LocalBusiness for physical locations and LegalService for service-based businesses. For a law firm, the clearest approach: use LocalBusiness for every office page, anchored to a single firm-level Organization node that carries the brand, logo, and leadership. This structure immediately tells Google (and AI search engines) that you are one firm with multiple places, not several unrelated firms.

Share
Every search intent, covered

Who, what, why, when, where & how

Understanding the full schema.org landscape for law firms

What are all the schema types a law firm should use?

Read <a href="/schema-for-law-firms/">Schema Markup for Law Firms</a> to see the complete entity graph framework (Organization, LocalBusiness, Person, Service, LegalService, and others).
Implementing multi-office GEO and local authority

How do I optimize my local pages and office locations for AI search?

Use the <a href="/geo-for-lawyers/">GEO for Lawyers hub</a> to learn citability scoring, passage structure, and how to make each office page AI-citable.
Checking if your schema is correct before publishing

How do I validate and test my law firm schema?

See <a href="/schema-for-law-firms/schema-validation-and-testing/">Schema Validation and Testing</a> for a step-by-step audit guide, including common errors and fixes.
Connecting your schema to Google Business Profile and local pack rankings

How does my website schema talk to Google Business Profile and affect local search rankings?

Read <a href="/schema-for-law-firms/entity-linking-and-sameAs/">Entity Linking and sameAs</a> to understand how to bridge your schema and GBP so search engines verify you are a real business.
InterCore · Services

Every guide in this hub

Explore the full cluster — pick any node to open its guide.

5
Services
What clients say

In their words

5.0★★★★★Excellent · 20 reviews on GoogleWrite a review
★★★★★

We tried a lot of vendors, but in less than a year, this law firm marketing agency generated tangible results.

Calyn Settle
Verified Google review · 8 months ago
★★★★★

Within 90 days we were showing up in ChatGPT and Google AI Overviews for our top practice areas. The qualified calls followed.

Managing Partner
Personal Injury firm
★★★★★

They actually understand how the AI platforms work. Our cost per signed case dropped while lead quality went up.

Founding Attorney
Family Law firm
★★★★★

As a solo, I finally compete with the billboard firms — because AI recommends me by name for DUI cases in my city.

Solo Practitioner
Criminal Defense

One verified Google review shown; the remaining quotes are representative. Past results do not guarantee future outcomes.

Scott Wiseman, CEO / Founder, InterCore Technologies · AI-Powered Marketing for Law Firms Since 2002
Scott Wiseman
CEO / Founder, InterCore Technologies · AI-Powered Marketing for Law Firms Since 2002

Scott is a former Google Marketing Director with a background in computer science and business. He helps law firms acquire clients across every search channel — SEO, PPC, and the newer generative and answer-engine categories (GEO and AEO) — improving their visibility both on Google and in the recommendations of AI systems like ChatGPT, Gemini, and Perplexity. A network engineer and software programmer by training, Scott holds a bachelor's in computer science from California State University, Northridge, an MBA from Pepperdine's Graziadio Business School, and an Applied Agentic AI certificate from Harvard Business School. He has guided law firms through every major shift — Yellow Pages to Google Ads to today's AI revolution — pioneering Generative Engine Optimization for attorneys nationwide.

Watch · Short

Why Law Firms Need GEO (Generative Engine Optimization)

100+
law firms served
18:1
avg marketing ROI
2002
law-firm-only since
More on the InterCore channel — @IntercoreAI
Sources & references

Backed by research

Schema.org LocalBusiness Type DocumentationSchema.org Organization Type DocumentationGoogle Search Central: Structured Data for Local BusinessesGoogle Search Central: Schema.org Validator (validator.schema.org)Google Rich Results TestSchema.org Person Type DocumentationSchema.org GeoCoordinates and Point TypesGoogle Business Profile Help Center: Business Information AccuracySchema.org AggregateRating Type DocumentationSchema.org OpeningHoursSpecification Documentation
FAQ

Frequently asked questions

Use LocalBusiness for office/location pages. LocalBusiness is designed for location-based businesses and includes fields like geo-coordinates, address, hours, and location-specific reviews. LegalService is better for practice-area or service pages (e.g., 'Medical Malpractice Defense'). You can use both on a single page: a LocalBusiness node representing the office, and LegalService nodes representing the services offered at that office.

No. Each office must have a unique @id (e.g., '#office-san-francisco', '#office-los-angeles'). Using the same @id for multiple offices tells search engines they are the same location, which is false. The firm-level Organization node has one @id (e.g., '#organization'), and each office LocalBusiness node references that Organization @id, but each office has its own distinct @id.

If you have one office, you can use either a LocalBusiness node with a Location-specific address, or a single Organization node with the office's address. For simplicity, a single LegalService node with `areaServed` (for service areas) and the firm's address often works. But if you plan to expand to multiple offices later, declare a top-level Organization node now and a LocalBusiness node for the current office, so you can scale easily.

Declare the Organization node in your site-wide layout (footer, header, or a shared schema component) so it appears on every page. This ensures the node is available for reference throughout the site. It should not be redeclared on individual office or attorney pages; other pages should reference it by @id only.

No. aggregateRating is optional and should only be included if the office has real Google Business Profile reviews. If an office is new and has no reviews yet, omit aggregateRating entirely (do not make up a rating). Once the office accumulates reviews on GBP, add aggregateRating with the real data.

Use the shared phone number in the LocalBusiness node for each office. Ideally, each office would have a location-specific phone number so clients can call the local number. But if that is not possible, the firm's main line is acceptable. Google and AI search engines will understand that the shared phone leads to a general firm contact and may forward to the local office.

Add the GBP listing URL to your LocalBusiness schema's 'sameAs' field. When you claim a GBP listing, Google provides a URL (e.g., 'https://www.google.com/maps/place/...'). Copy that URL and include it as: 'sameAs': 'https://www.google.com/maps/place/...'. This tells search engines that your schema and the GBP listing are the same business.

Yes, if the office's hours are consistent and publicly available. Use the OpeningHoursSpecification schema with dayOfWeek and opens/closes times. If hours vary or are confidential, openingHours can be omitted. Including hours is not mandatory, but it helps search engines and AI systems provide accurate information to users.

Use the exact street address. Geocode the specific building address (e.g., '123 Main Street, Suite 400, San Francisco, CA 94107') to get real latitude and longitude. If a user plugs your coordinates into Google Maps, they should arrive at the actual building or office entrance, not a neighborhood. This is both for accuracy and to prevent mismatch with GBP.

Declare one Person node per attorney with their primary office (if any) in the officeLocation field. If an attorney works remotely or across multiple offices, you can include multiple officeLocation references (as an array) or omit officeLocation if there is no primary base. The Person's 'worksFor' field always points to the firm Organization @id, regardless of office distribution.

More guides
What Is Schema Markup?LegalService & Attorney SchemaFAQPage & HowTo SchemaCommon Legal Schema Mistakes

Ready to be the answer AI recommends?

See exactly how ChatGPT, Google AI and Perplexity rank your firm — a 23-point report in 24 hours. No credit card.

Get my free AI visibility report →Call 213-282-3001