One owner-led service business, three years in use
A website, contact system, staff workflow and customer follow-up built as one system.
The business has a team, consultations, deposits, multi-step client work and repeat visits. Its website, forms, conversations, calendar, payments, staff tasks and customer follow-up used to require people to carry information between systems. I built the missing connections and business rules, then kept extending them as the operation changed.
The business name and industry are withheld. The workflows and figures are real, taken from the systems in use.
One owner-led service business. The figures below describe this implementation, not a forecast for every client.
Each tool worked on its own, while the handoffs still depended on people.
Enquiries arrived through calls, forms and social messages. Appointments lived in a calendar, payments in the till, client details in the CRM, and several staff members handled different parts of the work. Each tool could do its own job, but the next action still depended on somebody noticing a change and carrying the information across.
The pieces run as one system the owner can rely on
Every source feeds into one shared system, which applies the business's own rules and decides what happens next, whether that is a customer-record update, a staff task, a customer message or a report.
What changed for the owner
Before, the owner (or a staff member) had to notice a change in one tool and carry it into the others by hand. Now every source feeds one shared layer, and the system itself decides what happens next.
On top of that shared layer, six connected systems run the day-to-day operation:
A custom website and CMS, owned outright, with every form feeding straight into the system, never lost.
A lead response system with a median first reply under 6 minutes, so an enquiry never goes cold.
Deposit, no-show and follow-up handling that reacts to what actually happened with a booking, not a fixed timer.
A review system that took reviews from 27 a year to 249, answering ~70% of them itself.
A loyalty program with delayed activation, an expiry reminder and an audit trail, so it can't become a standing discount.
Reporting and reliability built in: a monthly report for the owner, and an alert instead of a silent failure.
Technical implementation
Customer journey and intake
A custom website, built and owned outright
A custom CMS and admin dashboard for day-to-day edits
Pages, sections, blog, media library and navigation, all editable
Image processing built into the upload path
Booking, consent, intake and feedback forms
Every form sends its details straight into the system, with email as a backup, so a submission is never lost
The basics search engines need to find and understand every page: titles, descriptions and a sitemap
Lead response and after-hours handoff
Every enquiry is matched to the same contact, and where it first came from is kept on record
One queue for new work, so nothing sits unassigned
A customer's status only moves forward, never slips back to an earlier step by mistake
After-hours acknowledgement while the business is closed
Stale-enquiry detection, so an enquiry doesn't quietly go cold
Conversation-aware human tasks, read from the real thread
Daily and morning briefs for the team
What the staff stopped doing by hand
Nobody has to remember to chase an enquiry that's gone quiet, or notice a missed call after hours. One queue holds the new work, and it only ever moves forward.
Deposits, no-shows and follow-up
Consultation follow-up when a consult never became a booking
Deposit checking against the calendar and the till
No-show recovery with a rebooking message
Pre-service email based on the actual booking
The system waits, then double-checks nothing changed right before it actually sends
Cancellation and time-window conditions that stop a send outright
Aftercare triggered once a visit is paid for and closed out, matched to the type of service
Contacts who've unsubscribed or have no phone number on file are recognized and never messaged by mistake
What the customer noticed
The pre-service email and the deposit check land at a sensible time, based on what actually happened with their booking, not on a fixed timer that ignores a cancellation or a no-show.
Reviews and reputation
Review request held to quiet hours, with a cooldown against repeat asks
Email status tracked through delivered, opened and clicked
Loyalty, promo and reporting
A loyalty offer with rules, timing and an audit trail. An eligible completed transaction can issue one single-use code. The code has a delayed activation date, a six-month expiry and a reminder before it expires. The system won't let a customer hold more than one active code at a time. A redeemed code does not immediately create another one, so the program cannot turn into a permanent discount on every visit.
The issuance email is recorded against the code. Delivery, open and click events move the email status forward in the admin system, while negative states remain visible. Expiry, redemption and reminders are written to an audit trail. Rewards or messages can be switched off on their own, without shutting down anything else.
Safeguards
Eligible transaction check
Service and touch-up exclusions
One active code per customer
Anti-loop rule after redemption
Delayed activation
One-shot expiry reminder
Never issues the same reward twice
Audit records
Email engagement state
What the customer noticed
The reward code arrives after a real completed visit, works once, and does not quietly turn into a standing discount on every future trip. The reminder before it expires means it does not go to waste.
Promo: staff support and content operations
A shared task queue, not one employee's personal list
Staff-facing AI assistance that never messages a customer directly
Finished work can become approved content
Image cleanup, caption, crop, alt text and publishing, handled automatically
Staff approval required before anything cross-posts
A safeguard that stops the same post from publishing twice
What the staff stopped doing by hand
Finished work can become approved content without anyone cropping, captioning or re-posting it themselves, and the AI assistance never messages a customer directly, so a person always has the last word.
Reporting
Source attribution on every customer
Revenue written back onto the record from completed sales
Response time, conversion and automation actions, tracked together
A monthly report, not just a live dashboard
Customer lifetime value, what it costs to win a customer, and a guarded ratio between the two
Private report links that only work for the owner, instead of an open dashboard anyone could stumble on
On-demand delivery as a PDF or through Telegram
When old data needs fixing, it's tested safely first and corrected in a controlled way, never dumped in all at once
What changed for the owner
Instead of digging through a live dashboard, the owner gets a monthly report with revenue, response time and a guarded ratio between customer value and acquisition cost already worked out, delivered as a PDF or through Telegram.
Reliability and ownership
The website, CMS, admin dashboard and every workflow above are owned outright, not rented from a platform. The exception handling is part of the build, not an afterthought.
The system tells a failure worth retrying apart from a reason to skip the step, so it doesn't keep retrying something that was never going to work
Duplicate protection holds even if the system restarts, not just during one attempt
Quiet hours are recalculated right before a send, not just when it was queued
Long waits end by re-checking the real status, not by assuming nothing changed
Failures that survive retries generate an alert instead of failing silently
Every step has a time limit, so nothing gets stuck waiting forever
New automation is tested safely before it's switched on for real
The system can tell the difference between something a person did and something it did on its own
What changed for the owner
A failure that keeps happening raises an alert instead of failing silently, so the owner hears about a broken step from the system, not from a customer who never got their message.
Three years of numbers
Not one good month picked out. This is the whole run, from the business's own records.
What the system did in a single month
The review system, in numbers




A missed call at 12:00. An automatic text back by 12:02. Nobody at the front desk touched it, and the customer replied within the hour instead of calling the next business.
These figures describe the business in which the system operates, not a claim that software alone produced every sale, customer or review. The system handles consistency, response and follow-up, while the offer, demand, owner and team still determine the result.
You do not need all of this at once.
This system is many connected workflows, not one. The first project should fix one operational bottleneck that repeatedly loses time, money or customer trust.
