Skip to main content

Pricing on Your Website: When to Show Numbers and When to Hide Them

Every few months a marketing guru on LinkedIn posts some version of "if you're not showing prices on your website, you're hiding from your customers." And every few months, a different guru posts the…

Every few months a marketing guru on LinkedIn posts some version of “if you’re not showing prices on your website, you’re hiding from your customers.” And every few months, a different guru posts the opposite: “never show prices, you’ll commoditize yourself and race to the bottom.” Both of these people are, in my honest opinion, wrong. Or, more charitably, half-right in the specific scenario they’re imagining and dead wrong for everybody else.

Look, pricing on a website is a positioning decision. It is not a moral issue. It is not a transparency badge. It is a filter, and filters are good when they filter the right people and bad when they filter the wrong people. So the real question isn’t “should I show prices?” It’s “what kind of lead do I want my website to produce, and does showing or hiding prices get me closer to that lead?”

Let’s go over that a bit closer.

Why this is a first-principles question, not a stats question

I’ll be upfront. I went looking for a clean, academic study on “what happens to lead quality when a local service website shows prices vs. hides them.” There isn’t one. HubSpot blogs will tell you “45% of B2B buyers say unclear pricing is their biggest frustration,” but that traces back to a single-vendor survey with squishy methodology, not a paper you’d want to stake your business on. So we’re doing this the old-fashioned way, with buyer psychology and a few decades of sales-floor common sense.

The good news is the answer is actually pretty clean once you stop looking for a universal rule.

What prices on a website actually do

Before we decide to show or hide, let’s be honest about what a price on a service-business website is doing in the buyer’s head. It’s doing four things at once:

  • Anchoring. The first number your prospect sees becomes the baseline they compare everything else to, including your actual quote.
  • Filtering. It tells bargain hunters to move on. It also tells premium buyers “this person knows what they’re worth.”
  • Qualifying. It nudges the not-ready-to-buy browser into either saving the page for later or bouncing.
  • Signaling. A price on a page says “I’ve done this enough times to know what it costs.” No price says “every job is different” which can read as either premium or shady depending on how you frame it.

Every one of those four things can cut for you or against you. That’s why the “always show” and “never show” camps are both selling you a fantasy. What you actually need is a decision framework.

The decision framework

Show prices when the service is basically commoditized

If the buyer can get a near-identical version of your service from twelve other local businesses and they all produce the same physical outcome, your price is going to get compared whether you post it or not. You’re either showing it on your site or forcing them to call three of your competitors to collect numbers. Which do you think gets you more business?

Say you’re a Columbus plumber quoting a standard water heater replacement. That job, on a 40-gallon tank swap, is effectively commoditized. Every plumber in town is within a couple hundred bucks of the same number. If your page says “40-gallon electric water heater replacement, starting at $1,250 installed” you’ve done three things. You’ve shown you’re not the cheapest and you’re not the most expensive. You’ve filtered out the person shopping for the $900 Craigslist guy. And you’ve set the anchor that makes a $1,350 quote feel reasonable instead of high.

Hide that number and you’re just making the buyer work harder to get to the same place. That’s not mystery. That’s friction.

Show prices when you want to filter out bottom-dollar leads

This is the one most contractors miss. If your phone is ringing but 60% of the calls are tire-kickers asking “how much for a roof?” you don’t have a lead problem. You have a filter problem. Publishing a starting-at price is the cheapest filter you can install. It doesn’t have to be precise. “Full asphalt shingle replacements start at $8,500 for most single-family homes in our service area” gets you off the phone with anyone who was going to cost you a truck roll on a job you were never going to win.

You don’t lose that lead. You never had it.

Show prices when price IS the value proposition

Some service businesses win on predictability, not complexity. Flat-fee pest control. $99 drain cleaning specials. Membership HVAC plans. If the whole point of your offer is “you know exactly what it costs before we show up,” hiding the number actively undermines the positioning. Put it on the page. Put it on the page twice.

Hide prices when jobs genuinely vary by 10x

Now flip it. Say you’re a custom home builder. A kitchen remodel at your shop might be $40,000 or it might be $400,000 depending on cabinetry, appliances, scope, and whether the client wants a pot filler from Italy. Publishing a “starting at $40,000” number does nothing for you. The buyer who wants the $400K job feels like you’re not their guy. The buyer who wants the $40K job feels like you’re still too expensive for them. You’ve managed to lose both ends of your funnel with one careless number.

For jobs like this, the honest answer on the website is “we don’t publish prices because every project is different, here’s what a consultation looks like, here’s the process we use to build an estimate, here are three recent projects and what they included.” You’re selling the process, not the sticker.

Hide prices when you sell consultation, not transaction

Solar. High-end landscaping. Full-house window replacements. These are consultative sales. The buyer doesn’t actually know what they want yet. They know they want the outcome. Your job on the website isn’t to quote, it’s to earn the in-home appointment. A price on the page in a consultative sale commits you to a number before you’ve done the discovery. That’s malpractice.

What you do instead is show ranges, or better, show past project outcomes with investment levels. “A typical whole-home window replacement project with our team falls between $15,000 and $45,000 depending on window count, frame material, and install complexity. Here’s a recent 22-window colonial that came in at $28,500.” That’s not hiding the price. That’s doing the math honestly while protecting yourself from the one-size quote that will either sandbag your premium jobs or blow out your budget tier.

Hide prices when you need to qualify on-site

Some jobs you literally cannot price without seeing them. Foundation repair. Insurance claim roofing. Mold remediation. Any job where the scope is a guess until a human stands in the basement. Publishing a price on these services isn’t transparency, it’s just a lie with extra steps. The honest move is to publish the process, the diagnostic fee if you charge one, and the timeline from call to estimate.

The middle-ground move: “starting at” with a reason

For a lot of service trades the right answer isn’t fully published pricing or fully hidden pricing. It’s a starting-at number with a one-sentence explanation of what pushes it up. “Drain cleaning starts at $189 for a single-line clearing through an accessible cleanout. Rooter service on main lines, camera inspections, or partial line jetting are priced separately based on what we find.” That’s enough price signal to filter bargain hunters, enough context to protect you from anchoring yourself, and enough honesty to build trust before the truck rolls.

The parenthetical matters. A starting-at price without the “why it goes up” feels like bait. With it, it feels like a real business.

What the “always show prices” people get wrong

The transparency-evangelist argument is that buyers in 2026 expect to see prices. They grew up with Amazon. Hiding the number feels like you’re hiding something else too. This is mostly true for lower-consideration purchases. It is less true as ticket size goes up and the job gets more complex.

A consumer shopping for a $200 lawn treatment will absolutely bounce from a site that won’t tell them a price. A homeowner shopping a $60,000 kitchen remodel has a completely different mental model. They are not impulse-buying a kitchen. They expect consultations. They expect estimates. They expect to meet a human. “Always show prices” advice is mostly written by people selling ecommerce playbooks and then retrofitted onto service businesses that operate on entirely different physics.

What the “never show prices” people get wrong

The opposite camp argues that any number on your page commoditizes you and gives your competitors a ceiling to undercut. This is the old-school contractor mindset and it’s aging poorly. If the buyer can Google “water heater replacement cost” and get a national average inside ten seconds, you are not protecting your pricing by hiding it. You’re just forcing them to go find out without you. Every minute they spend on someone else’s pricing page is a minute they aren’t falling in love with your brand.

The “never show” advice made sense when information was scarce. Information isn’t scarce anymore. Your competitor isn’t the guy across town. It’s the HomeAdvisor page that ranks above both of you.

How this connects to the rest of your site

Pricing strategy doesn’t live alone. It sits on top of your website design, inside your booking flow, and adjacent to how you handle deposits and commitment fees. A page that publishes prices but then dumps the lead into a bad contact form is leaking in two places. A page that qualifies premium buyers beautifully but then makes them chase you for a quote is leaking in a different place. When we do a site audit, the first thing we check is whether pricing and booking flow are pulling in the same direction. Most of the time, they aren’t.

And if your website isn’t getting calls, pricing is one of the first things to look at. Not because of SEO. Because of filter. If the wrong prospects are finding you and the right ones are bouncing, the problem is almost always that your page is priced (or unpriced) for the wrong buyer.

A quick test

Here’s a gut check you can run today. Pull up your top three services. For each one, ask:

  • Would showing a number here filter out a buyer I want?
  • Would hiding a number here force a buyer I want to call a competitor first?
  • Is my “starting at” honest, or is it bait?
  • If I were the buyer, would the price (or lack of it) build trust or raise an eyebrow?

If you can’t answer those four cleanly, you haven’t made a pricing decision yet. You’ve made a pricing accident. The good news is it’s a ten-minute conversation to fix. The bad news is almost no contractor I know has had that conversation with themselves in the last two years.

The honest bottom line

Show prices when the service is commoditized, when you’re trying to filter out low-budget leads, or when predictability is your value prop. Hide prices when the job varies by an order of magnitude, when you sell consultation rather than transaction, or when you genuinely need to qualify on-site. And for everything in the middle, use a “starting at” with a real, honest explanation of what moves the number up. That covers something like 85% of service businesses.

Also, and this is the part nobody wants to hear: the decision isn’t permanent. Revisit it twice a year. Your service mix changes. Your ideal customer changes. Your competitors’ pricing pages change. The page you wrote in 2023 is filtering for a 2023 version of your business. Make sure it still matches.

The goal isn’t to be the transparency champion or the man-behind-the-curtain. It’s to have a website that brings you the right jobs at the right prices with the least wasted energy on both sides. Show the number when it helps. Hide it when it hurts. And stop taking pricing advice from people who sell t-shirts on Shopify.

For more on the mechanics of turning site visitors into paying customers, take a look at how our process works or flip through a few recent builds to see how we handle pricing across different trades and ticket sizes. The right decision for a $200 service is the wrong decision for a $25,000 one, and the sites you’re looking at will show you both.

Want this applied to your business?

We'll build you a free custom homepage design in 24 hours. No pitch, no pressure. Just a clear picture of what's possible.

Get a free design