# RevOps · Day 7 — Run it before every HubSpot import

**Subject:** Run it before every HubSpot import
**Send:** Day 7
**Goal:** reframe from one-off tool to per-campaign workflow

---

Hi {{first_name}},

A week in. By now you've probably run DataTools on a real list once or twice and confirmed the dedupe catches more than HubSpot's native check.

The thing that turns DataTools into a per-month-cost saver instead of a one-off purchase: **make it the gate on every import.**

The pattern that works:

**1. One DataTools run per campaign source.** Webform pull → DataTools. LinkedIn scrape → DataTools. Apollo export → DataTools. Each run produces a "clean" CSV.

**2. Concatenate the cleaned CSVs.** Standard pandas `concat` or just paste in Excel.

**3. One more DataTools run on the concatenation.** This is the cross-source dedupe pass — the one that catches the same person across the three sources.

**4. Compare against your current HubSpot export.** DataTools' dedupe against your existing CRM as the second source catches the people you already paid for last quarter and don't need to import again.

**5. Import only the residue** — the rows that survived all four passes — into HubSpot.

The buyers running this pipeline tell me they've cut their HubSpot marketing-contact bill 15-25% within two months. Not because their pipeline got smaller — because they stopped paying for duplicates.

**One thing to set up once:** save your dedupe settings as a `.datatools-preset.json` and commit it to your RevOps team's repo (or a shared Drive folder). Same preset every campaign means consistent results across whoever's running it that week.

If you want, reply with a sanitized lead list and I'll suggest a starting preset for your sources — happy to do this for the first 50 buyers.

— Michael
{{support_email}}
