Case study · 90-day engagement
A Charlotte residential cleaning company had a steady flow of new bookings every week. The phone rang. The first cleans got booked. The economics still did not work. Most customers booked one clean and never came back, which meant the company was paying acquisition costs for what was effectively a one-shot product.
The challenge
Residential cleaning is a brutal economics game when you sell single cleans. The cost to acquire a one-time customer is roughly equal to the gross margin on that single job, so you are running on volume and praying for word-of-mouth that does not always come. The owner had been doing $18k a month for 18 months without growth because every new customer essentially replaced a churned one.
When we audited the funnel:
The plan
Built a pricing page with three transparent tiers: one-time clean, bi-weekly subscription (10% off), weekly subscription (15% off). Each tier shows the monthly cost, what is included, and the cancellation policy. No more "request a quote" friction. Bookable directly from the page.
Replaced the old "10 dollars off your first clean" promo with "first clean half off when you sign up for bi-weekly." The discount is the same dollar amount, but it is gated behind subscription signup. About 38% of new bookings now choose subscription on first contact.
Six hours after each first clean, an automated SMS goes out: "Thanks for choosing us. Want to set up a regular schedule? Reply YES for our bi-weekly plan." About 24% of one-time customers convert to subscription within 7 days.
Made the subscription pause-anytime, cancel-anytime. The bigger competitors had been winning on price; we win on flexibility. Churn rate on the new subscriptions is running at 6% monthly which is below industry benchmark.
Shifted budget toward "weekly cleaning charlotte," "regular house cleaning service," "cleaning subscription," and away from "house cleaner near me" which attracts price shoppers. Conversion rate on the new keyword set is 2.4× the old one.
AI tools we used
We do not pretend the work happens by hand. Three of our internal tools are the reason this engagement moved as fast as it did. Each of them replaces what used to be days of human time.
Calendar embed that shows recurring slots, applies the right discount, and books the entire schedule in one click. Replaces the old request-a-quote flow.
Fires personalized SMS at calibrated intervals after each first clean (6h, 3 days, 7 days). About 24% of one-time customers convert to subscription via SMS.
Pushes more ad spend toward keyword sets that historically produce subscription customers, less toward the one-time price-shopper queries.
The execution
| Week | What we shipped | What moved |
|---|---|---|
| Week 1-2 | Three-tier pricing page + bookable subscription tiers shipped | First subscription booking on day 11 |
| Week 2 | First-clean discount migrated to subscription gate | Sub conversion rate hits 28% on new bookings |
| Week 3 | Post-clean SMS follow-up live | 24% of one-time customers convert to sub within 7 days |
| Week 4 | Pause-anytime terms updated, cancel friction removed | Churn down to 6% monthly |
| Week 5 | Google Ads keyword shift to subscription-intent | CPL down 18%, sub mix climbs |
| Week 8 | First clean MRR review | +$18k MRR added |
| Week 12 | Full retainer review | Run rate at +$24k MRR, LTV 2.1× |
The numbers
The +$24k MRR came from:
Same ads, same lead volume, same crew. The change was the funnel and the offer. The owner stopped selling individual cleans and started selling a service relationship. That is a different product with different math.
I had been told for two years that I needed to charge more. Nobody had told me to charge differently. Subscription was the unlock. I should have done this five years ago.
Keep reading
Thirty minutes. We pull up your account on screen. We tell you what we would do, what we would not do, and whether we are the right fit for your business.