AutomationMay 27, 20266 min read

Your CRM Is a Junk Drawer. Here's the Cleanup Order.

Three duplicate records per human and a pipeline nobody has touched since March are not an automation problem. They are a data-hygiene problem, and fixing it has a fixed order.

DUPLICATE DEDUPE FIRST

You have 11,000 contacts in your CRM. You also have maybe 4,000 actual humans. The rest is the same people entered three times: once when they booked, once when they paid, once when they filled out a form you forgot was still live. Your "leads" pipeline has stages named "Warm" and "Nurture," and nobody has moved a card between them since March. You already know this. And every few weeks someone tells you the fix is a new automation: a smarter sequence, a tool that finally ties it all together.

It will not tie anything together. It will make the mess bigger, and it will make it faster.

Every tool writes, nothing reconciles

Here is how a CRM becomes a junk drawer. It is never one bad decision. It is twenty reasonable ones.

Your booking system writes a contact when someone schedules. Your payment processor writes a contact when someone pays. Your form builder writes a contact on submit. Your email platform writes a contact when someone subscribes. Each of those tools is doing exactly what you asked. None of them checks whether the person already exists, because none of them can see the others. There is no referee. So the same customer, Jane, shows up as jane@gmail on the booking record, jane.smith@work on the payment record, and a phone-only record with no email at all from the walk-in she did last spring.

Multiply Jane by a few thousand and you get your current situation: a contact count that looks impressive and means nothing, a pipeline you cannot trust, and reporting that quietly lies to you about how many customers you actually have.

Automation on top of dirty data does not fix the mess. It just runs the mess faster, and sends three emails to Jane instead of one.

The instinct to automate first is understandable. Automation is visible; data hygiene is not. But there is a fixed order to this, and skipping steps is how you end up here a second time.

The cleanup order

Do these in sequence. Not in parallel, and not in whatever order the loudest tool suggests.

1. Define the canonical record. Before you merge anything, decide what a contact record is supposed to be. One human, one record. Pick the fields that identify a person (email and phone) and the fields that describe them (source, last visit, lifetime spend). Write it down. This sounds obvious, and it is the step everyone skips, which is exactly why every later step turns into an argument with yourself.

2. Dedupe by email, then by phone. Merge, never delete. Run the match on email first, because email is the more reliable key. Then run it again on phone number to catch the records that came in email-less. The rule that saves you: merge, never delete. When you delete a duplicate, you throw away whatever that record uniquely knew (the appointment history, the one payment, the source tag). When you merge, you keep all of it and collapse it onto one human. Deletion feels tidy. It is how you lose six months of a customer's history to save four seconds.

3. Sync booking and payment two-way, so revenue lives on the contact. This is the step that makes the CRM worth opening. A contact record with no dollar figure on it is a mailing list. Connect your booking system and your payment processor back to the CRM so every appointment and every charge lands on the person. Now Jane is not a name; she is a name with $2,400 of lifetime spend and a last visit in April. Two-way matters: when the CRM updates, the booking system should hear about it, and the reverse as well.

If your systems already disagree about which email is real, this is where that fight surfaces. Good. Better to have it once, on purpose, than silently forever.

Most owners can get through steps one and two in an afternoon with the right match rules. Step three is where it gets specific to your stack, and it is worth getting right the first time. If you want a second set of hands on the merge logic before you run it against live data, book a call and we will map it with you.

What the merge landmines actually look like

We ran this exact sequence for Skin & Self, a med spa whose booking system and CRM had been drifting apart for years. The combined base was north of 40,000 contacts, and the two systems did not agree on much.

The first landmine was the one everyone hits: two systems, two different "real" emails for the same person. The booking tool had jane@gmail. The CRM had jane.smith@work, because that is what she typed the day she paid. Neither was wrong. A naive merge would pick one and quietly drop the other, and the next time she booked under the discarded address, you would have a fresh duplicate and be right back where you started. The fix was not clever software. It was a match rule that treated both emails as aliases of one canonical human and kept both on the record, so a booking under either address routes to the same person.

The second landmine was phone formatting, which sounds trivial until it eats a thousand records. One system stored numbers as (914) 555-0148 and the other as 9145550148. To a machine those are two different people. We normalized every number to one format before matching, and the phone-key pass suddenly caught the walk-ins who had never given an email at all.

The result: 40,000-plus contacts kept in sync across both systems, with revenue living on the contact record. For the first time, "how many customers do we actually have, and what are they worth" had a real answer instead of a shrug. Only after that did we put any automation on top.

Tag by source and behavior, then automate

Once the records are clean and revenue is attached, you tag. Two kinds of tags earn their keep: source (where the person came from) and behavior (what they did). Source tells you which channels are worth the money. Behavior (booked-not-paid, lapsed-90-days, high-spender) is what your sequences will actually trigger on.

Now, and only now, you automate. On clean data, the lapsed-customer sequence goes to people who are genuinely lapsed, not to Jane's three ghosts. The win-back offer counts real revenue, not phantom contacts. This is the difference between automation that compounds and automation that just accumulates; we made the longer version of that case in marketing automation that compounds.

Here is the objection you are already forming: this is a lot of work to do before I get to the part that makes money. True. But the alternative is not "skip the work." The alternative is doing the work anyway, later, after you have wired six automations on top of the mess and have to unpick each one to fix the record underneath. Cheap tools that promise to sync everything for you tend to add records rather than reconcile them; we have watched that go wrong enough times to write it up in the Zapier trap.

Clean the drawer first. Then you get to put things in it and actually find them later.

If your contact count looks great and you do not trust a single number in your pipeline, that is the junk drawer talking. Book a call and we will start with the canonical record and work straight down the list.

Get the signal

One email when a new transmission ships. Everything we learn building acquisition systems, nothing else.

Filed undercrmdata hygieneautomationdeduplicationmed spa
Ready when you are

Thirty minutes. No pitch deck. We audit where you are and map the fastest route up.

Book a Call →