Switching / From Spreadsheets
Move off the spreadsheet without a rebuild.
Two hours is the honest estimate, and the first one goes on tidying the sheet you already have — one header row, one row per transaction, amounts stored as numbers. Import is free on every plan, and the preview shows you every row before a single one posts.
Before you start
Three decisions worth ten minutes each
This is the friendliest switch there is — no export screens, no file formats, no account to close. It goes wrong in only one way: an unclear starting point. Settle these three first.
Pick a clean cut-over date
The first of a month is good; the first of your tax year is better. Your sheet probably already has a natural break — the last month you totaled up and felt finished with. Use that one.
Decide how much history you actually need
If it is one tab of transactions, bring the lot. If it is five years across twelve tabs with three different layouts, bring this year and last, and keep the old file as reference. Nobody has ever regretted importing less history.
Keep the sheet read-only for a quarter
Do not delete it — but stop typing into it. Save a copy, rename it something you would never open by accident, and keep it as a fallback while you build trust in the new numbers. The risk here is not losing the file; it is quietly maintaining two.
The sequence
Seven steps, and four of them are tidying
A spreadsheet import almost never fails on the import. It fails on a merged cell, a date written two ways, or an amount stored as text. Spend the hour on the file and the rest takes minutes.
- 1
Work on a copy, never the original
Duplicate the file first and clean the duplicate. Everything below is destructive — deleting header art, unmerging cells, flattening formulas — and you want the original sitting untouched next to it while you do it.
- 2
One header row, one row per transaction
Delete the logo, the title row and the blank spacer rows above your data so the very first row is your column names. Unmerge every merged cell. If a single row describes two payments, split it into two. A computer reading your sheet has none of the context your eye supplies.
- 3
One idea per column — and no subtotals
Date, description, who it was with, amount, category. Delete monthly subtotal rows and running-balance columns; those are outputs, and Bokeping computes them from the transactions. If money in and money out live in two columns, that is fine — just keep it consistent all the way down.
- 4
Amounts as numbers, dates in one format
Strip currency symbols, thousands separators typed by hand, trailing spaces and footnote asterisks — a cell holding “$1,234.00 ” is text, not money. Write negatives with a minus sign rather than brackets. Then pick one date format, 2026-03-14 or 03/14/2026, and make the whole column match: a column mixing “4/5” with “April 5” is the single biggest source of flagged rows.
- 5
Export each tab as its own CSV, then import in order
One tab, one file, one import: customers and vendors first, then items, then transactions. Bokeping guesses which of your columns is which, shows the guesses over real rows, and writes nothing until you confirm. The report afterwards names every row as landed, skipped as a duplicate, or flagged with a reason — so fixing three bad dates and re-running the whole file is the normal workflow, not a restart.
How column mapping works - 6
Set your opening balance from a bank statement
An opening balance is what was true on the morning of your cut-over date. Take the bank statement covering that date and use the closing balance from the last line before it — the statement figure, not today’s app balance and not the available balance. Then list the invoices customers still owed you on that date, and the bills you still owed. Those three figures are the floor everything else is measured from, which is why they come from a statement rather than from the sheet you are replacing.
Financial statements in Bokeping - 7
Close the spreadsheet for good
Shadow copies die of a thousand “just this ones”. Two things end it: enter the next transaction only in Bokeping, and connect the bank feed — Plaid, read-only, included on every plan — so most entries appear without you typing them. Then rename the file to something ugly, move it out of your working folder, and set yourself a date after your first clean reconciliation when you stop opening it.
How bank feeds work
The honest inventory
What comes across, and what doesn’t
What comes across
Anything tabular. Customers, vendors, items, invoices, bills, bank lines — if it fits in rows and columns, it imports.
As much history as you care to bring. Years of transactions in one file. Duplicate detection means an overlap between two files lands once, so you can import in batches without fear.
Open invoices with what is still owed. If your sheet tracks who has paid, those balances come across as genuinely open invoices you can chase and settle — not as notes.
Bank history straight from the bank. Your bank’s own CSV export is a better source than your sheet for the bank side: it has every line, in the bank’s wording, with no typos. Import that rather than retyping.
Your description column. The notes you have been writing to yourself for years land as memo text, searchable, attached to the transaction they belong to.
Opening balances that hold. Posted as of the cut-over date so day one here agrees with the last day of the sheet — and so your first reconciliation has a floor to stand on.
What doesn’t
Formulas, and the reasoning inside them. Values import; formulas do not. A cell showing 1,240 that is really a SUM arrives as 1,240 and nothing else. Where a column was doing your accounting for you — allocating, prorating, accruing — that job now belongs to the ledger, so check the numbers those columns produced before you rely on them.
Color coding and highlighting. Yellow means “chase this” to you and nothing at all to a computer. Before you export, turn the colors into an actual column — a Status or Category value — or accept that the meaning stays behind with the fill.
Cell comments, notes and merged title rows. Anything living outside the grid is invisible to a CSV. If a comment holds something you need, move it into the description column first.
Pivot tables, charts and running balances. These are reports, not records. Bokeping regenerates the equivalents from the transactions themselves, which is the point — they can never disagree with the ledger the way a stale pivot can.
Receipts in the folder next to the sheet. Scans and PDFs stored alongside the file are not part of it. Attach the ones that matter to their transactions here, or keep the folder as your archive.
Whatever your side tabs were quietly doing. A payroll tab, a job-costing tab. Those are the ones to check before you assume the sheet is finished — see the note below. A tab per company is the exception: one login can hold several companies, each with its own books, so those tabs become separate sets of accounts rather than a problem.
Bokeping does not sell payroll, file tax returns, or do project and job costing. It also does not consolidate several companies into one set of accounts — you can run more than one company from a single login, each with its own books and its own plan, but the group roll-up still happens outside. If one of your tabs was doing that work, keep doing it where it is — a payroll provider such as Gusto or ADP, your filing agent, a consolidation sheet at group level — and post the resulting figures into Bokeping so the ledger stays complete.
A realistic week
Clean it Monday morning. Reconcile Friday afternoon.
Mon 9:00
Clean the copy
The whole job lives here: one header row, unmerged cells, numbers as numbers, one date format. An hour, once.
Mon 11:00
Import and map
One tab, one file. Confirm the column guesses in the preview, read the report, fix any flagged rows and re-run.
Mon 14:00
Opening balance, bank connected
The statement figure as of the cut-over date, plus what was owed each way. Then the feed — read-only, two minutes.
Tue
First invoice out
Numbered, taxed and tracked as a document you can chase — rather than a row you remember to look at.
Fri
First reconciliation
The week’s feed against the bank. This is the moment the spreadsheet stops being necessary.
Then keep the old file read-only for a quarter — and notice, somewhere around week three, that you have not opened it once.
While you are here
The three things people check next
What the importer actually does
The mapping preview, duplicate detection, and the report that gives every row a verdict with its row number.
CSV & QBO importSet up your books in an afternoon
The step-by-step for everything after the import: fiscal year, sales tax, first invoice, first close.
GuidesGive your accountant real books
Double-entry, an audit trail and period lock — 2 free accountant seats on every plan.
For accountantsFAQs
Fair questions about leaving the sheet
Keep it as a read-only fallback for a quarter, yes. Keep updating it, no — this is the one parallel run that reliably goes wrong, because a sheet is easy enough to edit that you will keep doing it, and then you have two records that disagree and no way to tell which one is right. Enter the next transaction here, and let the old file go quiet.
Perfectly normal, and easier from a spreadsheet than from anywhere else. Pick the first of a month and import the year to date so one place reports the whole year. If the earlier months are messy, import from the cut-over date only and keep the sheet as the record for the stub period — your accountant will simply add the two halves at year end.
You can, in about fifteen minutes: does the bank balance here match the statement, does the total customers owe you match your own list, does the total you owe match the bills in the drawer. If you would rather someone signed it off, invite your accountant — access is free on every plan, and they get a real double-entry ledger with an audit trail to inspect, which is exactly what a spreadsheet could never give them.
Nothing, ever. CSV import is included on every plan and the 14-day trial ($0, up to 5 users) covers a whole spreadsheet migration, so moving in costs no money at any point. Paid plans start at Starter, $19 a month, when you want Plaid bank feeds; Pro at $49 adds inventory and multi-currency, Business at $99 adds custom roles and approvals, and Advanced at $249 adds multiple branches and warehouses. Annual billing charges the price of ten months.
Switching from something else?From QuickBooks ·From Xero ·Switching overview ·Ask us first
Bring the spreadsheet in
CSV import is free on every plan, the preview shows you everything before it lands, and your file stays your file.
Ready to know your money?
We’re ready when you are. Free to start, up and running in minutes.