Almost every solo provider has a cancellation policy. Far fewer actually hold to it.
The policy lives in the bio, or the confirmation email, or somewhere in your head — "24 hours' notice or there's a fee." Then a real person cancels two hours before, with a real reason, and you wave it. Which is kind. But do it enough and the policy stops meaning anything. Word gets around, gently, that your times are soft. And the no-shows keep coming, because there was never really a cost.
The problem usually isn't that you're too soft-hearted. It's that the policy was designed to be written, not to be used.
Why good policies go unenforced
A cancellation policy fails at the moment of truth for predictable reasons.
It's too complicated — different rules for different services, tiers of fees, exceptions you can't remember. When enforcing it requires a decision tree, you'll default to waving it every time.
It's invisible — buried where the client never really saw it, so charging a fee feels like an ambush, and you don't have the stomach for the argument.
It's all-or-nothing — a full charge or nothing, which feels so harsh in the specific human case in front of you that you can never bring yourself to apply it.
And it's manual — enforcing it means you personally chasing money from someone who just let you down, which is nobody's idea of a good afternoon.
Fix those four things and you don't need a stricter policy. You need a simpler one you'll actually stand behind.
Design the window backwards — from what you'll enforce
Start with a question that isn't about fairness in the abstract: what will I actually hold to, on a Tuesday, with a nice client on the phone?
Pick one window, for everything. Twenty-four hours is the common default and it's a good one — long enough to rebook the slot, short enough to feel reasonable. Forty-eight if you're in high demand or your services are long. The key is one number, applied to everything, so there's nothing to look up and no room to negotiate.
State the consequence in plain terms. "Cancel or reschedule with less than 24 hours' notice and the deposit is kept" is clean. So is "…and a [percentage] fee applies." Whatever it is, it should be one sentence a client can understand in one read.
Lead with rescheduling, not penalties. The goal was never to collect fees — it was to protect the slot. Make the easy path obvious: "Need to change? Reschedule any time up to 24 hours before, no charge." Most people don't want to flake; they want an escape hatch that doesn't cost them. Give them one and you'll lose far fewer slots than you'll ever fine.
Decide your grace rule in advance. You will want to make exceptions — genuine emergencies happen, and being rigid about a real crisis is its own kind of unkindness. The trick is deciding the rule before you're on the call: "first-time, real emergency, I waive it; after that, the policy stands." A pre-made rule protects both your warmth and your consistency, so a kind exception doesn't quietly become no policy at all.
Make it visible, then make it automatic
Two practical things turn a policy from decorative to real.
First, the client has to see it before they book, not after. When the window is stated at the point of booking — right where they choose the time — it becomes part of the agreement they're entering, not fine print they can claim they missed. That single change removes almost every awkward argument, because there's nothing to dispute.
Second, take yourself out of the collection. The reason policies die is that you have to be the enforcer. When a deposit is already held and the window is tied to it, the policy applies itself — a late cancel simply keeps the deposit, no confrontation, no invoice, no chasing. You're not the villain; the system just did what everyone agreed to up front. (This is why a cancellation window works best paired with a deposit: in Seshy, the two are linked, so the window enforces itself against the hold that's already there.)
The point was never the money
A cancellation window done well doesn't fill your account with fees. If it's working, you collect very few — because clients reschedule instead of vanishing, and the ones who'd have flaked either commit or self-select out.
What it actually gives you is a calmer relationship with your own calendar. You stop bracing for the last-minute text. You stop resenting the clients who no-show because you finally have a reasonable, humane structure that handles it without you having to fight for it each time.
The best policy isn't the one that sounds toughest. It's the one you'll still be holding to a year from now, without flinching, because it was built to be lived — clear, kind, and quietly automatic.
