CRM Data Cleanup: Contacts Export (HubSpot)
Summary
- Input: 11 data rows, comma-delimited, with a header row. Every row had the expected 11 fields, and nothing appears cut off.
- Output: 9 rows. Two pairs were merged because they shared the same email. No rows were deleted.
- Form answers: The lines after the CSV (CRM, default country, cleanup rules) were read as your preferences, not as contact data.
- Your rules applied:
- Merged on exact email only, after trimming and lowercasing.
- Conflicts resolved in favor of the record with the newest
last_contacted.
- Dates converted to YYYY-MM-DD.
- Notes left exactly as written.
- Test data flagged.
- Date assumption: Every unambiguous date in the column is month-first (02/15, 5/20, 3/18, 2/28, 4/30), and your default country is the US. So I read all dates as MM/DD/YYYY. Row 11 is still flagged, because it's a UK contact and could be day-first.
- Notes and merging: Keeping the newest values and leaving notes unchanged means one merge would drop a note. I kept the newest note verbatim and listed the other one below, so nothing is lost (see Merges).
- Test data: Row 9 is kept but flagged. I left its values untouched (except the date) so it's easy to spot. I recommend deleting it before import.
- Merged row placement: Each merged row sits at the position of its earliest original row.
Cleaned CSV (import-ready)
first_name,last_name,email,phone,company,title,city,state,country,last_contacted,notes
John,Smith,john.smith@acme.com,+14155550134,Acme Inc,VP of Sales,San Francisco,CA,United States,2024-05-20,Asked for pricing
Maria,de la Cruz,maria.delacruz@brightpath.io,+14155550199,BrightPath,Head of Operations,Oakland,CA,United States,2024-04-30,Renewal in Q3
Priya,Patel,priya.patel@gmail.com,+14155550172,Freelance,Consultant,San Jose,CA,United States,2024-01-09,
Kevin,O'Brien,kevin@northwind,+12125550101,Northwind Traders,Buyer,New York,NY,United States,2024-04-02,email bounced?
Sarah,Lee,,+16465550144,Northwind Traders,Procurement Manager,New York,NY,United States,2023-12-01,
Sarah,Lee,slee@northwindtraders.com,,Northwind Traders,Procurement Mgr,NYC,NY,United States,2024-03-18,
Tom,Nguyen,tom.nguyen@greenleaf.co,+15035550110 ext 22,GreenLeaf Co.,Owner,Portland,OR,United States,2024-02-28,"Wants demo, call after 3pm"
test,test,test@test.com,555,test,test,test,test,test,2020-01-01,
DeShawn,Williams,deshawn.w@ironclad-hq.com,+442079460958,Ironclad HQ,CTO,London,,United Kingdom,2024-03-04,
Merges (Tier 1: same email, auto-merged)
Merge A: Rows 1 + 3, john.smith@acme.com
- Base record: Row 1, the most complete (11 of 11 fields filled).
- Newest record: Row 3 (2024-05-20), which wins all conflicts.
| Field |
Row 1 (normalized) |
Row 3 (normalized) |
Kept |
| phone |
+14155550134 |
(blank) |
+14155550134 (Row 1; no conflict) |
| title |
VP Sales |
VP of Sales |
VP of Sales (newer) |
| last_contacted |
2024-03-04 |
2024-05-20 |
2024-05-20 (newer) |
| notes |
Met at SaaStr |
Asked for pricing |
Asked for pricing (newer) |
⚠️ Dropped note (verbatim): Met at SaaStr (from Row 1). You may want to add it back as a HubSpot note. You can also use your free change request to have both notes kept, for example Asked for pricing | Met at SaaStr.
All other fields matched once normalized (name, company, city, state, country).
Merge B: Rows 2 + 10, maria.delacruz@brightpath.io
- Base record: Row 10, the most complete and also the newest (2024-04-30).
| Field |
Row 2 (normalized) |
Row 10 (normalized) |
Kept |
| title |
Head of Ops |
Head of Operations |
Head of Operations (newer) |
| country |
(blank) |
United States |
United States |
| last_contacted |
2024-02-15 |
2024-04-30 |
2024-04-30 (newer) |
| notes |
(blank) |
Renewal in Q3 |
Renewal in Q3 |
Both phone numbers normalized to the same value, +14155550199. No notes were lost.
Possible duplicates (Tier 2: not merged, needs your decision)
| Rows |
Why they look related |
Why not merged |
| 6 and 7 (Sarah Lee) |
Same name, company, city area, and similar title (Procurement Manager / Procurement Mgr) |
Row 6 has no email, so they don't share an email (your rule). |
If these are the same person, merging would give one record with both the phone (Row 6) and the email (Row 7). Use your free change request to confirm and I'll merge them.
Flags for review
| Row |
Issue |
What I did |
| 5 |
Email kevin@northwind is invalid (no domain ending like .com). The notes also say "email bounced?" |
Kept as-is and flagged. I didn't guess the domain. HubSpot may reject this email on import. |
| 6 |
Email was N/A (placeholder) |
Blanked. HubSpot can't deduplicate this contact by email. |
| 7 |
City NYC is an abbreviation |
Left unchanged (casing-only rule). Change to "New York" if you prefer. |
| 9 |
Looks like test data: "test" in every field, test@test.com, phone 555 (too few digits) |
Kept, untouched except the date. Recommend deleting before import. |
| 11 |
Date 03/04/2024 is ambiguous, and this is a UK contact |
Converted as month-first: 2024-03-04. If it's day-first, it should be 2024-04-03. |
| 11 |
No state/region |
Left blank (not needed for the UK). |
| 8 |
Phone extension |
Formatted as +15035550110 ext 22. Check how HubSpot displays it after import. |
Change log (row by row)
| Row |
Field |
Before |
After |
Rule |
| 1 |
first_name |
john |
John |
Proper case |
| 1 |
last_name |
SMITH |
Smith |
Trim, proper case |
| 1 |
email |
John.Smith@Acme.com |
john.smith@acme.com |
Lowercase |
| 1 |
phone |
(415) 555-0134 |
+14155550134 |
E.164 (US default) |
| 1 |
company |
ACME INC |
Acme Inc |
Casing (suffix kept) |
| 1 |
title |
vp sales |
VP Sales |
Casing |
| 1 |
city |
san francisco |
San Francisco |
Proper case |
| 1 |
state |
California |
CA |
2-letter code |
| 1 |
|
|
|
|