Skip to content

Schema markup for pet photographers

Pet photographer schema markup, with an example

Use LocalBusiness with a catalog that separates the session fee from what owners buy afterwards, digital files and prints with starting prices, and areaServed for the places you'll travel to shoot. If you have a studio, its address goes in; if you only shoot outdoors, give your suburb.

The type to use

LocalBusiness

schema.org has no type for photographers of any kind, and ProfessionalService has been deprecated, so pet, wedding and portrait photographers all use LocalBusiness and let their catalog say what they shoot.

LocalBusiness on schema.org

What to include

The properties that matter for pet photographers

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

hasOfferCatalog
Session types (beach, studio, at home, mini) with their fees, then digital images and prints as their own offers with “from” prices, so the likely total is clear.
areaServed
The suburbs and towns you'll travel to for an outdoor or at-home shoot, including any you'll go further for at a travel fee.
address
The studio, if owners come to you; otherwise your suburb and postcode.
image
One real photograph from a session, with a descriptive file name, rather than your logo. It's the first thing people want to see.
priceRange
Session fee to a typical spend, such as “$195–$900”, if you're comfortable showing it.
email
Shoot enquiries tend to arrive by email with photos of the pet attached; give the address you answer.
telephone
For owners who'd rather talk through a nervous rescue or an older dog before booking.
sameAs
Instagram above all, since that's where your recent sessions are; linking it ties your feed to your site.

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": "Saltwater Paws Photography",
  "description": "Dog and cat photography in Newcastle and Lake Macquarie: beach and bushland sessions, at-home sessions and a small studio in Merewether.",
  "url": "https://www.example.com/",
  "image": "https://www.example.com/images/kelpie-merewether-beach.jpg",
  "telephone": "+61 2 5550 4417",
  "email": "studio@example.com",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Unit 3, 61 Glebe Road",
    "addressLocality": "Merewether",
    "addressRegion": "NSW",
    "postalCode": "2291",
    "addressCountry": "AU"
  },
  "areaServed": [
    {
      "@type": "City",
      "name": "Newcastle"
    },
    {
      "@type": "Place",
      "name": "Lake Macquarie"
    },
    {
      "@type": "Place",
      "name": "Port Stephens"
    }
  ],
  "priceRange": "$195–$900",
  "hasOfferCatalog": {
    "@type": "OfferCatalog",
    "name": "Sessions and prints",
    "itemListElement": [
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "Beach or bushland session, up to 90 minutes, one pet"
        },
        "price": 195,
        "priceCurrency": "AUD"
      },
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "Studio session, 1 hour"
        },
        "price": 175,
        "priceCurrency": "AUD"
      },
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Service",
          "name": "Christmas mini session, 20 minutes"
        },
        "price": 120,
        "priceCurrency": "AUD",
        "validFrom": "2026-11-07",
        "validThrough": "2026-12-13"
      },
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Product",
          "name": "Digital image, full resolution"
        },
        "priceSpecification": {
          "@type": "PriceSpecification",
          "minPrice": 55,
          "priceCurrency": "AUD"
        }
      },
      {
        "@type": "Offer",
        "itemOffered": {
          "@type": "Product",
          "name": "Framed print, 40 × 60 cm"
        },
        "priceSpecification": {
          "@type": "PriceSpecification",
          "minPrice": 240,
          "priceCurrency": "AUD"
        }
      }
    ]
  },
  "sameAs": [
    "https://www.instagram.com/example",
    "https://www.facebook.com/example"
  ]
}
</script>

Watch out

Mistakes pet photographers make with markup

  • The session fee as the whole price

    A catalog with only “Session $195” suggests that's what a shoot costs. If images and prints are sold afterwards, list them as offers too, with the starting prices from your price list.

  • Portfolio images as products

    Product markup on gallery photos that aren't for sale tells search engines there's something to buy where there isn't. Keep Product for the prints and files you actually sell.

  • Last Christmas's mini sessions

    Seasonal offers stay in the code long after their dates. Give them validFrom and validThrough, as the example does, and take them out once they're over.

Also worth adding

  • Product: If you sell prints, calendars or gift vouchers through an online shop, each product page can carry Product markup with its price and availability.

FAQ

Pet photographers: markup questions

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

Can I mark up mini-session days as events?

Better not. A mini-session day is a run of private bookings, not something the public turns up to; keep it as an offer with validFrom and validThrough dates, and save Event for things people can attend.

Should memorial sessions be in the catalog?

If you offer them, yes, named plainly (“memorial session at home”) with the price your page shows. Owners looking for one at a hard time can then see it exists without having to ask.

Do I need markup on every portfolio photo?

No. Descriptive file names, alt text and a caption naming the animal and the place are what image search reads. Keep markup for the business and for what you sell.

Be the first name owners find.

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