Backups and exports
Your budget lives on your computer or your server, not in someone else's cloud, so keeping a backup is up to you. It only takes a click. Everything here is in Settings → Data.

Download a backup
Download Backup saves one JSON file with everything: accounts, transactions, budgets, categories, payees, rules, recurring transactions, goals, reports and dashboards, including account and payee logos.
It never includes bank connection credentials, your server password or your signed-in sessions. After restoring on a new computer, connect your banks again.
A backup holds all of your transactions, so keep it somewhere safe and away from the computer running FlyBudget: an external drive, or a cloud folder you trust.
Restore a backup
Restore Backup… replaces all of your data with the file you pick, after asking you to confirm. Before it does:
- FlyBudget checks the whole file. If anything in it is wrong, nothing is changed.
- It saves a copy of your current database next to it, named
budget-before-restore-<date>.db, so a restore can be undone. (Restoring on a self-hosted server saves the copy in the server's data folder.)
The restore happens in one step: either everything is replaced, or nothing is. Bank connections you had are linked back to their accounts if the accounts are in the backup.
Backups also move a budget between the desktop app and a self-hosted server, in either direction.
Export transactions
Export Transactions saves transactions as a CSV file for a spreadsheet: all of them, or only those between a From and a To date. The file has the date, account, payee, category, notes, amount and whether each transaction is reconciled.
Text that a spreadsheet could run as a formula (starting with =, +, - or @) is prefixed
with a ', so a payee name from a bank can't do anything when you open the file.
Reports can be exported too: the full view of every report, the report builder and Cash Flow each have an Export CSV button.
Exports follow your number format. With a decimal comma (1.234,56 or
1 234,56), amounts are written as -12,50 and columns are separated by ;, which is what
spreadsheets in those languages expect; otherwise it's -12.50 with ,. FlyBudget reads both
kinds back when you import them.
Self-hosted servers
On a server, also back up the data directory (/data in Docker) and keep a copy of your
encryption key. See the self-hosting guide.