Not just websites. Experiences.
Should you put prices on your website? Why hiding them sends visitors to competitors, and how to show ranges or starting prices when every job is custom.
I see this all the time: a perfectly nice small business website, great photos, five-star reviews, and then the one thing everybody actually came for is hiding behind a button that says “Call for a quote.” It’s the web version of a restaurant menu with no prices on it. You can eat there. You just get the feeling you probably shouldn’t.
I get why people do it. I also think it quietly costs them more jobs than it saves.
The short version
Yes, in some form, for almost every small business. Not necessarily an exact number for every job, but enough that a stranger can tell whether you’re a $300 thing or a $30,000 thing.
This isn’t just my opinion from staring at contact forms all day. Nielsen Norman Group, the usability research folks, have been saying it for years: in their research on stating prices, they watched people leave for competitors’ sites when a site wouldn’t show pricing. People ranked price as the information they wanted most. Not your mission statement. Not the drone shot of your building. The number.
And think about how you shop. When’s the last time you saw “pricing available upon request” and thought, oh good, a phone call?
Mostly fear, dressed up as strategy. The reasons I hear are always the same handful: competitors will see it, every job is different, prices change, and “I want them to call so I can explain the value.”
Your competitors already know what you charge, by the way. They’ve asked a friend to get a quote. Everybody has done that. The only person you’re actually hiding the price from is the customer.
The “every job is different” one is real, I’ll give you that. A roof isn’t a sandwich. But every job being different doesn’t mean every job is a total mystery. You know roughly what a typical one runs. Say that.
And the “I want them to call” plan has a hole in it. The people who call are the ones brave enough or bored enough to call. The rest (and there are a lot of them, especially on a phone at 10pm) just leave. You never even know they were there, which is the most annoying part.
Then show ranges and examples instead of a fixed price. That’s it. That’s the whole trick.
NN/g’s advice for complicated pricing lines up with what I’ve seen work: show prices for common scenarios. Something like “Most bathroom remodels I do land between $X and $Y” or “A typical one-page landing site starts at $Z.” Give two or three real examples of jobs people commonly ask for and what they usually cost.
A few formats that work without boxing you in:
What doesn’t work is a 14-field pricing calculator that asks for your square footage, zip code and blood type before giving a number. People bail on those too. If it takes longer than reading a paragraph, it’s a form wearing a costume.
It’ll scare away the wrong people, which is the point. If someone’s budget is $500 and your floor is $5,000, the kindest thing your website can do for both of you is say so before anybody burns an hour on a call.
I’ve watched business owners spend half their week writing quotes for people who were never going to hire them. That’s not sales. That’s unpaid homework. A visible starting price turns those calls into a polite non-event, and the people who do reach out already know the ballpark and are still interested. Those are damn good leads.
The other thing nobody admits: hiding the price makes people assume it’s high. If you’re actually reasonable, you’re getting punished for a number you never even said out loud.
It can help, because it gives search engines and AI tools something specific to quote. When someone asks an AI assistant “how much does a pressure washing service cost in Palm Coast,” it’s looking for pages that actually answer that question in plain words.
A page that says “Call for pricing” gives it nothing. A page that says “Most driveways run $X to $Y, depending on size and how gross it is” gives it a real answer to pass along. I’m not promising a ranking bump from one sentence, and anybody who promises that is selling something. But you can’t be the answer if you never give one.
If you want your site set up so it answers the questions people really ask, that’s a big part of how I approach AI search optimization for small businesses.
I’d be a hypocrite if I wrote all this and then made you call me. So I don’t. My process page lays out how projects run, and the scope page lets you sketch out what you need before we ever talk.
Is every project the same price? Hell no. But you’ll know if we’re in the same zip code before you pick up the phone, and that saves both of us a pain in the ass conversation.
Not always. If your jobs vary a lot, a starting price or a typical range is usually better than an exact number. The goal is to set expectations, not to write a contract on your homepage.
Use ranges and update them a couple of times a year. A slightly old range is still more useful to a visitor than no number at all. Just add “as of” with the month so nobody feels tricked.
On the service page itself, near the description of the work, not buried in an FAQ at the bottom. If someone is reading about your service, that’s exactly when they’re wondering what it costs.
If your website is still playing hard to get with your prices, it’s an easy fix and probably the cheapest conversion boost you’ll find this year. Tell me what you sell and roughly what it costs, and I’ll help you put it on the page in a way that sounds like you, not like a car dealership. Start a project here.