spend
$0.00
example month

How much did I spend this month?

That's the whole product. One number, read from your real bank transactions — and the categories underneath it that always add up to it. No budgets, no envelopes, no net-worth charts.

Early access to the hosted version. No card. One email when it opens.
Optional — how do you track spending today?
Optional — what would you pay a month for it hosted?
The local tool is free and open source — it already runs today.

Every number adds up

Most finance apps show you a total you can't check.

This one shows the arithmetic. Money left your accounts; some of it was spending and some of it wasn't. Card payments, transfers between your own accounts, and money friends paid you back get peeled off — visibly, with amounts — and what remains is the number.

Actual cash out$3,795.60
Card payments$612.40
Internal transfers$1,650.00
Paid back by a friend$52.10
+Annual charge, spread over 12 months$120.00
=Total spent$2,423.50

"Actual cash out" always reconciles with your bank statement. It's the one line you can verify by hand. Spreading a charge across months moves the headline number; it never touches that line.

It already runs

A working tool, not a mockup.

spend exists as a local program for macOS: Python standard library only, no pip install, bank credentials in the Keychain, transactions in a JSON file on your disk. It has a terminal interface and a local web interface, and it is MIT licensed.

$ spend

September 2026  ·  14 day(s) in · 16 day(s) left

  Total spent                   $2,423.50
    Offset by transfers in        -$52.10   1 item(s) — reimbursements, refunds
    of which amortised            $120.00   from 1 spread charge(s)
  Actual cash out               $3,795.60   ← reconciles with your bank
  Daily average                   $134.64
  At this rate, month end       $4,173.84

  Housing           $1,650.00   ████████████████████   68.1%
  Groceries           $239.30   ██                      9.9%
  Shopping            $138.00   █                       5.7%
  Other               $120.00   █                       5.0%
  Dining               $66.30                           2.7%

  Excluded   card payments $612.40 · internal transfers $1,650.00
spend local web interface: the month's total, the categories that add up to it, and the excluded rows

But "local" comes with three pieces of homework: a terminal, a Python runtime, and a SimpleFIN Bridge subscription ($15/year) that talks to your banks. The hosted version deletes that homework.

What hosting changes

Connect a bank in a browser

No terminal, no Keychain, no SimpleFIN signup of your own. You authorise your bank once and it syncs from then on. Same rails the local version uses.

The number comes to you

An email with the month's total and where it went — on the 1st, or whenever you ask. There's a page to open if you want to dig, but you don't have to log into anything to get the answer.

Leaving is one click

Export everything as JSON or CSV, then delete the account and the archive. No retention maze, no "contact support to cancel".

What hosting costs you

Your data stops being only yours. That's the real price.

The local version's whole pitch is that nothing leaves your machine. Hosted gives that up, so it has to earn it back — and these are the rules it would run under, not aspirations:

Read-only, one hop

Bank access is read-only through SimpleFIN, the same bridge the local version uses. Transactions are stored to produce your report and for nothing else.

The model sees names, never numbers

Automatic merchant categories send the merchant name and nothing else: no amounts, no dates, no balances, no account numbers. You can turn it off and name merchants yourself.

One customer, one revenue line

No ads, no selling or sharing data, no "offers", no credit-card referrals. If it isn't paid for by the subscription, it isn't in the product.

Pricing isn't decided. The waitlist gets asked first — that's what the last question in the form is for.

What it won't do

The restraint is the feature.

No budgets. No envelopes. No savings goals. No net-worth or investment tracking. No multi-currency. No "your money personality". A tool you don't have to keep up with is one you'll still be using in a year — and the reason the number can be trusted is that the product does one thing.

Waitlist

One email when it opens.

Nothing else, ever. If it doesn't ship, you hear that too.

We store your email and your optional answers, nothing else.