01/Context
Vet care is a relationship business
A veterinary clinic doesn't win on the first visit — it wins on the tenth. Vaccines, dental cleanings, annual exams: the business is a long series of small, well-timed moments of care. Which makes retention the product, and lifecycle messaging the interface.
When I took over CRM at Sploot, the opportunity was obvious: the clinic knew things about each pet that no generic marketing tool would ever use — species, age, last visit, what's due next. Almost none of it reached the customer.
02/Problem
Automations pile up. Systems compound.
The default failure mode of CRM is entropy: every campaign built as a one-off, logic duplicated and drifting, nobody sure which automation fires when, and consent handled differently in every flow. It works at ten workflows and collapses at fifty.
And the stakes aren't abstract. Message a customer about the wrong pet — or after they've opted out — and you haven't just wasted a send. You've damaged a relationship built on trust in a care provider.
03/Approach
Treat the lifecycle like a product
I mapped the whole customer journey into explicit stages with entry and exit criteria — new client, active, lapsing, lapsed, won back — and made every campaign declare where it lives in that map. No orphan automations.
- 01Identity unification first, so a client is one person across clinic software, web, and marketing tools.
- 02Consent and opt-in management as a single shared framework every flow inherits — never per-campaign logic.
- 03Personalization from real clinical context: the pet's name, what's due, which clinic they know.
- 04Naming conventions and documentation, so the fiftieth workflow is as legible as the first.
Any single flow is easy. Fifty coherent ones is architecture.
04/Targeting
Who you're talking to, and where they're headed
Stages tell you when to reach out. They don't tell you who's on the other end. So I built personas from real behavior and clinical context and used them to shape the voice, offer, and cadence of every campaign — a first-time puppy parent still finding their footing needs a different tone than a seasoned multi-pet client who already knows the drill.
The personas weren't segmentation for its own sake — they were a ladder. Every campaign declared which rung it was climbing: a new client toward active, an active client toward loyal, a loyal client toward promoter — the ones who refer their friends and vouch for the clinic. Retention was the floor, not the ceiling.
Under all of it, an RFM model scored every client on three signals the clinic already had — how recently they'd visited, how often, and how much they'd spent. That score turned a flat contact list into a priority queue: who's worth a win-back, who's ready for a membership offer, who's quietly slipping and needs a nudge this week.
Retention was the floor. Turning clients into promoters was the point.
05/What I built
Fifty flows, one nervous system
Over three years I built 50+ campaigns and workflows in HubSpot — onboarding sequences, recall reminders, lapsed-client winbacks, review loops — all running on the shared identity and consent layer, all personalized from unified profiles.
This system is also what taught me the data lesson the hard way — the ceiling on lifecycle work is the quality of the identity and event data underneath it. That realization became the data-stack project.
06/Outcomes
Care that shows up on time
Clients hear from their clinic about the right pet, at the right moment, through channels they've actually consented to. The team ships new campaigns into a system with rules instead of a pile with history. And the whole thing survived my attention moving elsewhere — which is the real test.
- 50+
- flows running in production
- 1
- shared consent framework
- 3 yrs
- of compounding instead of entropy