Spare

Privacy policy

Last updated 27 September 2026

Spare shows where your money goes. It reads your bank data to do that, so this page says exactly what it keeps, where, and who can see it.

Who is responsible

Spare is open-source software. There is no company or shared service behind it: each household runs its own copy, and this copy is run by the person who invited you. They are responsible for the data in it, and they're who you contact about it. The people who write Spare never receive your data.

Spare is not a bank. It reads your accounts, and it can never move money.

What Spare keeps

  • Your sign-in: your name and email, your passkeys' public keys, and your sessions, each with the IP address and browser it came from.
  • Your bank data: the accounts you choose to connect, their balances, and their transactions: amount, date, shop or sender, and the text your bank sends with it.
  • Your bank connection: the session Enable Banking gives Spare, and when its access ends.
  • What you set up: your month start, budgets, saving goals, categories, notes and notification choices.

How it's protected

Before anything reaches the database, amounts, shops, notes, account numbers and bank sessions are encrypted with AES-256-GCM. The key lives in the hosting settings, never in the database, so a leaked copy of the database shows dates and categories but no amounts or shops.

Some things stay readable in the database so Spare can sort and search them: record ids, which account a transaction belongs to, dates, categories, and your name, email and sessions.

Whoever runs this copy holds the key and can read everything in it. Accounts you keep private are hidden from other people in the app, but that's a permission, not encryption.

You sign in with a passkey. Its private half never leaves your device; Spare keeps only the public half, and there are no passwords to leak.

Where it's stored

The app runs on Vercel and the database on Neon, both in Frankfurt, Germany, inside the EU. Vercel keeps short-lived request logs, with IP addresses, for running and debugging the service.

Who else sees your data

Spare sells nothing, shows no ads, and has no analytics or trackers. Its fonts are served by Spare itself.

  • Enable Banking (Finland) connects Spare to your bank under the EU's PSD2 rules. You sign in at your own bank with MitID; Spare never sees your bank login. Access is read-only and lasts until the date you agree to, at most 180 days. See Enable Banking's privacy policy.
  • Resend sends sign-up codes and login links, so it receives your email address and that message.
  • Vercel and Neon host the app and the database, as above. They see encrypted data, not your amounts or shops.

If you share an account with someone in your household, they see that account and its transactions. Everything else stays yours.

Cookies

Spare sets three cookies, all needed for it to work: one keeps you signed in, one remembers light or dark mode, and one lasts only while you're away at your bank connecting it. There are no advertising or tracking cookies, so there's nothing to agree to.

How long it's kept

Your data stays until you delete it in Settings → Your data, a part at a time or with your whole account, or whoever runs this copy deletes it. Deleting your accounts or your account also ends Spare's access to your bank; otherwise a connection stops reading new data when its access ends, or earlier if you withdraw consent at your bank. Deleted data can linger in Neon's restore history for up to its retention period, then it's gone.

Your rights

Under the GDPR you can ask to see the data Spare holds about you, correct it, get a copy, or have it deleted. You can delete it yourself in Settings → Your data; for anything else, ask whoever runs this copy.

If you think your data is mishandled, you can complain to the Danish Data Protection Agency, Datatilsynet.

Changes

When this policy changes, the date at the top changes too, and the change is recorded in Spare's history on GitHub. See also the terms of service.

Questions

Ask the person who runs this copy. For problems with Spare itself, you can open an issue on GitHub, and every claim here can be checked against the code.