CSV Messy Dates and Duplicates, Due Today? The 9:05 Text
2026-10-31
The text that arrived at 9:05
You are standing in the queue at the bakery, one person from the front, when your phone buzzes.
"Hi Noor, quick one. Can you send the cleaned customer list by 5 today? The mailing goes out tomorrow. Thanks!!"
Two exclamation marks. They always make it sound smaller than it is.
You know the file. It arrived on Tuesday, and you opened it once, scrolled for four seconds and closed it again. Somewhere in there are dates written three different ways. Some are 03/04/2026, some 2026-4-3, and some are the words "third of April", typed by a human who was having a good day. Some customers appear twice. A few appear five times, each with a slightly different spelling of the same name.
The woman behind the counter says, "What can I get you?"
You hear yourself order a croissant you don't want.
The kind of Thursday that eats itself
Back at the kitchen table, laptop open, you tell yourself it's a small job. You've done it before. You'll have it sorted by lunch.
By 10:30 you have fixed the first batch of dates and found a second batch that behaves differently. By 11:15 you are scrolling a column of 8,412 rows, squinting at two entries that might be the same person or might be a father and son with the same initial.
That is the part nobody warns you about. The work isn't hard. It's fiddly, and fiddly work has no natural end. Every fix shows you the next problem, and every problem makes you doubt the last fix.
Around noon you notice the thought you've been avoiding: What if I delete the wrong rows and don't realise until the mailing goes out?
That thought is heavier than the deadline. A late file is awkward. A wrong file with your name on it is a different kind of feeling. It's the quiet worry that you're a professional who is somehow still doing this by hand, with your fingers crossed.
You eat the croissant standing up. It tastes of nothing.
What it quietly costs
You don't talk about this part. It isn't the two hours of cleaning. It's what surrounds them.
It's the lunch you skip. It's the other client's email you leave unanswered because your head is full of date formats. It's the small, sour voice that says other people have this figured out, and that there's probably a proper way to do it that you never learned.
And it's the again. You cleaned a file like this in March. You wrote some code, or clicked through some steps, and you were pleased with yourself. Then the next export arrived with one column renamed, the old fix didn't fit, and you started from zero. Every time it feels like the first time.
At 2:40 you have a file that looks right. You can't say it is right. You have no list of what you changed. If the client asks, "Why are there 311 fewer rows?", you'll have to say, "I think those were duplicates."
I think. You hate that sentence.
The pause
At 3:10 you stop, mostly because your eyes hurt.
You lean back and, for the first time all day, you don't look at the screen. You look at the window. A neighbour is carrying a ladder across the courtyard, slowly, without any hurry at all.
And a plain thought comes up: It doesn't have to be done like this.
Not a clever thought. Just a tired, honest one. The problem isn't this file. The problem is that every messy export starts from nothing, and nothing carries over. There's no habit and no safety net. There's only you, one deadline and a lot of rows.
What if the same careful routine ran every time? What if it showed you what it would change before touching anything? What if it handed you a plain list afterwards, so the answer to "what did you do?" was a page instead of a shrug?
You don't have time to build that today. You deliver the file at 4:51, with a knot in your stomach, and write the email so it says as little as possible.
The reply comes back in four minutes: "Perfect, thanks!"
You should feel relief. You mostly feel tired.
A different Thursday
Picture the same text at 9:05. Same two exclamation marks, same queue, same croissant.
This time you read it, think fine, and put the phone away. You order what you actually want.
At your desk you drop the file in. You check what the cleanup would do before anything is changed. You see the dates sorted into one format, the near-duplicates grouped, and the odd cases set aside for your eyes instead of being quietly decided for you. It takes minutes, not a morning.
When it's done, there's a short report: what was fixed, what was merged, what was left alone. You glance through it with your coffee. If anyone asks about the 311 rows, you know the answer, and it's written down.
You send the file at 10:20, and the email is warm instead of defensive. Then you answer the other client, the one you'd have left hanging. You take a proper lunch.
Nothing dramatic happened. A messy file simply stopped being an emergency. That is the whole difference, and it's a bigger one than it sounds.
If you recognised yourself
If you've ever stared at a CSV at 11:15 thinking there must be a better way than this, there is a calmer one. It doesn't need to be clever, only repeatable.
That's what we put into the Clean Data in Minutes – CSV & Excel Cleaning Toolkit (Python). It dedupes, fixes dates, phones and encoding, splits, merges and validates, with a dry-run first and a change report after. It comes with a 30-day money-back promise: if it doesn't help, you get a full refund, no questions.
No rush. The next messy export will arrive eventually, and you'll get to decide how that Thursday feels.
An illustrative story, written with AI assistance.