Every month, 1 in 6 appointments was simply lost. Then it wasn't. Here's how.
A specialist hair removal company with two locations. The business was busy — 5,000+ appointments a month across both locations — but the revenue didn't reflect the volume. Something was leaking.
Their booking system was legacy, manual in parts, and had no visibility into what was actually happening at a location level. Management felt the pain but couldn't quantify it. That's where I started.
I went into the salons before writing a single requirement. Shadowed therapists, interviewed managers, spoke with clients. Then built the reporting infrastructure to quantify what the observation work suggested.
The no-show rate didn't gradually improve — it collapsed the month online deposits were enforced. One mechanism, one month, measurable result.
Before proposing any solutions I mapped the business position clearly. This shaped everything that came after — what to fix first, what was a risk, and where the real opportunity was.
On the surface it looked like a reminder problem. Dig deeper and it was a system design problem — the booking flow gave clients no reason to show up and no friction to cancel. Every root cause pointed to the same gap: no commitment mechanism at the point of booking.
Once the root causes were clear, the backlog prioritised itself. Fix commitment first — deposit + policy. Then fix the reminder gap. Then make rescheduling easier than cancelling. Then build visibility. The sequence was driven by the diagnosis, not by opinion or gut feel.
Three phases, each building on the last. Highest-impact fix first, prove it works, then layer the next priority. Every release was small, reversible, and tied to a measurable outcome.
Asking clients to pay upfront could have killed bookings. That had to be answered before anything else.
20 years of loyal clients who came back for quality, not price. Client conversations confirmed they would accept it if explained honestly.
Pay upfront, one free reschedule at any time. Rescheduling was made easier than cancelling. Clients who planned to leave rebooked instead.
The rate did not gradually improve. It collapsed. That is what happens when the mechanism is right, not just the intent.
I evaluated multiple SaaS booking platforms before recommending a custom build. All were assessed against the same requirements.
Every change was small and reversible. Definitions were agreed with the team before development started. Each release was scoped to roll back cleanly if needed. Impact was checked against the same reports after every change before moving forward.
I defined the success metrics at the start and measured against them at the end using the same 18 custom reports I used to baseline the problem. Same data, same definitions — so there was no ambiguity about whether the team's work had delivered the intended outcome.
Revenue increased by approximately 22% in 2022 compared to the 2019 pre-Covid baseline, during the post-Covid reopening period, supported by booking and payment workflow improvements.
I'd build the reporting layer earlier. The reports I spec'd in month three should have been in place from day one — even in a lightweight form. The data was always there. I just didn't instrument it fast enough.
I'd also formalise the client segmentation sooner. The frequency vs value insight came from manual analysis. It should have been an automated report from the start.
"Every report started with a business question, not a data request. If the answer wouldn't change a decision, the report didn't get built."