LedgerMatch

Why Your Bank Reconciliation Doesn't Balance (And How to Fix It)

Published

A reconciliation difference that will not go to zero usually has one of eight causes. Here is how to diagnose which one you are dealing with and fix it without starting over.

You have gone through every transaction. Everything looks matched. But the reconciliation difference is still not zero. This is one of the most frustrating situations in bookkeeping — and it almost always has a systematic cause that can be found and fixed without starting over.

Cause 1: Wrong Statement Ending Balance

The most common cause. You entered the current available balance instead of the statement ending balance, or you typed it with a transposition error (e.g. $1,243.50 instead of $1,234.50). Fix: re-enter the ending balance exactly as it appears on the bank statement — not the app balance, not the current balance.

Cause 2: Missing Bank Fee or Interest

Bank maintenance fees, wire fees, overdraft fees, and monthly interest charges all appear on the bank statement but are not automatically entered in your books. If the difference equals a round number like $12 or $25, look for a fee on your statement that was not recorded. Fix: add the missing fee as an expense entry.

Cause 3: Reversed Sign Convention

American Express, Discover, and Capital One credit card exports show charges as positive numbers and payments as negative — the opposite of a bank checking account. If you imported a credit card CSV without adjusting for this, every amount is wrong by twice its value. The total difference will equal twice the sum of all transactions.

Fix: re-import the file with the sign flipped, or multiply the Amount column by -1 in a spreadsheet before matching.

Cause 4: A Transaction Was Entered with the Wrong Amount

A single data entry error — $1,200 entered as $120, or $567.89 entered as $576.89 — will produce a difference equal to the difference between the correct and incorrect amount. Fix: sort both your bank and book transactions by amount and scan for rows where the amounts are close but not identical. The difference between the correct and incorrect entry will equal the reconciliation difference.

Cause 5: A Duplicate Entry

If the same transaction was entered twice in your books (common when using both a bank feed and manual entry), you have one transaction on the bank side matching two entries on the book side. The difference will equal the amount of the duplicated transaction.

Fix: search for transactions with identical amounts on the same or adjacent dates. Delete or void the duplicate — do not adjust the bank side.

Cause 6: A Previously Reconciled Transaction Was Modified

In QuickBooks or Xero, editing a transaction that was cleared in a prior reconciliation changes your current book balance without changing your previous reconciliation. This corrupts your beginning balance and causes a cascading difference. Fix: use the Audit Log to find the modified transaction, then restore it to its original amount and create a correcting entry for any legitimate changes.

Cause 7: Outstanding Items That Should Have Cleared

A check or deposit that was outstanding last month but cleared this month needs to be marked as cleared this month. If you accidentally left it outstanding (did not tick it), it remains unmatched and produces a difference. Fix: look at your list of outstanding items from the prior month and verify each one either cleared this month or is genuinely still outstanding.

Cause 8: Transactions in the Wrong Date Period

A transaction that occurred on January 31 but was posted by the bank on February 1 (or vice versa) can slip between reconciliation periods. If it was included in your January book close but appears on the February bank statement, it will show as unmatched in February. Fix: check transactions from the last 2–3 days of the previous month and the first 2–3 days of the current month for date boundary issues.

How to Find the Problem Systematically

  1. Note the exact difference amount and write it down.
  2. Search your transactions for a single entry equal to that amount — it may be missing from one side.
  3. Search for an entry equal to half the difference — this indicates a sign error.
  4. Search for two entries equal to the difference that cancel out — one may be a duplicate.
  5. Check for bank fees and interest that were not recorded.
  6. If none of the above: re-export both files and start the matching process fresh with a reconciliation tool that shows you exactly which rows are unmatched.

Frequently asked questions

What does it mean when a bank reconciliation is off by a small amount like $0.01?

A difference of $0.01 or similar tiny amounts is almost always a rounding error. Some banks round transaction amounts differently than your accounting software. Fix it by adding a rounding journal entry, or use ROUND(amount, 2) in your matching formula to prevent it from appearing.

My bank reconciliation is off by exactly the same amount every month — what does that mean?

A consistent monthly difference usually means a recurring transaction is being recorded at the wrong amount, or a recurring fee is not being recorded at all. Check your monthly bank fees and compare them to what is being entered in your books. A $0 difference one month followed by a $15 difference the next often points to an intermittent bank fee.

Can I force a bank reconciliation to balance by adding a journal entry?

Technically yes, but it is bad practice unless you have identified and documented the reason for the difference. A forced reconciling entry hides the underlying error rather than fixing it. The correct approach is to find the cause, correct the entry, and then reconcile cleanly.

Explore related resources