CleanStatement

Privacy: your statement never leaves your browser

CleanStatement is built so that your bank statement never leaves your device. This page describes precisely what happens to your data, what is stored, and what is never transmitted anywhere.

Your statement is never uploaded

When you drop a file onto CleanStatement, it is read by your browser using the local File API. Parsing the PDF, detecting the bank, cleaning the rows, verifying balances, classifying transactions and generating the downloadable Excel all happen in JavaScript running in your tab.

There is no upload endpoint for statements. The site is served as static files, and the PDF worker is bundled locally rather than fetched from a CDN, so no external service sees your document either. You can confirm this yourself: load the page, disconnect from the internet, and clean a statement — every feature still works.

What is stored, and where

A small amount of data is kept in your own browser's local storage. None of it is transmitted:

  • Classification rules you teach, so they apply to future statements.
  • A license token, if you hold a paid license.
  • Interface preferences such as your chosen accounting export format.

Accounts and payments

Signing in is optional and is only needed to carry a paid license across devices. If you create an account, your email address and subscription status are stored by our authentication provider — but your statements are not, because they are never sent there.

Payments are handled by Razorpay. Card and banking details are entered on Razorpay's own checkout and are never seen by CleanStatement.

Contact

Questions about privacy or data handling can be sent to support@cleanstatement.in.

Related guides