Skip to content

Schema markup for dog walkers

Dog walker schema markup, with an example to adapt

A dog walker's markup is LocalBusiness with areaServed naming the neighbourhoods you collect dogs from, and an offer catalog that separates solo walks, group walks and puppy visits with their prices. Add the hours you walk and a phone number, and leave your street address out.

The type to use

LocalBusiness

LocalBusiness, because owners book you as a local service with an area, hours and prices; schema.org has no dog-walking type. The walks themselves are Service items inside your offer catalog.

LocalBusiness on schema.org

What to include

The properties that matter for dog walkers

Most important first. Fill in what's true for you and leave out the rest; every value must also be on the page.

areaServed
The neighbourhoods and postcode districts where you pick dogs up, such as West Bridgford or NG2. Owners search by where they live, not where you walk.
hasOfferCatalog
Solo walk, small-group walk and puppy visit as separate offers, with the length and group size in each name, since those are what owners compare.
telephone
The number clients text about keys and cancellations, and the one new enquiries should use.
openingHoursSpecification
The weekday window when walks happen, say nine till half three. It stops a search for a Saturday walker being told you're free.
address
Your town and postcode district only. Dogs are collected from home, so there's no reason to publish where you live.
hasCredential
A pet first aid certificate or a canine qualification, named as printed. Insurance isn't a credential; it belongs in your page text.
priceRange
Something like “£12–£18” per walk, from a puppy visit to a solo hour.
sameAs
Your Rover profile and social pages, so reviews left elsewhere connect to the same walker.

Example

Copy, then make it yours

This is the markup for a made-up business. Replace every value with your own before you use it.

  1. Change every name, address, number and link to your own, and delete lines that don't apply.
  2. Paste it into your site's header code (website builders call it “code injection” or “custom code”), or let ServiceCited add it for you.
  3. Check it with Google's Rich Results Test or the Schema Markup Validator.

LocalBusiness JSON-LD

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "LocalBusiness",
  "name": "Trent Side Dog Walks",
  "description": "Solo and small-group dog walks in West Bridgford, Lady Bay and The Meadows, Nottingham. Groups of up to four dogs.",
  "url": "https://www.example.com/",
  "image": "https://www.example.com/images/group-walk.jpg",
  "telephone": "+44 1632 960388",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Nottingham",
    "postalCode": "NG2",
    "addressCountry": "GB"
  },
  "areaServed": [
    {
      "@type": "Place",
      "name": "West Bridgford, Nottingham"
    },
    {
      "@type": "Place",
      "name": "Lady Bay, Nottingham"
    },
    {
      "@type": "Place",
      "name": "The Meadows, Nottingham"
    },
    {
      "@type": "Place",
      "name": "Trent Bridge, Nottingham"
    }
  ],
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": [
        "Monday",
        "Tuesday",
        "Wednesday",
        "Thursday",
        "Friday"
      ],
      "opens": "09:00",
      "closes": "15:30"
    }
  ],
  "priceRange": "£12–£18",
  "hasOfferCatalog": {
    "@type": "OfferCatalog",
    "name": "Dog walks",
    "itemListElement": [
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "Solo walk, 1 hour"
        },
        "price": 18,
        "priceCurrency": "GBP"
      },
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "Small-group walk, up to four dogs, 1 hour"
        },
        "price": 15,
        "priceCurrency": "GBP"
      },
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "Puppy visit, 30 minutes"
        },
        "price": 12,
        "priceCurrency": "GBP"
      }
    ]
  },
  "hasCredential": {
    "@type": "EducationalOccupationalCredential",
    "name": "Canine First Aid Certificate",
    "credentialCategory": "Certificate"
  },
  "sameAs": [
    "https://www.example.com/your-rover-profile",
    "https://www.instagram.com/example"
  ]
}
</script>

Watch out

Mistakes dog walkers make with markup

  • Parks in areaServed

    The fields you walk in aren't where your customers live. areaServed is for the neighbourhoods you collect from; name the parks in your page text instead, where they show you know the area.

  • Open around the clock

    Answering messages at 11pm doesn't make you a 24-hour business. Hours of 00:00 to 23:59 tell assistants you'll walk a dog at midnight; give the window walks actually happen in.

  • One service called “Dog walking”

    With a single offer and one price, nobody can tell whether a walk is solo or in a pack of six, or how long it lasts. Split the catalog the way your price list is split.

Also worth adding

  • FAQPage: On a page answering meet-and-greet, key-handling and cancellation questions in words clients can read.

FAQ

Dog walkers: markup questions

Type to search these questions, or ask anything about getting found on Google and AI.

Is there a property for my insurance?

No. Name your insurer and what you're covered for on the page, in words. Don't squeeze it into hasCredential, which is for qualifications and licences, not policies.

I walk dogs and feed cats. Do I need separate markup for each?

One, if it's one business with one name and phone number. Put the cat visits in the same offer catalog as the walks; a second block only makes sense for a second business.

Should group size go in the markup?

Yes, in the service name or its description: “small-group walk, up to four dogs”. There's no dedicated property for it, and owners of dogs who don't like crowds look for exactly that detail.

Be the first name owners find.

Run the free check, then press Optimize. Then back to the dogs.