Ledgerly vs spreadsheets

Where the spreadsheet stops

Most small businesses start in Excel or Google Sheets, and they are right to. A grid is free, it is already open, and it will do anything you can describe. This page is about the point where “anything you can describe” becomes the problem — and it is honest about the businesses that have not reached it.

What spreadsheets are genuinely good at

A comparison that pretends otherwise is not worth reading, so this part comes first.

They cost nothing

A grid you already have, on a licence you already pay for. For a business raising six invoices a month, any subscription is a worse deal than a tab named Invoices.

They do exactly what you say

A margin rule that only makes sense in your trade is one formula away. No product will ever be faster at the calculation nobody else needs — including this one.

Everybody can already use one

No training, no onboarding, no roles to assign. Hand somebody a sheet and they are useful inside a minute, which is not true of any ERP ever written.

The file is yours

It sits in a folder, opens in several different programs, and will still open in ten years. That is a real property and it is worth naming out loud.

Five things that go wrong, roughly in this order

Not on day one. Usually somewhere between the fiftieth invoice and the first time somebody asks what the stock on the shelf is worth.

Nothing cross-checks anything

A sheet records one side of a transaction: an amount, in a row. Double-entry records both sides, and the requirement that they agree is the check. Without it a mistyped total is simply the new total — there is nothing for it to fail against.

Stock and invoices drift apart

The sales tab says you sold forty; the stock tab still shows sixty because nobody deducted them that day. Each sheet is internally consistent and they describe different businesses. By the time somebody counts the shelf, the gap is months old and cannot be attributed to anything.

Nobody knows who changed what

Version history tells you a cell changed. It rarely says why, it is per file, and it does not survive being copied into a new one. When last quarter’s revenue reads differently this quarter, there is no answer to who edited it and when.

Formulas break silently

A row inserted above a SUM. A range that stops one line short. A value pasted over a formula. Nothing turns red — the number just becomes wrong while staying plausible, which is the worst failure a number can have.

accounts_final_v3_FINAL.xlsx

Two people needed the file at once, so somebody took a copy, and now there are two truths and a naming convention doing the work of a database. In a shared sheet the copy is a tab instead, but nobody can still say which one is the books.

The first one is the root of the other four. Why two entries catch what one cannot →

Side by side

Six of these rows go to the spreadsheet and one goes to neither of us. Those are the ones worth reading first.

What you are trying to doSpreadsheetLedgerly
What it costsbetterNothing, or it is bundled with software you already pay for.A Free plan, then $49.00 a month for a small team — after 14 days of everything.
Does anything check the arithmeticNo. The total is whatever the formula returned this morning.betterEvery document that moves value posts a balanced journal entry, unique per document. An entry that does not balance is not written.
A calculation nobody else needsbetterType it into a cell and it is done.Not possible. There are no formula cells and no scripting. This row is not close.
Stock on hand, and what it is worthTwo tabs kept in step by hand, plus a count when the difference gets frightening.betterQuantities per warehouse over an append-only movement ledger, at weighted moving-average cost. The stock valuation report reconciles to the inventory account.
Cost of goods soldWhatever is typed in the column, usually last year’s cost.betterCosted out at the average in force when the goods left, in the same transaction that moved them.
Forecasts, budgets and what-ifsbetterExactly what a grid is for. Copy the column, change the growth rate, look.Ledgerly records what happened. It does not model what might, and it is not trying to.
Who changed this, and whenVersion history, per file, until somebody makes a copy.betterAn audit trail on every confirmation, posting, payment and settings change.
Locking a month you have closedA protected sheet, which anyone with the password unprotects.betterClose the period and nothing can post into it — not a correction, not an administrator.
Correcting a document that was wrongDelete the row. The old number is gone and so is the evidence.betterVoiding books a reversal. The mistake and the correction both stay on the record.
RoundingBinary floating point, shown to two places and stored to rather more.betterDecimal columns, arithmetic in whole minor units. No float goes near an amount.
Three people working at onceA shared sheet copes well. Everyone who can edit can edit everything.betterSeven roles with write access gated per module, so the person raising a purchase order need not be the person recording that it was paid.
Working with no connectionbetterFine, if the file is on the machine in front of you.It is a web application. No connection, no access.
On a phonebetterBoth Excel and Sheets have real mobile apps.There is no mobile app, and a dense accounting table is a dense accounting table on a small screen.
Handing your data to somebody elsebetterIt is already a file. Attach it to an email.There is no import and no export. Your books stay visible and readable in the app, but you cannot hand anyone a file.
Taking a card paymentNo.No. There is no payment processing here either — you record that the money arrived, not the transaction that moved it.

Costing is the row people underestimate. How weighted moving average actually behaves →

Stay on spreadsheets if…

There is no version of this page where the answer is always us. Any one of these is a good reason to close the tab and go back to work.

  • You raise a handful of invoices a month and hold no stock. A tab and a good accountant is a complete system, and a cheaper one.
  • Somebody else already keeps your books. If the double-entry is being done properly elsewhere, the thing Ledgerly is best at is covered.
  • What you mostly do is model. Pricing scenarios, budgets, next year’s plan — a grid is the right tool for all three.
  • Your process changes every month. A spreadsheet bends; an ERP has opinions about what a delivery is and when stock moves.
  • You need one calculation, not a system. Do not buy a general ledger to work out commission.
  • You cannot count on being online when you need to raise the invoice.

If two or three of those stopped being true this year, that is the signal — not the number of invoices.

Moving over, without the marketing version

There is no importer. That is the largest single cost of switching, so it goes at the top rather than in a footnote.

Start at a period boundary

The first day of a month or a quarter. Everything before it stays in the spreadsheet as history, so nothing has to be entered twice and there is a clean line between the two systems.

Type the opening position

Products, customers and suppliers by hand. One opening journal entry for the balances. A stock count to set the quantities on hand, which books the difference as a gain or a loss like every other count.

Then stop maintaining the sheet

The typing is not the hard part. The hard part is the month you keep both, find they disagree, and have to decide which one is real. Decide in advance that it is the ledger.

A lapsed trial does not undo any of it: the account becomes read-only and every document and journal entry stays exactly where it is. What each plan allows →

Raise one invoice and look

Signing up installs a chart of accounts wired to the posting rules, a warehouse, a tax rate and document numbering. Enter one sale and open the trial balance. Whether that is worth leaving a sheet for is a question you can answer in ten minutes.

Create your company

Or read how one database holds many companies first, or go back to the short version.