Self-hosted budgeting

Every cent, in your
own database.

A budgeting app you run yourself. It adds up, it never sells you anything, and it tells you what is safe to spend before the next payday.

Net worth · all accounts€0.00
Typed in the way you would say it: coffee 4.80 wallet
Today
SalaryMonthly · Bank 1
+€2,400.00
GroceriesMaxima · Bank 1
−€41.20
TransferBank 1 → Savings 1
€300.00
Car loanInstallment 14 of 36 · Bank 1
−€118.40
CaffeineCoffee · Wallet
−€4.80
Transfers

A transfer is one line, not two.

Move money between your own accounts and most apps count it twice: once out, once in, both as spending. FinAss books it as one row and keeps it out of every total that matters.

TransferBank 1 → Savings 1
€300.00
Savings 1what other apps show
+€300.00
Bank 1and count as spending
−€300.00

Cross-currency transfers carry their own rate and fee. The two balances stay exact.

MonthInstallmentInterestPrincipalLeft
Aug 2025€118.40€14.50€103.90€3,373.10
Sep 2025€118.40€14.07€104.33€3,268.77
…
Sep 2026€118.40€8.66€109.74€1,968.03
Oct 2026 · due 20th€118.40€8.20€110.20€1,857.83
Nov 2026€118.40€7.74€110.66€1,747.17
Jul 2028€118.40€0.49€117.91€0.00
Loans

Your loan knows what month it is.

Enter the principal, the rate, the term and the day it is charged. FinAss amortises it, flat or reducing, shows this month's installment on the forecast, and marks it paid when the real payment lands.

Budgets

Budgets that empty, not fill.

A ring starts full and drains as you spend, so a glance answers how much is left, not how much is gone. Past the limit, the overrun grows in red. A default budget carries into every new month; past months are never rewritten.

€165
of €240
Groceries€75 left
€118
of €120
Going out€2 left
€190
of €140
Bills & Subs€50 over
Safe to spend · until 25 Oct €612.40
€2,732.00 in cash and accounts, minus what is still due before payday.
15 Oct · Telia−€20.00
17 Oct · Netflix−€12.99
20 Oct · Car loan−€118.40
25 Oct · Salary+€2,400.00
Safe to spend

One number before payday.

Cash and accounts, minus every bill and installment still due before the next income. Nothing predicted, nothing averaged. A bill you have not paid stays on the list as overdue until you do.

−€12.00 Lunch · Card · Going out · from last time

Your data

Postgres you can read without us.

Every row lives in a plain Postgres database with plain columns. Export the whole account as JSON any day. No ads, no bank logins sold on, no feed you did not ask for. Pointing FinAss at a Postgres you host yourself is the next thing being built.

$ psql $DATABASE_URL -c "select date, description, amount from \"Transaction\" order by date desc limit 3"
date | description | amount
--------------------+-------------+---------
2026-10-13 | Caffeine | 4.80
2026-10-13 | Groceries | 41.20
2026-10-13 | Salary | 2400.00
Free because you host it

Open the ledger.

Sign up, add an account, type your first entry. The web app installs to your phone from Safari; a native iOS app with widgets is on the way.