Bank reconciliation sounds more complicated than it is. At its core, you're just confirming that what you think you spent matches what your bank says you spent.
Google Sheets is a solid place to do this, especially if your transaction data is already there. This guide walks through the full process, from pulling in your data to flagging discrepancies, with formulas you can use today.
What Bank Reconciliation Actually Is
Reconciliation is the process of matching two sets of records:
- Your internal records: what you've logged, categorized, or tracked in your spreadsheet
- Your bank statement: the official record of every transaction your bank processed
When they match, you're reconciled. When they don't, you have something to investigate: a missing transaction, a duplicate entry, a bank error, or a timing difference.
For personal finance, reconciling monthly catches overspending, missed subscriptions, and fraudulent charges before they compound. For small businesses, it's essential for accurate books.
Step 1: Get Your Transaction Data Into Google Sheets
You have two options:
Option A: Manual CSV import. Download a CSV from your bank's website and paste it into a sheet. Works, but tedious, especially if you have multiple accounts.
Option B: Sync with SheetLink. SheetLink connects your bank via Plaid and syncs transactions directly into Google Sheets. One click, all accounts, no CSV wrangling.
Tip
SheetLink's Free plan syncs the last 7 days of transactions. Pro ($49/year) syncs up to 2 years of history across all accounts, useful when reconciling older periods.
Once your transactions are in, you should have columns for at minimum: Date, Description, Amount, and Account.
Step 2: Set Up Your Reconciliation Sheet
Create a new tab called Reconciliation. You'll build a simple structure:
| Opening Balance | [enter from bank statement] |
| + Deposits | [formula] |
| - Withdrawals | [formula] |
| = Closing Balance| [formula] |
| Bank Balance | [enter from bank statement] |
| Difference | [formula: should be $0.00] |
The goal: Difference = $0.00. If it's not, you have something to find.
Step 3: Calculate Deposits and Withdrawals
Assuming your transactions are on a sheet called Transactions with dates in column F and amounts in column M (Plaid's sign convention: positive = withdrawal, negative = deposit):
Total deposits for a period:
=-SUMIF(Transactions!M:M,"<"&0)
Total withdrawals for a period:
=SUMIF(Transactions!M:M,">"&0)
Filter by date range (e.g. March 1–31):
=-SUMPRODUCT((Transactions!F2:F>="2026-03-01")*(Transactions!F2:F<="2026-03-31")*(Transactions!M2:M<0)*Transactions!M2:M)
SheetLink writes dates as text (YYYY-MM-DD), so compare them to text dates in the same format. Text in that format sorts in date order, so >= and <= work.
Adjust the sheet name and column references to match your actual data.
Step 4: Flag Unmatched Transactions
Add a Cleared column at the end of your transactions sheet. Mark each transaction as Y once you've confirmed it appears on your bank statement.
Use conditional formatting to highlight uncleared rows:
- Select your transaction range
- Format → Conditional formatting
- Custom formula:
=$AI2<>"Y"(where AI is your Cleared column) - Set a highlight color
Any row still highlighted at month end needs attention.
To count uncleared transactions:
=COUNTIF(Transactions!AI:AI,"<>Y")
Step 5: Investigate Discrepancies
If your closing balance doesn't match the bank, common culprits are:
- Timing differences: a check you wrote hasn't cleared yet (normal, note it)
- Missing transactions: a charge didn't make it into your sheet
- Duplicates: the same transaction imported twice
- Data entry errors: wrong amount, wrong sign
Sort your transactions by amount descending to spot large outliers quickly. Use Ctrl+F to search for specific merchants or amounts.
Find duplicates by transaction ID (if using SheetLink data):
=COUNTIF(Transactions!A:A, A2)>1
Flag any row where this returns TRUE.
Step 6: Lock the Period
Once reconciled, protect the sheet range for that period so it can't be accidentally edited. In Google Sheets:
- Select the reconciled rows
- Right-click → Protect range
- Set permissions to "Only you"
This gives you a clean audit trail: each month's data is locked once confirmed.
Automating the Data Side with SheetLink
The most time-consuming part of reconciliation is getting accurate, complete transaction data. SheetLink removes that friction.
Once connected, syncing pulls every transaction from all your linked accounts directly into your sheet: categorized, dated, and deduplicated. You skip the CSV step entirely and go straight to the matching.
SheetLink Pro
Every bank you connect, two years of history, and Excel as well as Google Sheets.
Full refund within 14 days. Cancel anytime.
The Formula Cheat Sheet
| Task | Formula |
|---|---|
| Total deposits | =-SUMIF(M:M,"<"&0) |
| Total withdrawals | =SUMIF(M:M,">"&0) |
| Count uncleared | =COUNTIF(AI:AI,"<>Y") |
| Net change | =-SUM(M:M) |
| Deposits in date range | =-SUMPRODUCT((F2:F>=start)*(F2:F<=end)*(M2:M<0)*M2:M) |
| Flag duplicates | =COUNTIF(A:A,A2)>1 |
Bottom Line
Bank reconciliation in Google Sheets comes down to three things: clean transaction data, a simple balance summary, and a cleared flag on each row. With those in place, reconciling monthly takes 15 minutes instead of an afternoon.
If pulling transaction data is the bottleneck, SheetLink handles that part, so you can spend your time on the actual review, not the data prep.
Questions
What does it mean to reconcile a bank statement?
Reconciling means verifying that the transactions in your records match what your bank shows. You're confirming every deposit and expense is accounted for and that your ending balance matches the bank's.
Can you reconcile bank statements in Google Sheets?
Yes. Google Sheets works well for bank reconciliation, especially when your transaction data is already there. You can use SUMIF, filters, and conditional formatting to flag discrepancies quickly.
How do I get my bank transactions into Google Sheets automatically?
SheetLink connects your bank via Plaid and syncs transactions directly into Google Sheets with one click. No CSV downloads, no copy-pasting.
How often should I reconcile my bank statements?
Monthly is standard for most people and small businesses. Weekly works better if you have high transaction volume or want to catch issues sooner.
What's the difference between a bank statement and a bank reconciliation?
A bank statement is what your bank shows you. A reconciliation is the process of matching your internal records against that statement to confirm they agree.