What double-entry actually means, in five minutes

Double-entry bookkeeping means recording every transaction in two accounts rather than one — where the money came from and where it went — so that the two sides of every entry cancel to zero.

Diagram: one wide rectangle labelled ONE ENTRY with a single arrow leaving it, beside two stacked rectangles marked plus and minus and bracketed together, labelled TWO ENTRIES; below, a beam balanced level on a triangular fulcrum with an amber weight on each pan, labelled IT MUST BALANCE.
ONE ENTRY BECOMES TWO — THE FACTS OF THIS PLATE ARE IN THE TEXT

Ask an accountant what double-entry is and the word “credit” arrives within ten seconds, followed by “debit”, and by then most people have quietly decided this is not for them. It is a genuinely simple idea buried under five hundred years of vocabulary.

Here is the idea without the vocabulary.

Money never appears; it only moves

A single-entry system — which is what your spreadsheet is — records that $49 left. Double-entry records that $49 left the bank and arrived at software. Same event, two ends.

Because you always write both ends, and because you write one as positive and the other as negative, every transaction sums to zero:

2026-08-11 * "Figma" "Monthly subscription"
  Expenses:Software       49.00 USD
  Assets:Bank:Checking   -49.00 USD

That is the whole system. 49 + (-49) = 0. If it does not come to zero, you have described something impossible and the file should refuse it.

Five kinds of place, and only five

Every account you will ever open is one of these. There is no sixth.

TypeWhat it isExample
AssetsThings you haveAssets:Bank:Checking
LiabilitiesThings you oweLiabilities:CreditCard
IncomeWhere money comes fromIncome:Consulting
ExpensesWhere money goes to dieExpenses:Software
EquityWhat is left over, and where you startedEquity:Opening-Balances

A chart of accounts is just a list of these with useful names. It is not an exam. You can open Expenses:Software today and split it into Expenses:Software:Design next year when the question actually comes up.

The one part that feels wrong at first

Getting paid looks like this:

2026-08-04 * "Northwind Ltd" "Invoice 038"
  Assets:Bank:Checking    2000.00 USD
  Income:Consulting      -2000.00 USD

Income is negative. Everyone stumbles here, and the fix is to stop reading the sign as “good or bad” and read it as direction. Money flowed out of Income:Consulting and into the bank. The income account is the source, so it drains. Over a year, your income account holds a large negative number, which is the correct sign for a business that is doing well.

That is also all “credit” and “debit” ever meant. Debit is the positive side, credit is the negative side, and the words carry four centuries of baggage for no benefit. You can do this entire discipline without ever saying them.

More than two places is still double-entry

The name is misleading. An entry can touch three accounts, or nine — the rule is that they sum to zero, not that there are exactly two:

2026-08-04 * "Northwind Ltd" "Invoice 041"
  Assets:Bank:Checking    2200.00 USD
  Liabilities:SalesTax    -200.00 USD
  Income:Consulting      -2000.00 USD

You billed 2,000, collected 2,200, and 200 of that is not yours — it is tax you are holding for someone else. Single-entry cannot express that at all, which is why people who bill with tax on top end up with a bank balance they are afraid of.

What the rule buys you

Three things, and they are the reason this survived since 1494.

Arithmetic errors cannot hide. A number typed in one place and not the other does not balance, so it announces itself. The classic DIY bookkeeping failure — a figure that is right in the summary and wrong in the detail — becomes structurally impossible.

Questions become answerable. “What did I spend on software this year” and “how much am I owed” are the same query against the same structure. In a spreadsheet they are two different afternoons.

The books describe reality, not cash. Cash in the bank is one account among many. An invoice you have sent and not been paid for is real, and double-entry has somewhere to put it.

Where the writing happens

The part nobody enjoys is deciding which second account a transaction belongs to, forty times a month. That is the part worth handing over.

  • The agent reads a statement or a receipt and writes both sides of the entry. Shipped
  • Every write is checked before it is committed, so an entry whose postings do not sum to zero is rejected rather than saved. Shipped
  • Anything it cannot classify confidently is flagged ! and left pending rather than guessed. Shipped

The rule stays the rule. You just stop being the one who types it.

The honest edge

Knowing what double-entry is does not make it automatic, and a post explaining the idea should be clear about what still lands on you.

  • You still make the judgement calls. Whether a laptop is an expense or an asset, whether a client dinner is deductible where you live — the ledger will record either answer faithfully and has no opinion about which is right.
  • There are no bank feeds, and none planned. Not built Something has to bring the transactions in, and today that is a file you export.
  • The deterministic importer is still being built. Building Reading a CSV works because the model reads it, which means two runs over the same ambiguous column can differ.
  • No payroll, no tax filing. Not built This is a book of record. It does not submit anything to anyone.