Run by Claude

Should Contractors Put Prices on Their Website? The SEO Case For It

Most contractors hide their prices. But 'how much does X cost' is one of the highest-intent local search queries — and there's a real SEO argument for answering it on your website.

MurphJune 19, 20265 min read

"We don't put prices on our website. Every job is different."

I've heard this from contractors across every trade. HVAC, plumbing, tree service, remodeling. And I understand it — there's a real reason job pricing varies. A water heater replacement in a utility closet with easy access is different from the same job in a crawl space with corroded shut-offs.

But there's a cost to that position, and most contractors don't see it because it happens off their website.

Free audit that checks whether your website is capturing or losing high-intent 'how much does X cost' searches →


The Search Behavior You're Missing

Every day, people in your service area search for things like:

  • "how much does HVAC replacement cost near me"
  • "tree removal cost [city]"
  • "bathroom remodel cost estimate"
  • "how much to replace water heater"

These are not casual, top-of-funnel searches. These are people who already know they need the service. They're researching before they call. They're ready to buy — they just want to know if they can afford it before picking up the phone.

The page that answers that question earns the click. If your website doesn't have that page, someone else's does.

This is one of the highest-converting search categories for local service businesses. And most contractor websites leave it completely unaddressed.


The Two Approaches That Work

For standardized services: Put the price.

If you offer flat-rate drain cleaning, a fixed HVAC tune-up, a defined service package with clear scope — publish it. "Drain camera inspection: $149. Drain cleaning (single drain): $189. Drain cleaning + camera: $279." This kind of page ranks, converts, and eliminates the quote-me-first friction that kills conversions on mobile.

For variable-price services: Publish the range and the factors.

For a custom deck build, a full bathroom remodel, a complex tree removal — you can't name a single price. But you can write a page called "How Much Does a Bathroom Remodel Cost in [City]?" that answers the question honestly:

  • Basic update (vanity, fixtures, tile): $8,000–$14,000
  • Mid-range (layout same, everything new): $15,000–$28,000
  • Full gut with layout change: $30,000–$60,000+

Then explain what moves the number: tile selection, plumbing changes, square footage, structural issues, permits.

This page ranks for "bathroom remodel cost [city]." It attracts people who are budgeting for the project, not just dreaming about it. And it pre-qualifies leads before they pick up the phone — so the first call isn't "how much do you charge?" It's "we have $20,000 set aside for a bathroom, when can you come take a look?"


What to Do With the "Every Job Is Different" Reality

The honest version of "every job is different" is that the price varies based on real factors — not that you don't know your own pricing.

If you've done 200 roof replacements, you know:

  • A standard 1,500 sq ft asphalt shingle replacement runs $8,500–$14,000
  • What adds cost: steep pitch, multiple layers to tear off, rotted decking, chimney flashing
  • What reduces it: simple layout, good existing decking, no permits required in your county

Put that on a page. Call it "Roof Replacement Cost in [City] — Honest Pricing" and explain exactly what you just read above. That page answers the question. It shows up in search. It sends you the leads who are actually ready to proceed.


The Trust Argument

There's a second reason to publish pricing information that has nothing to do with SEO.

The contractor industry has a trust problem. Not because contractors are untrustworthy — but because customers have been burned by hidden fees, quote bait-and-switches, and scope creep that didn't get communicated until the invoice.

A pricing page is a trust signal. It says: we know what we charge, we're not hiding it, and here's what you get for that price. That's rare enough in the trades that it differentiates you.

The customers who read your pricing page and call you are the customers you want. They came in knowing the range. They called anyway. They've already self-selected as people who can afford you and value what you do.

The customers who see your price and go find someone cheaper weren't your customers. You would've found out on the call anyway, after spending 20 minutes on an estimate they never booked.


One Page to Start With

Pick your most common job. The one your crew does three times a week. The one where you can quote a realistic price range in 30 seconds.

Write a page about it. "How Much Does [Service] Cost in [City]?" Give the range. Explain the factors. Add one photo of that job done well. End with a CTA to get a specific estimate.

That's it. One page. 400 words.

If the audit below shows you're missing keyword traffic for pricing searches, this is the fastest way to start capturing it.

Free audit that shows the keyword gaps between you and the top competitor in your market →

— Murph, VibeTokens

Want to see how your business stacks up?

Get a free brand audit — we'll show you what's working, what's not, and what to fix first.

Free Brand Audit →
Jason Murphy

Written by

Murph

Jason Matthew Murphy. Twenty years building digital systems for businesses. Former CardinalCommerce (acquired by Visa). Now running VibeTokens — a brand agency for small businesses that builds websites, content, and growth systems with AI.

AI-Powered Brand Maintenance · From $199/mo

Your competitor's SEO doesn't stop when you close your laptop. Keywords, content, GBP posts, schema — we keep your brand active so you don't have to.

See What's Included →

Your brand is your first impression.

Find out if it's costing you customers.

Free brand audit. We analyze your online presence, competitors, and messaging — then tell you exactly what to fix.

Get Your Free Brand Audit →