Skip to content
BookkeepKit

Remove Duplicate Bank Transactions

Find transactions that appear twice in a bank file, or that a new download repeats from one you already imported. Review each match, keep the real repeats, and download a clean file. Free and unlimited.

What to check

Drop a bank file here

CSV, Excel, QBO, QFX, OFX or QIF.

Processed in your browser. Your files never leave your computer.

How it works

  1. 1

    Choose one or two files

    One file to clean up, or an already-imported file plus the new one you're about to import.

  2. 2

    Review the matches

    Same amount, dates within a few days, similar description. Untick anything that's a genuine repeat.

  3. 3

    Download the clean file

    As CSV, Excel, QBO, QFX or OFX, ready to import.

Where duplicate transactions come from

  • Overlapping downloads: you exported January 1–31, then February 1–28 from a bank that dates transactions by posting day, and a transaction from January 31 shows up in both.
  • Bank feed plus file import: the bank feed was reconnected and pulled 90 days of history that you had already imported from statements.
  • Merged files: two people exported the same account, or a CSV was merged with itself by mistake.
  • Pending and posted entries: some exports include a pending card charge and later the posted one, with a slightly different description.

Before importing a new file

Use two-file mode. Put the file you already imported on the left (or an export of the account's register from your accounting software) and the new download on the right. Only the transactions that aren't already in the books remain, so the import can't double anything.

Cleaning a single file

One-file mode keeps the first occurrence of each transaction and flags the later copies. Check the flagged rows: if both are real, untick the copy and it stays in the file.

After the import

If duplicates already made it into QuickBooks, Xero or Wave, the fastest check is a reconciliation: the bank reconciliation tool compares the statement with the ledger and lists the entries that appear only on one side.

Frequently asked questions

How are duplicates detected?

Two transactions match when the amount is identical, the dates are within the range you choose (2 days by default), and the descriptions are similar once card numbers, reference codes and words like POS or ACH are ignored. In QBO, QFX and OFX files, an identical bank transaction ID is always a match.

Why allow a few days between dates?

Banks often show the authorization date in one export and the posting date in another, or move a weekend transaction to Monday. A small tolerance catches those without matching unrelated transactions.

What if two identical charges are both real?

That happens: two coffees, two tolls, a split payment. Every match is listed with the transaction it repeats, and you can untick it to keep it. In two-file mode, each transaction already imported can only match once, so two real coffees in the new file are both flagged only if the old file also had two.

Which files can I check?

CSV and Excel exports, and QBO, QFX, OFX and QIF files. The two files don't need to be the same format: you can check a new CSV against a QBO file you imported last month.

Does it change the balances?

If the file has an opening and closing balance, the opening balance is kept and the closing balance is recalculated from the transactions you keep.

Are my files uploaded?

No. Matching and the download both happen in your browser.

Guides