Sign up to sync your progress
Create a free account to save your tool results and track progress across devices.
Create a free account to save your tool results and track progress across devices.
Upload a bank CSV or paste your transactions. We'll strip the jargon, categorise every line, and let you download a clean Excel file.
🔒 Local Processing Enabled
Your bank data never leaves your computer. We don't see it, we don't save it, and once you close this tab, it is gone forever. Everything is processed in your browser using client-side JavaScript — zero server interaction, zero network requests.
Curious about how we keep your data local?
Drop your bank statement CSV here, or click to browse
Supports CSV and TSV files from most UK banks
A plain-English explanation of exactly how the Statement Cleaner keeps your bank data private.
The "brain" runs on your machine
When you upload or paste a bank statement, the file never leaves your device. The parsing engine — powered by PapaParse — runs entirely inside your browser's JavaScript runtime. Think of it like a calculator app on your phone: the maths happens on the device itself, not on a server somewhere.
Your browser downloads the tool's code once (just like any webpage), and from that point on, every CSV column, every transaction description, and every category match is processed in your browser's temporary memory. No API calls, no cloud functions, no serverless endpoints. The data physically cannot reach us because we never wrote the code to send it.
Our database never touches your raw statements
DaysBack uses Supabase for user accounts and saved debt data — but the Statement Cleaner is deliberately disconnected from that pipeline. There is no database table for statement data, no storage bucket for uploaded files, and no API route that accepts transaction payloads.
Even if a determined attacker compromised our server, they would find zero statement data because we never collected it in the first place. This isn't a policy decision that could be reversed — it's an architectural constraint baked into the codebase.
Closing the tab physically deletes your data
Your transactions are held in React component state — your browser's temporary memory. This is not localStorage, not IndexedDB, not a cookie. It's volatile RAM that exists only while the tab is open.
The moment you close the tab, navigate away, or hit "Clear Data & Reset", the browser's garbage collector reclaims that memory. There is no residue on disk, no cache to clear, and no "recently viewed" history. The data is gone — permanently and irrecoverably.
Verify it yourself in 60 seconds
You don't have to take our word for it. Here's how to confirm that no data leaves your browser:
If you see any request containing transaction data, that would be a bug — and we'd want to know about it immediately. But you won't, because the code to send it simply doesn't exist.