playbook
Make a messy export trustworthy
Profile a raw export before you trust a single total — row count, what each column means, blank rows, duplicate IDs, mismatched dates — and walk away with a clean version you can build on.
when to reach for this
A file lands from your billing system, your bank, or your accounting tool, and it looks fine — until a total is off by a few thousand dollars and you can't say why. The export had blank rows, two charges with the same ID, and dates written three different ways. This is the on-ramp for every other Finance playbook: before you reconcile, model, or summarize anything, you make the file trustworthy. Five minutes here saves you defending a wrong number later.
gather this first
- The raw export exactly as it came out —
billing-export.csvortransactions.csv. Don't clean it by hand first; you want Claude to see the mess. - What you *think* it contains: roughly how many rows, the date range it should cover, and which column is the amount.
- A known anchor if you have one — e.g. "the bank says the May total was 118,400" — so you have something to reconcile against.
the workflow
-
Profile the file before touching it
Don't ask for totals yet. First make Claude describe the file back to you — row count, every column, the date range — so you confirm it's even the file you think it is before you build on it.
you askOpen billing-export.csv. Tell me how many rows there are, what each column means in one line, the earliest and latest date, and the total of the Amount column. Don't clean or change anything yet — just describe what's here.what you get back A profile: "1,248 rows; columns are Date, Charge ID, Vendor, Category, Amount; dates run 2026-05-01 to 2026-05-31; Amount column sums to 117,950." If the row count or date range is wrong, you grabbed the wrong export — stop here.
This "describe it back to me first" move is the highest-leverage habit in the whole system. It catches a wrong file before it costs you an afternoon.
-
Hunt for the three classic problems
Blank rows, duplicate IDs, and mismatched date formats are what silently corrupt a total. Name them explicitly so Claude looks for each, instead of giving a vague "looks mostly fine."
you askNow find the problems. List every blank or partially-empty row by row number, every duplicate Charge ID, and every date not written as YYYY-MM-DD. Give me a count of each and show the actual rows — don't fix anything yet.what you get back A defect list: "3 blank rows (lines 44, 902, 1,210); 2 duplicate Charge IDs (CHG-0815 appears twice); 14 dates written as MM/DD/YYYY instead of YYYY-MM-DD." Now you know exactly what's wrong, with line numbers.
-
Decide each fix out loud
Don't let Claude silently 'clean' the data — that's how a real charge disappears. Have it propose what to do with each problem and wait for your call before changing anything.
you askFor each problem, tell me what you'd do and why — drop the blank rows, keep or merge the duplicate IDs, standardize the dates — but don't apply anything yet. I want to approve each decision first. Flag any duplicate that might be a real second charge, not an error.what you get back A proposed-fix table you approve line by line: "Blank rows: drop (no amount). CHG-0815 duplicate: same date and amount — likely a true duplicate, recommend removing one, but confirm. Dates: convert all to YYYY-MM-DD."
-
Produce the clean file and re-verify
Apply the approved fixes, then re-profile so you can prove the cleanup didn't quietly lose money. The before/after total is your receipt.
you askApply the fixes we agreed on and save as billing-export-clean.csv. Then show me the before and after: row count and Amount total for each, and confirm the only difference is the rows we chose to remove.what you get back A clean
billing-export-clean.csvplus a reconciliation line: "Before: 1,248 rows / 117,950. After: 1,244 rows / 117,950 (removed 3 blanks + 1 duplicate worth 0 and 480 — the 480 was the dropped duplicate)." The total moved by exactly what you expected, or you investigate.If the total changes by an amount you can't explain, stop and look. An unexplained delta is the file telling you something.
make it your own
- **Excel instead of CSV:** export the sheet to
.csvfirst, or point Claude at the file and ask it to treat the first row as headers — the profiling steps are identical. - **Recurring same-shape export:** once the cleanup prompts work for your monthly billing file, save them as a
/clean-exportcustom command (see the Playbook's *Features* tab) so next month is one command, not four. - **Feed it straight into reconciliation:** a clean file is the input to *Reconcile two files, line by line* — never reconcile against an export you haven't profiled first.
watch out for
- Never let Claude clean silently. A row dropped without your say-so can be a real charge that vanishes — approve each fix, and verify the before/after total.
- A duplicate ID isn't always an error. Two identical charges can be a real double-billing or two legitimate line items — flag them, but a human decides which to remove.
- Keep sensitive financial data in your own approved workspace. Replace anything truly private with a
[placeholder]before pasting, and don't put account numbers into tools you don't control.
you'll end up with A clean, re-verified export with a documented before/after total — the trustworthy foundation every other Finance playbook builds on, and a number you can defend.