Skip to content
All posts

Schema Markup for Plumbers: What It Is and How to Add It (47% Are Missing It)

47% of plumbing websites have no schema markup. Sites with structured data see 20-30% higher click-through rates. Here's how to add it in under an hour.

| 12 min read | By Mudassir Ahmed
Share
Schema Markup for Plumbers: What It Is and How to Add It (47% Are Missing It)

A homeowner searches “licensed plumber Gilbert AZ.” Two results appear side by side. One shows the business name, a star rating, operating hours, phone number, and a price range — all directly in the search listing. The other shows a blue title and a two-line description. The first result gets the click. The second one never had a chance.

The difference is schema markup — structured data embedded in your website’s code that tells Google exactly what your business is, what you do, where you serve, and how to display your information in search results. When we audited 1,893 plumbing company websites across 13 states, we found that 47% had no schema markup at all. Nearly half of all plumbing sites are invisible to the structured data systems that power modern search.

This guide explains what schema markup is, which types matter for plumbers, and how to add it to your website in under an hour.

What Schema Markup Actually Does (In Plain English)

When Google crawls your website, it reads your text the same way a person would — scanning for clues about what your business does. Schema markup removes the guessing. Instead of Google inferring that “ABC Plumbing, 123 Main St, Gilbert AZ” is a business name and address, schema markup wraps that information in a standardized code format that says explicitly: “This is a Plumber. The name is ABC Plumbing. The address is 123 Main St, Gilbert, AZ.”

The practical results are measurable. Websites with properly implemented structured data see 20-30% higher click-through rates compared to standard listings. In competitive local markets, that click-through advantage compounds — more clicks signal to Google that your listing is relevant, which improves your ranking, which generates more clicks.

Schema also feeds rich results — the enhanced search listings that show star ratings, business hours, price ranges, and other details directly in Google results. Rich results dominate visual attention in search. They take up more space, convey more trust signals, and give the searcher reasons to click before they even visit your site.

The Three Schema Types Every Plumber Needs

Not all schema types are relevant for plumbing companies. Some — like Product schema for e-commerce or Recipe schema for food blogs — do not apply. For plumbers, three schema types cover 90% of the value.

1. LocalBusiness Schema (Specifically: Plumber)

This is the foundation. Google’s schema hierarchy includes a specific Plumber type nested under LocalBusiness > HomeAndConstructionBusiness > Plumber. Using the specific Plumber type (rather than the generic LocalBusiness) tells Google exactly what kind of business you are.

Here is the essential structure:

{
  "@context": "https://schema.org",
  "@type": "Plumber",
  "name": "ABC Plumbing",
  "url": "https://abcplumbing.com",
  "telephone": "+1-480-555-0123",
  "email": "info@abcplumbing.com",
  "image": "https://abcplumbing.com/logo.png",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "123 Main Street",
    "addressLocality": "Gilbert",
    "addressRegion": "AZ",
    "postalCode": "85234",
    "addressCountry": "US"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": "33.3528",
    "longitude": "-111.7890"
  },
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
      "opens": "07:00",
      "closes": "18:00"
    },
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": ["Saturday"],
      "opens": "08:00",
      "closes": "14:00"
    }
  ],
  "areaServed": [
    {"@type": "City", "name": "Gilbert, AZ"},
    {"@type": "City", "name": "Chandler, AZ"},
    {"@type": "City", "name": "Mesa, AZ"}
  ],
  "priceRange": "$$",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.8",
    "reviewCount": "147"
  }
}

Key fields to include: name, telephone, address, openingHoursSpecification, areaServed, priceRange, and aggregateRating. The areaServed property is especially important for plumbers because it explicitly declares your service area in a format Google can parse directly.

Common mistake: Using LocalBusiness instead of Plumber as the @type. The more specific type gives Google better category information and improves your chances of appearing in industry-specific search features.

2. Service Schema

Service schema lets you mark up individual plumbing services — drain cleaning, water heater installation, sewer repair — so Google can understand the specific services you offer and display them in relevant searches.

{
  "@context": "https://schema.org",
  "@type": "Service",
  "serviceType": "Drain Cleaning",
  "provider": {
    "@type": "Plumber",
    "name": "ABC Plumbing",
    "url": "https://abcplumbing.com"
  },
  "areaServed": {
    "@type": "City",
    "name": "Gilbert, AZ"
  },
  "description": "Professional drain cleaning for kitchen, bathroom, and main sewer lines. Same-day service available.",
  "offers": {
    "@type": "Offer",
    "priceSpecification": {
      "@type": "PriceSpecification",
      "price": "150",
      "priceCurrency": "USD",
      "minPrice": "150",
      "maxPrice": "350"
    }
  }
}

Add Service schema to each of your individual service pages. If you have separate pages for drain cleaning, water heater repair, sewer line replacement, and faucet installation, each page gets its own Service schema block with the relevant details.

The offers property with price ranges is optional but powerful. When Google displays your listing with a price range in the search results, homeowners can immediately see whether your pricing aligns with their expectations — reducing unqualified calls and increasing the conversion rate of the calls you do get.

3. BreadcrumbList Schema

Breadcrumbs help Google understand your site structure and display navigational paths in search results (e.g., “Home > Services > Drain Cleaning”). This is not glamorous, but it improves how your pages appear in search results and helps Google crawl your site more effectively.

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Home",
      "item": "https://abcplumbing.com"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Services",
      "item": "https://abcplumbing.com/services/"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "Drain Cleaning",
      "item": "https://abcplumbing.com/services/drain-cleaning/"
    }
  ]
}

Add BreadcrumbList schema to every page on your site. It takes 2 minutes per page and gives Google a clear map of your site hierarchy.

How to Add Schema Markup to WordPress (Step-by-Step)

WordPress is the most common platform among the plumbing websites we audited. Here are two methods to add schema, ordered from easiest to most effective.

Method 1: Use a Plugin (10 minutes)

Install the Rank Math or Yoast SEO plugin (both free versions support schema). In Rank Math, go to Rank Math → Schema Templates → Add New. Select “Local Business” and choose “Plumber” as the business type. Fill in your NAP, hours, and service area. Save. The plugin automatically adds the schema to every page.

For Service schema on individual pages, use Rank Math’s per-page schema editor. Open any service page, scroll to the Rank Math panel, click “Schema” → “Add Schema” → “Service.” Fill in the service type, description, and price range.

Method 2: Manual JSON-LD in Header (20 minutes)

If you want more control, paste JSON-LD code directly into your site’s <head> section. In WordPress, use the “Insert Headers and Footers” plugin to add the code globally. For page-specific schema, use the “Custom Fields” area or a plugin like “WPCode.”

Wrap your JSON-LD in a script tag:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Plumber",
  "name": "ABC Plumbing",
  ...
}
</script>

Recommendation: Use the plugin method for your sitewide LocalBusiness schema and manual JSON-LD for Service schema on individual pages. This gives you the best balance of convenience and control.

How to Add Schema Markup to Squarespace

Squarespace has limited native schema support. It automatically generates basic Organization schema, but it does not support the Plumber type or Service schema natively.

Workaround: Go to Settings → Advanced → Code Injection → Header. Paste your full JSON-LD code here. This adds the schema to every page sitewide. For page-specific schema, Squarespace allows code injection at the page level: open the page settings, click “Advanced,” and paste the JSON-LD for that specific service.

For a comparison of how different platforms handle schema, see our website builder comparison.

Schema Markup Adoption Rate by State (% of plumbing sites with any structured data) 0% 20% 40% 60% 80% 67% AZ 132 sites 50% FL 415 sites 44% TX 466 sites 54% Other 880 sites National: 53% Source: Plumbing Audit (2026)

Schema Types to Avoid (They Will Not Help Plumbers)

Not every schema type is beneficial, and some can actively hurt your site if misapplied.

FAQPage schema: Google restricted FAQ rich results to government and healthcare websites in August 2023. Adding FAQPage schema to a plumbing website will not generate rich results. It is wasted code that adds no value.

HowTo schema: Deprecated by Google in September 2023. It no longer generates rich results for any website. Do not use it.

Review schema on your own reviews: Google prohibits self-serving review markup. If you embed customer testimonials on your site and wrap them in Review schema, Google may issue a manual action against your site. Use aggregateRating within your LocalBusiness schema instead — this references your overall rating from Google Reviews, which is a valid use.

Product schema for services: Some SEO plugins auto-generate Product schema for service pages. Plumbing services are not products. Use Service schema instead. Mismatched schema types confuse Google and can result in incorrect rich result displays.

Testing Your Schema Markup

After adding schema, validate it using Google’s free tools.

Google Rich Results Test (search.google.com/test/rich-results): Paste any URL from your site. The tool shows which schema types it detects and flags any errors or warnings. Every schema block should show zero errors. Warnings are acceptable but should be resolved when possible.

Google Search Console (search.google.com/search-console): After Google crawls your updated pages (typically 3-7 days), the “Enhancements” section shows schema validation status across your entire site. Look for errors flagged under “Local business” or “Breadcrumbs.”

Common errors found during testing:

ErrorCauseFix
Missing name propertyIncomplete LocalBusiness blockAdd business name
Missing address propertyNo postal address in schemaAdd full PostalAddress block
Invalid telephone formatUsing (480) 555-0123 formatUse +1-480-555-0123 format
Missing @contextForgot schema.org contextAdd "@context": "https://schema.org"
image URL returns 404Logo or image deleted/movedUpdate image URL

Fix all errors before moving on. Schema with errors is worse than no schema — it tells Google you tried to provide structured data but did it wrong, which is a negative quality signal.

How Schema Connects to Your Broader SEO Strategy

Schema markup does not exist in isolation. It amplifies every other SEO effort you make.

Service area pages + schema: When each service area page includes areaServed schema pointing to a specific city, Google has both unstructured content (your page text) and structured data (your schema) confirming you serve that location. This dual signal is stronger than either one alone.

GBP + website schema: Google cross-references your Google Business Profile data with your website schema. When your GBP hours match your schema hours, your GBP address matches your schema address, and your GBP phone matches your schema phone, Google has high confidence in your business information. Inconsistencies between these sources reduce trust.

Reviews + aggregateRating: Embedding Google reviews on your site and including an aggregateRating in your schema creates a consistent review signal that supports both your website rankings and your map pack visibility.

The Impact Timeline: What to Expect

After implementing schema markup correctly, here is the realistic timeline for results.

Week 1-2: Google crawls your updated pages. You can speed this up by requesting indexing in Google Search Console for each updated page. Schema validation appears in the Enhancements section.

Week 3-4: Rich results start appearing for your listings — star ratings, business hours, and price ranges show up in search results. Click-through rates typically increase 20-30% once rich results activate.

Month 2-3: The compounding effect kicks in. Higher click-through rates improve your ranking position. Better rankings generate more clicks. The cycle accelerates.

Long term: Schema becomes the foundation for AI search optimization. As Google’s AI Overviews and other AI search systems expand, structured data is how they identify and cite local businesses. Plumbers with comprehensive schema today are positioned for the search results of tomorrow.

Search Result: Without vs. With Schema Markup WITHOUT SCHEMA ABC Plumbing - Home abcplumbing.com We are a plumbing company serving the Gilbert area. Call us today for all your plumbing needs... CTR: ~2.1% WITH SCHEMA ABC Plumbing - Gilbert, AZ abcplumbing.com ★★★★★ 4.8 (147 reviews) Licensed plumber in Gilbert, AZ. Drain cleaning, water heaters. Open Mon-Fri 7AM-6PM · $$ +1-480-555-0123 CTR: ~4.2% Schema markup = 2x click-through rate Same ranking position, double the clicks Source: Plumbing Audit (2026)

The Competitive Window Is Closing

Today, 47% of plumbing websites have no schema markup. That means adding it puts you ahead of nearly half your competitors immediately. But this gap is narrowing. As more website builders add automatic schema generation and more SEO plugins make it easy, the early-mover advantage shrinks.

The plumbers who add comprehensive schema now — not just basic LocalBusiness, but Service schema on every service page, BreadcrumbList on every page, and proper areaServed data on every service area page — will be the ones positioned for rich results, AI search citations, and the next generation of Google features.

An hour of setup work. Zero ongoing cost. A 20-30% lift in click-through rates. And 47% of your competitors are still not doing it.

That is not an opportunity. It is a head start — and it has an expiration date.

Want to know your score?

Drop your URL — full report in 48 hours.