Running the shop
Should you put your prices on Instagram?
The case for and against posting prices, why “DM for price” costs you more bookings than it wins, and how to answer the price question in a way that leads somewhere.
10 October 2026 · 8 min read
Walk through any salon, clinic or studio hashtag and you’ll find the same caption under beautiful work: DM for price.
It is the default, and it is usually a mistake. Not because it’s lazy — the reasoning behind it is genuinely sound — but because it quietly costs more bookings than it protects.
This is the honest case on both sides, and what to do instead of picking one.
Why so many businesses hide prices
Four arguments come up, and three of them have something to them.
“I want the chance to sell.” Real. A price with no context invites comparison with a cheaper, worse version of the same service. In a conversation you can explain why yours takes three hours and theirs takes one.
“My prices genuinely vary.” Also real. Colour correction depends on what’s already on the hair. A sports massage plan depends on the injury. Publishing one number for something that honestly spans a wide range invites an argument on the day.
“Competitors will undercut me.” Weak. They can find out by messaging you, and the ones who care already have. You’re hiding information from clients to keep it from four people who already know it.
“It gets people into the DMs.” This is the one worth examining closely, because it’s the most popular reason and the most wrong.
The DM-for-price trap
The theory: hiding the price creates a conversation, and in a conversation you can convert.
What actually happens is that you’ve put a step between interest and information. Some people take it. Most of the ones who don’t were never going to tell you they left.
Think about the asymmetry. Someone who sees a price they’re happy with books. Someone who sees a price that’s too high moves on, costing you nothing but a scroll. Someone who sees no price has to decide whether finding out is worth messaging a business — and messaging a business means being seen, being sold to, and having to say no to a real person later.
That last part matters more than most owners realise. Saying no in a DM is socially expensive. A lot of people avoid the whole interaction rather than face it.
So “DM for price” doesn’t filter out people who can’t afford you. It filters out people who don’t want a sales conversation, which includes a large share of the ones who could.
What you actually lose
The people who do message break into three groups, and only one of them is the group you were hoping for:
- Ready to book, just needed the number. They’d have booked from a published price with less work. You gained nothing and added a delay.
- Price shopping. They’ll message five businesses, compare, and pick. Hiding the number doesn’t stop this; it just means you spend twenty minutes finding out they were never a fit.
- Genuinely undecided, open to persuasion. The group the strategy exists for. It’s the smallest of the three.
Meanwhile the people who never messaged at all don’t show up anywhere. There’s no notification for the booking you didn’t get. That’s why “DM for price” feels like it’s working — the losses are invisible and the wins arrive with a ping.
When hiding the price is the right call
It isn’t always wrong. Keep the price out of the caption when:
- The service genuinely has to be assessed first. Colour correction, extensive restorative work, injury rehab. Here the honest answer is “it depends”, and pretending otherwise causes problems later.
- You’re selling a plan, not an appointment. Twelve sessions with a trainer isn’t a number anyone evaluates in a caption.
- You are deliberately positioned at the top of your market. At the high end, discretion is part of the product. This is a real strategy — but it only works if everything else about the account supports it, and most accounts using “DM for price” aren’t doing this.
Notice what these have in common: the price is hidden because a number alone would be misleading, not because hiding it is a tactic.
The version that works
You don’t have to choose between a full price list and total silence. The thing that converts is a starting price with the variable attached.
Compare:
DM for price 💕
Balayage from £140 — depends on length and how much lift we’re after. Happy to quote from a photo.
The second gives someone enough to decide whether to continue, is honest about the range, and offers an easy next step that isn’t “message me and find out if you can afford this.”
Three rules that make it work:
- Lead with a real floor. “From £140” must mean someone has genuinely paid £140. A fake floor is worse than no number, because the person who messages feels bait-and-switched at exactly the moment you need their trust.
- Name the thing that moves it. Length, lift, condition, how many areas. One clause is enough. It converts a vague range into an understandable one.
- Offer the cheap next step. “Send me a photo” costs the client nothing and gets you the conversation you wanted from “DM for price” — but now you’re talking to someone who already knows roughly what it costs and is still here.
Where to put the number
Spread it across three places, because people arrive differently:
In the caption, for the post that’s doing the work. One line, not a price list.
In the bio link, for people who went looking. A services page with prices is the single most-visited thing on most appointment businesses’ link pages — more than the booking form itself, because people check the price before they commit. Structuring your bio link covers how to order it.
In the DM, instantly, for everyone who asks anyway. Because they will, including people who just read the caption. The price question is the most common opening message an appointment business gets, and how fast it’s answered matters more than almost anything else in the conversation.
Answering the price question well
When it does land in your DMs, there’s a shape that works:
How much for a full head of highlights?
Full head is £165 and takes about three hours, including a toner and blow-dry. I’ve got Thursday 10am or Saturday 2pm this week if either suits?
Three things are happening there. The price is answered directly — no deflection, no “it depends” when it doesn’t. The context makes the number make sense: three hours and a toner reframes £165 from a figure into an afternoon of work. And it ends with a specific time, which is the part most replies miss.
A price with no next step puts the work back on the client. A price with two named slots is a decision anyone can make in one tap.
The speed problem
Here’s where this gets hard in practice. The reply above is easy to write once. It’s hard to write at 9pm, on a Sunday, for the eleventh person this week, between clients, on a phone with wet hands.
And the price question has a short shelf life. Someone comparing three salons on a Tuesday evening is deciding that evening. A reply the next morning arrives after they’ve booked somewhere else — not because your price was wrong, but because someone else’s arrived first.
That’s the real argument for publishing prices: it answers the question while you’re cutting someone’s hair. Everything that gets answered without you is a conversation you don’t have to win at 9pm.
For the ones that still come through, the fix is the same shape — a consistent, instant answer that ends with real availability. Setting up DM automation that doesn’t sound robotic covers what to automate and what to keep for yourself.
What to do this week
If you currently hide prices, don’t swing to a full price list. Try this:
- Pick your three most-asked-about services. You know which they are — they’re the ones in your DMs.
- Publish a floor price and the variable for each, in the bio link and in the next caption featuring that service.
- Write the reply once for each, with the price, the context and two times, and keep it somewhere you can paste it. Wordings that work, including the awkward ones.
- Watch what changes over a month — not follows or likes, but how many price questions turn into booked appointments. The numbers worth tracking are narrower than you’d think.
If bookings go up, publish more. If your DMs fill with unsuitable enquiries, you’ve learned something specific about your floor price rather than something vague about transparency.
Either way you’ll know, which is more than “DM for price” has ever told anyone.
Questions people ask
Does posting prices on Instagram attract the wrong clients?+
It filters them out, which feels the same but isn't. People who can't afford you still message when prices are hidden — you just find out after spending twenty minutes on the conversation. Publishing the number moves that filtering before the DM rather than after it.
What should I do if my prices genuinely vary?+
Publish the starting price with the thing that moves it, in the same sentence. "Balayage from £140, depending on length and how much lift you need" is honest and still answerable. A range with no explanation reads as evasion.
Will competitors undercut me if I publish prices?+
They can already find out by messaging you as a client, and most already have. The realistic cost of competitors knowing your prices is much smaller than the cost of clients not knowing them.
Is “DM for price” against Instagram’s rules?+
No, it's allowed. The problem is commercial, not regulatory: it adds a step between interest and booking, and a meaningful share of people don't take it.