ATTICUS ATTORNEY SEO
Reviewed May 28, 2026

LegalService schema example: practiceArea, areaServed, priceRange, and Person nesting.

The LegalService type from Schema.org wraps the firm as the entity. Each populated slot signals to Google's parser what the firm is and which queries the firm is relevant to. The combined LegalService plus nested Person schema architecture is the structural backbone of attorney entity validation.

Top-level slots

The LegalService type wraps the firm as the entity. Top-level slots include name, description, url, address (PostalAddress), telephone, email, priceRange, image, logo, openingHours, areaServed, parentOrganization, and employee or member. Reviews nest under review as Review objects. AggregateRating nests under aggregateRating. Each slot has a specific signaling role: name and logo anchor entity identity; address and telephone drive NAP consistency; areaServed drives geographic relevance; aggregateRating contributes the client-side reputation signal Google reads alongside its own GBP review data.

practiceArea, areaServed, and priceRange

The practiceArea slot accepts string values or LegalDefinedTerm objects. The simpler structure ships an array of practice-area strings (Personal injury law, Criminal defense, Family law, Immigration law, Bankruptcy law). The LegalDefinedTerm structure adds inDefinedTermSet and termCode for more specific entity references. Google's parser reads either form. The practice-area population determines which queries Google's parser treats the firm as relevant to. Granularity matters: Family law covers the broad category, but specific entries like Florida divorce procedure chain to richer entities in the Knowledge Graph.

areaServed and the deprecated serviceArea both accept GeoCircle, Place, or AdministrativeArea values. Schema.org now recommends areaServed. For a firm with offices in three cities serving five states, areaServed lists the five states. The Local Pack ranking signals read both slots when present and treat them substantively equivalent. priceRange accepts dollar-sign string values ($$, $$$, $$$$) signaling relative price tier; the slot is more often populated for retail and hospitality verticals than for legal services. Fee transparency in visible page copy carries more weight than the priceRange slot for buyer trust.

Person nesting

Individual attorneys nest as Person objects under the LegalService entity through employee (for staff attorneys) or member (for partners and members). Each Person carries name, jobTitle, email, telephone, image, description, alumniOf (law school), knowsAbout (practice areas), hasCredential (bar admissions, certifications), award (recognitions), and sameAs (LinkedIn, Avvo, Martindale-Hubbell, Justia). Each Person can carry a worksFor slot pointing back to the LegalService entity, creating bidirectional pointers that let crawlers chain identity in either direction. The nesting structure attributes individual attorney E-E-A-T signals (bar admissions, publications, alumni networks) to the firm cleanly without entity confusion.

Rule 7.1 still governs the substantive content rendered by the schema. The schema fields are facts the firm publishes about itself; the unjustified-expectation analysis applies to any field where superlative framing or guaranteed-result language enters. The description field is the operationally active surface for Rule 7.1 analysis; the structural fields (address, telephone, practiceArea) sit outside the rule.

For the broader AI and schema framework, see the generative AI for lawyers hub. The sibling spoke attorney Person schema nesting covers the Person-side of the architecture in depth.

If your firm needs the LegalService schema bundle implemented end-to-end, our law firm schema markup service ships the bundle with practice-area population, attorney-level Person nesting, sameAs identifier chains to directory profiles, and the structural slots Google reads. For the broader Attorney SEO program, the homepage is the entry point.

Common questions on LegalService schema

Questions on the schema bundle before the schema implementation.

  1. 01.

    What does a LegalService schema actually look like?

    The LegalService type from Schema.org wraps the firm as the entity. Top-level slots include `name`, `description`, `url`, `address` (PostalAddress), `telephone`, `email`, `priceRange`, `image`, `logo`, `openingHours`, `areaServed`, `serviceArea`, and `parentOrganization`. The `practiceArea` slot lists the firm's practice areas as an array. Individual attorneys nest as Person nodes under `employee` or `member` slots. Reviews nest under `review` as Review objects. AggregateRating nests under `aggregateRating`.

  2. 02.

    How does `practiceArea` actually populate?

    `practiceArea` accepts string values or LegalDefinedTerm objects. The simpler structure ships an array of practice-area strings (`Personal injury law`, `Criminal defense`, `Family law`, `Immigration law`, `Bankruptcy law`). The LegalDefinedTerm structure adds `inDefinedTermSet` and `termCode` for more specific entity references. Google's parser reads either form. The practice-area population determines which queries Google's parser treats the firm as relevant to.

  3. 03.

    What's the difference between `serviceArea` and `areaServed`?

    Both are Schema.org slots accepting GeoCircle, Place, or AdministrativeArea values. `areaServed` is the broader slot indicating the geographic area the firm serves. `serviceArea` is the deprecated predecessor (Schema.org now recommends `areaServed`). For a firm with offices in three cities serving five states, `areaServed` lists the five states. The Local Pack ranking signals read both slots when present and treat them substantively equivalent.

  4. 04.

    How does `priceRange` work for a legal practice?

    `priceRange` accepts string values typically formatted as dollar signs (`$$`, `$$$`, `$$$$`) signaling relative price tier. The slot is more often populated for retail and hospitality verticals than for legal services. For a legal practice, the slot can signal retainer tier (e.g., `$$$` for a mid-market practice) but the substantive consumer signal is limited. Fee transparency in the visible page copy carries more weight than the priceRange slot for buyer trust.

The schema bundle is structural. The Rule 7.1 analysis lives in the description copy. Book a diagnostic.

We read your existing LegalService schema bundle for slot population, Person nesting, sameAs identifier chains, and Rule 7.1 exposure on the description fields. The diagnostic comes back with the schema audit and the bundle remediation scope.

Book a diagnostic

Four fields. We respond inside one business day with a few questions to make sure we can help, before either side spends time on a call.

We use what you submit to qualify, then respond by email. We do not subscribe you to anything.