Stop re-typing bank statements.
BalanceCrunch turns PDF statements into pre-coded, spreadsheet-ready transactions — for the clients who will never touch QuickBooks.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| Date | Description | Debit | Credit | Account | |
| 1 | 2025-07-02 | UBER CANADA/UBE #4498291 | 12.94 | 6210 — Travel | |
| 2 | 2025-07-02 | UBER CANADA/UBE #4498312 | 55.21 | 6210 — Travel | |
| 3 | 2025-07-02 | A W #5516 MONTREAL | 5.74 | 6060 — Meals & Ent. | |
| 4 | 2025-07-02 | COUCHE-TARD #1 _M | 7.58 | 6215 — Fuel | |
| 5 | 2025-07-03 | TIM HORTONS #26 M | 12.86 | 6060 — Meals & Ent. | |
| 6 | 2025-07-03 | STRIPE PAYOUT #ch_3QfT2 | 1,284.00 | ||
| 7 | 2025-07-03 | BELL CANADA 8778824 | 112.40 | — | |
| 8 | 2025-07-04 | SQ *BLUE DOG BAKERY | 18.25 | 6060 — Meals & Ent. |
Your best client is a nightmare to close.
The influencer, the freelancer, the corner cafe — they hand you a stack of PDFs and say “figure it out.” You charge triple for those clients. You still dread the email.
You type the same Uber line forty times a month.
Every statement, every client. Muscle memory for a job that should have been over in 2015.
QuickBooks isn't the answer — your client won't use it.
They tried. They canceled. The statement PDFs keep arriving. Telling them to try again isn't a strategy.
Generic OCR tools extract garbage you can't trust.
Dates in the wrong column, split transactions merged, totals that don't reconcile. You end up re-keying anyway.
Your coding decisions don't carry over.
You coded “SQ *BLUE DOG” as Meals last month. And the month before. And the month before. Nothing remembers.
Three steps. No onboarding calls. No client meetings.
Set up a client in 90 seconds. Drop their PDFs in. Review and export. The tool learns your coding as you go — every rule was made by you, in a clear moment.
Drop the PDFs in.
Digital or scanned. Single file or forty. TD, RBC, Chase, Wells — the bank is auto-detected. Statement period, account numbers, and running balance come along for free.
Transactions arrive coded.
Extracted rows land in a spreadsheet that works like Google Sheets. The Account column auto-fills from rules you've taught once — per client, deterministic, inspectable.
Export to your tax software.
CSV, Excel, QBO, or a formatted PDF report grouped by account. Paste straight into Xero, QuickBooks, your tax software, or whatever your firm runs on.
A spreadsheet that actually feels like a spreadsheet.
Not a table pretending. Tab moves right. Enter moves down. Paste from Excel works. Formulas work. Drag-fill works. You already know how to use it.
- Range selection, copy / cut / paste, keyboard navigation — all the muscle memory intact
=SUM,=AVERAGE, cell arithmetic, drag-fill patterns- Sort, filter, freeze, resize and reorder columns
- Per-sheet custom columns — add “Vendor” or “Billable” without touching a schema
| Date | Description | Amount | Account | |
|---|---|---|---|---|
| 1 | 07-02 | UBER CANADA/UBE | 12.94 | 6210 — Travel |
| 2 | 07-02 | A W #5516 MONTR | 5.74 | 6060 — Meals |
| 3 | 07-03 | TIM HORTONS | 12.86 | 6060 — Meals |
| 4 | 07-04 | SQ *BLUE DOG | 18.25 | 6060 — Meals |
| 5 | 07-04 | =SUM(D1:D4) | 49.79 | — |
| 6 | 07-05 | COUCHE-TARD #1 | 7.58 | 6215 — Fuel |
Teach it once. It’ll remember for every statement after.
The first time you code a vendor, a small modal asks if you want to save the rule. That’s it. No ML, no confidence scores, no “90% sure” guessing — every rule was created by you, in a clear moment, and you can inspect or change any of it.
- Match by contains, starts with, or exact— pattern pre-filled, IDs stripped
- Direction-aware: a Stripe debit and a Stripe credit can map to different accounts
- Per-client, not global — your judgment for Riverbend Cafe is not your judgment for Howell Dental
- Override an auto-fill and a smaller modal asks: update the rule, delete it, or treat as one-off
We’ll auto-fill future transactions that match. You can edit or delete the rule anytime.
Proper double-entry semantics. Per client. Not a dropdown of strings.
Cells don’t store “Meals” as free text — they store an account_id pointing into the client’s Chart of Accounts. Archive an account and your historical reports don’t break. Rename it and every past transaction updates.
- 45-account small-business default, auto-provisioned for every new client
- Firm-level templates — customize once, apply to every future client
- Typed accounts: Asset, Liability, Revenue, COGS, OpEx — normal balance stored per account
- Clean mapping to QB / Xero when you’re ready (we aren’t, yet, on purpose)
One flat fee. Unlimited clients.
Priced per firm, not per client, not per statement. Start free — 7 days or 25 pages, whichever comes first, no credit card. Hit your cap, add a plan, keep going.
Starter
Solo bookkeepers getting started
$30/mo
Billed monthly · cancel anytime
- Unlimited clients
- 400 statement pages / month
- Full auto-coding + rules
- CSV + Excel export
- Email support
Professional
Growing practices
$60/mo
Billed monthly · cancel anytime
- Everything in Starter
- 1,000 statement pages / month
- Priority processing
- Client portal (free client logins)
- QBO export
Business
Multi-staff firms
$99/mo
Billed monthly · cancel anytime
- Everything in Professional
- 4,000 statement pages / month
- Team members + roles
- Activity log
- Advanced reports (Income Stmt, Balance Sheet)
Enterprise
Large firms & networks
Let’s talk
Annual contract · custom scoping
- Unlimited pages
- Custom integrations
- Firm-level dashboards
- SSO (SAML / OIDC)
- SLA + dedicated support
Practical answers.
Is this a replacement for QuickBooks or Xero?+−
No, and that's the point. BalanceCrunch is for the clients who will never use QB or Xero — the ones who ship you a folder of PDFs every month. If a client does use QB, keep using QB. We don't want to displace it; we want to take the ugly pre-accounting work off your plate for the clients it can't help you with.
How accurate is the extraction?+−
Digital PDFs extract near-perfectly. Scanned PDFs are OCR'd and then validated by a second pass that reconciles extracted totals against the statement summary. Mismatches are flagged at the top of the sheet before you review — you'll never silently ship wrong numbers.
How does auto-categorization actually work? Is this “AI”?+−
It’s rules, not a model. The first time you code a vendor, a modal asks if you want to save the rule (contains / starts with / exact). After that, matching rows auto-fill on focus. No ML, no confidence scoring, no silent background learning. Every rule was made by you, and you can edit or delete any of them from the rule management page.
What about multiple staff in my firm?+−
Business and Enterprise plans include team members with owner, admin, editor, and viewer roles. You can scope staff to specific clients and see an activity log of who changed what. Sheets are single-editor — the person currently editing is shown at the top, and anyone on the team can click "Take over editing" to pick it up.
Where are uploaded statements stored?+−
On Cloudflare R2, encrypted at rest. You choose the retention policy during onboarding: delete on successful extraction, keep 90 days, or keep indefinitely. You can change it anytime in firm settings.
Can my client upload their own statements?+−
Yes — on Professional and above, each client gets a free portal login. They upload PDFs, those documents appear in your workspace under their record, and you get a notification. They can't see other clients or firm-level data.
Do I need to sign a contract?+−
Only for Enterprise. Every other tier is month-to-month, cancel anytime from your billing portal. Yearly saves 20% if you'd rather pay once.
Close a client’s month in five minutes.
Seven days, or twenty-five statement pages, whichever comes first. No credit card. If it doesn’t cut your pre-accounting time in half, don’t pay us.