Skip to content
50% OFF $299 $599
Lock in
. Save."},{"@type":"HowToStep","position":4,"name":"Validate at validator.schema.org","text":"Submit the live URL to validator.schema.org. Confirm the Service type parses and zero structural errors are reported. The Rich Results Test will report 'no rich result available' — that's expected, Service is not a Google rich-result type."}]}]}
§ 3.4 ARTICLE
Published VerifiedEvery 6 weeks Sources4 named Authored bySquareRank Team

Schema · § 3.4 · How-to

Service schema for Squarespace service pages

Service is the Schema.org type1 for a productised offering: an attorney's estate planning package, a therapist's couples counselling service, a photographer's wedding package, a coach's three-month engagement. Provider names the entity selling the service (an Organization or LocalBusiness); serviceType names what it is; areaServed defines where it's available. Service is not a Google rich-result type2 — no SERP enhancement — but it gives AI engines a clean entity model for “what does X offer” queries.

Service schema is under-installed on Squarespace because it produces no visible Google reward. The reason to install it anyway: AI engines weight typed entity models heavily when answering “who offers X in city Y” or “what does business Z do” questions, and Service is the cleanest way to declare a productised offer.

What Service schema is

Service is the Schema.org type for an intangible offering — distinct from Product (a physical or digital good). The inheritance chain runs Thing > Intangible > Service. Key properties: provider (the Organization or Person offering the service), serviceType (a category label or free-text description), areaServed (geographic scope), audience (who it's for), offers (pricing via the Offer sub-object), hoursAvailable, termsOfService. The Schema.org vocabulary defines specific subtypes (BroadcastService, FoodService, GovernmentService) but generic Service is the right choice for almost every business-services page on Squarespace.

The mental model: an entity offers a Service. The entity is captured by Organization or LocalBusiness schema; the Service captures the offering itself. A therapy practice's /services/couples-therapy/ page describes one Service whose provider is the LocalBusiness defined on the home page. The two schemas reference each other and produce a coherent entity model.

When to use Service schema

Use Service on every page dedicated to a specific productised offering: a service-page architecture where each top service has its own URL. /services/couples-therapy/, /services/estate-planning/, /services/wedding-photography/, /services/three-month-coaching/. Do not use Service on the home page (that's Organization or LocalBusiness territory) or on category index pages (those are ItemList). Use Product instead when the offering is a physical or digital good rather than a service.

The line between Service and Product matters for AI engine attribution. A digital course is a Product (it's a packaged digital good a customer downloads or accesses). A one-on-one coaching engagement is a Service (it's a recurring offering delivered by a person). When in doubt, ask whether the customer takes possession of something or receives ongoing delivery — possession = Product, delivery = Service.

Rich-results status in 2026

Service is not a Google rich-result type. Google's structured-data catalog does not list Service under the experience-eligible types, which means installing Service schema will not produce a visible SERP enhancement. The Rich Results Test will validate the markup but report 'no rich result available for the structured data' — that's expected, not an error. The reason to install Service schema is AI engine extraction and entity-graph completeness, not rich-result visibility.

AI engines (ChatGPT-User, Perplexity, Claude, Gemini) consume Service schema when answering queries like “who offers couples therapy in Brooklyn” or “what does Park Slope Therapy Collective specialise in.” A page with clean Service + provider + areaServed gives the engine a confident answer; a page without it forces the engine to infer the offering from prose, which it does less reliably and cites less often.

Service schema in 2026

0

rich-result surfaces Google produces from Service schema. The value is AI engine extraction.

Google Search Central · 2025-12-10
6+

key Service properties: provider, serviceType, areaServed, audience, offers, hoursAvailable.

Schema.org · 2026-03-19
Offer

the Schema.org sub-object that carries price, priceCurrency, availability when the service has published pricing.

Schema.org · 2026-03-19

Required and recommended fields

Schema.org defines no hard required properties on Service — the type validates with any combination of fields — but a useful install needs at minimum: name (the service title), description (1-2 sentence summary), provider (an Organization or LocalBusiness object), serviceType (category label), areaServed (geographic scope). Recommended additions when applicable: offers (price), audience (target customer), hoursAvailable (when delivered), termsOfService, url (the canonical service page).

  • name — the service title. Plain text.
  • description — a 1-2 sentence summary.
  • provider — an Organization or LocalBusiness object with name and url, or a reference to an entity already declared elsewhere on the site.
  • serviceType — a short category label (“couples therapy”, “estate planning”, “wedding photography”).
  • areaServed — the geographic scope. A string (“Brooklyn, NY”) or a Place object.
  • offers — optional. An Offer object with price, priceCurrency, availability.
  • audience — optional. An Audience object specifying the target customer.
  • url — the canonical service-page URL.

Copy-paste JSON-LD example

The block below is a Service schema for a couples therapy service offered by a Brooklyn-based therapy practice. The provider is referenced as the LocalBusiness defined site-wide. Replace name, description, serviceType, areaServed, and the provider details with your real values.

JSON-LD Service schema for a Brooklyn couples therapy service
 <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Service", "name": "Couples Therapy", "description": "Weekly 60-minute sessions for couples working through communication, conflict, and transitions. Gottman-method trained therapists.", "serviceType": "Couples therapy", "url": "https://parkslopetherapy.com/services/couples-therapy/", "provider": { "@type": "MedicalBusiness", "name": "Park Slope Therapy Collective", "url": "https://parkslopetherapy.com/" }, "areaServed": { "@type": "Place", "name": "Brooklyn, NY and surrounding areas" }, "audience": { "@type": "Audience", "audienceType": "Couples seeking relationship support" }, "offers": { "@type": "Offer", "price": "225", "priceCurrency": "USD", "availability": "https://schema.org/InStock" } } </script> 

Where to paste it on Squarespace

Service schema goes per-page, not site-wide, because each service page describes a different Service. Open the service page in the Squarespace editor, Page Settings > Advanced > Page Header Code Injection, paste the script block, save. Verify by viewing source on the live service page and confirming exactly one application/ld+json block declaring Service appears.

A pattern worth using when several services share a provider: declare the provider once via the site-wide Organization or LocalBusiness Code Injection, then reference it by name in each per-page Service block. The two blocks together produce a coherent graph: one entity that offers several typed services, each with its own page.

Validation steps

Validate at validator.schema.org rather than Google's Rich Results Test. The Schema.org Markup Validator checks structural validity against the Schema.org vocabulary regardless of Google's rich-result decisions. The Rich Results Test will parse the markup but report 'no rich result available' — which is expected for Service. A clean Schema.org validation pass is the correct success signal.

Common errors: provider declared with the wrong @type (Person instead of Organization when the entity is a business), areaServed declared as a string when a Place object is more useful, missing serviceType. Fix each error reported by the validator and re-run.

Common gotchas on Squarespace

Three gotchas catch most Service installs. First: forgetting that Service is not a Google rich-result type — owners install it, see no SERP change, and assume the install failed. The win is AI engine attribution, not Google enhancement. Second: provider mismatch — the provider declared on the Service page doesn't match the LocalBusiness or Organization declared site-wide. Keep both blocks consistent (same name, same url). Third: pricing the Offer object when the actual price varies by client — install offers only when there's a stated published price; omit it for variable-fee services.

A fourth Squarespace-specific gotcha: page-template conflicts. Some Squarespace templates emit a thin BlogPosting or Article schema even on service pages, especially if the page was originally created as a blog post and converted. View source first and remove any irrelevant auto-emitted schema (via template override or by recreating the page from a service-page template) before adding Service.

Service references Organization or LocalBusiness as its provider. BreadcrumbList belongs on every service page alongside Service schema. If the service has independent third-party reviews, AggregateRating layers in — but not when the reviews are gathered on the business's own site (the self-serving rule). Product is the sibling type for physical or digital goods rather than services.