Rankealo

Service · JSON-LD

Service Schema Generator

Service schema describes something you do for customers rather than something you sell off a shelf: consulting, repairs, legal work, an agency retainer. It is an entity-clarity type, not a rich-result type, and the honest version of that distinction is below.

Open the schema generator

No rich result in 2026

Service markup does not produce a dedicated rich result in Google Search. There is no Service snippet to win. What it does is help machines understand what your business offers and to whom, which matters for entity understanding and for AI answers rather than for search appearance.

Why it is still worth adding

When an assistant is asked to recommend someone who does what you do, it needs to establish that you do it, where, and for whom. Service markup states that in a form a machine cannot misread, and it pairs naturally with LocalBusiness or Organization markup describing the provider.

A valid Service example

Drop this in a <script type="application/ld+json"> tag in the page head or body, with your own values.

{
  "@context": "https://schema.org",
  "@type": "Service",
  "name": "Generative Engine Optimization Audit",
  "serviceType": "SEO consulting",
  "description": "A structured audit of how visible a brand is inside AI-generated answers, with a prioritized fix list.",
  "provider": {
    "@type": "Organization",
    "name": "Rankealo",
    "url": "https://rankealo.ai"
  },
  "areaServed": {
    "@type": "Country",
    "name": "Spain"
  },
  "hasOfferCatalog": {
    "@type": "OfferCatalog",
    "name": "Audit packages",
    "itemListElement": [
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "AI visibility baseline report"
        }
      }
    ]
  }
}

Required and recommended properties

PropertyRequiredNotes
nameRequiredThe service as a customer would name it.
providerRequiredThe Organization or LocalBusiness delivering it. Reference an existing @id where you have one.
serviceTypeOptionalA short category label. Free text, so keep it conventional.
areaServedOptionalGeographic scope. Important for anything location-bound.
hasOfferCatalogOptionalStructured packages or tiers, when you publish them.
descriptionOptionalPlain-language summary. Match the visible copy.

Common Service schema mistakes

Expecting a rich result

There is no Service snippet. Adding this markup because a tool implied it would change your search appearance will only disappoint. Add it for machine clarity or not at all.

Using Service where Product is correct

If the thing has a fixed price and is bought off the page, it is a Product and Product markup gives you a real snippet. Service is for work performed, not items sold.

A provider that contradicts your Organization markup

When the provider name or URL disagrees with the Organization markup elsewhere on the site, machines see two entities instead of one. Reference a shared @id.

Generating it is the easy half

The harder part is keeping markup correct across a site as pages change. Rankealo's SEO agent audits structured data across your pages and ships the JSON-LD fixes as pull requests you review and merge, rather than handing you a list of errors to implement yourself.

See how the SEO agent ships fixes

Service schema questions

Does service schema produce a rich result?

No. Google does not offer a Service rich result, so this markup will not change how your listing looks in search. Its value is entity clarity: it tells machines what your business does, for whom, and where, which is increasingly what determines whether an AI assistant recommends you.

Should I use Service or Product schema?

Use Product when the item has a price and is purchased directly, because Product still earns snippets showing price and availability. Use Service for work you perform for a client, such as consulting, repairs, or a retainer. Choosing Product for a service to chase a snippet is invalid markup.

Can one page have several services?

Yes. Either mark up each service separately, or use a single Service with hasOfferCatalog listing the individual offerings. The catalogue approach is usually cleaner for a page describing packages or tiers.

Other schema types

Or go back to the schema markup generator to build markup interactively.

Reading is step one. Measuring your AI visibility is step two.

Rankealo tracks how often your brand is mentioned and cited across the major AI engines, then helps you publish the pages that close the gaps.