# Econumo — Documentation > Econumo is an open-source budgeting app for personal, couple, and family finances — multi-currency, joint accounts, and shared budgets. Cloud or self-hosted. # Getting Started URL: https://econumo.com/docs/ # Welcome This guide will help you get started with **Econumo** (`eh-koh-NOO-mo`). It will provide you with the basic information about the application and explain the main concepts and motivation behind it. ## Econumo's concept The purpose of **Econumo** is to help you **manage** your **money** more effectively, whether on your own or **together** with your partner, using the data you provide. ## How it started I started using expense trackers in 2008 and have experimented with many since then. You might wonder why I switched apps. Here are a few reasons that may resonate with you: - I switched between iPhone and Android. - I traveled to other countries and needed a tool to track expenses in different currencies. - I eventually realized I needed a budgeting tool, not just an expense tracker. - After getting married, I needed a family budgeting and planning tool that supported multiple platforms. - The last app I used had a bug in the sync/backup process, resulting in the loss of all my data with no recovery option. In September 2020, after this data loss, I researched but couldn’t find an app that met my family's needs. So, I decided to create one more budgeting app: **Econumo** (`eh-koh-NOO-mo`). Since then, my spouse and I have used it regularly, and I continuously improve it to help us manage our money better. I decided to publish Econumo in December 2024 to benefit others and give back to the community for the self-hosted tools I use. Therefore, you can use **Econumo** completely free as a self-hosted option (see [Editions](/docs/edition) to learn more). # Contents The guide consists of the following sections: 1. [Getting Started](/docs/) 2. [Editions](/docs/edition/) 3. [User Guide](/docs/user-guide/) 4. [Apps](/docs/apps/) 5. [Self-Hosting](/docs/self-hosting/) 6. [API](/docs/api/) 7. [FAQ](/docs/faq/) 8. [Contact Us](/docs/contact-us/) --- # Econumo Editions URL: https://econumo.com/docs/edition/ # Econumo Editions Econumo provides versatile editions to meet various needs: --- ### Econumo Suited for individuals and families seeking convenience and access, the hosted service at [app.econumo.com](https://app.econumo.com/) offers a comprehensive suite of financial management tools available anytime, anywhere. Create an account at [app.econumo.com](https://app.econumo.com/register) to start a free trial — no credit card required. --- ### Econumo Self-Hosted Designed for households needing a self-hosted, collaborative approach. This **free**, MIT-licensed platform delivers powerful financial management features for those who prioritize privacy and control over their budgeting. **Econumo Self-Hosted** is a single self-contained binary (shipped as a distroless Docker image) that serves both the API and the web app and runs on SQLite by default (PostgreSQL is also supported). Users share accounts and budgets by [connecting with an invitation](/docs/user-guide/shared-access/) and choosing an access level per item. To get started with **Econumo Self-Hosted**, please follow the instructions on the [GitHub repository](https://github.com/econumo/econumo). --- # User Guide URL: https://econumo.com/docs/user-guide/ # User Guide This guide covers the essentials of using Econumo — from your first sign-in to family budgeting with shared accounts. Econumo works the same way in a desktop browser, on a tablet, and on a phone. Throughout this guide, every screen is shown on all three form factors: the desktop layout with the sidebar, the compact tablet layout, and the mobile layout, where lists open full-screen and actions live in bottom sheets. ## Contents - [Introduction](/docs/user-guide/) - [Sign Up](/docs/user-guide/#sign-up) - [Sign In](/docs/user-guide/#sign-in) - [Password Recovery](/docs/user-guide/#password-recovery) - [Getting started checklist](/docs/user-guide/#getting-started-checklist) - [Finding your way around](/docs/user-guide/#finding-your-way-around) - [Accounts](/docs/user-guide/accounts/) - [Account creation](/docs/user-guide/accounts/#account-creation) - [Managing your accounts](/docs/user-guide/accounts/#managing-your-accounts) - [Shared access](/docs/user-guide/accounts/#shared-access) - [Transactions](/docs/user-guide/transactions/) - [Adding transactions](/docs/user-guide/transactions/#adding-transactions) - [Editing a transaction](/docs/user-guide/transactions/#editing-a-transaction) - [Deleting a transaction](/docs/user-guide/transactions/#deleting-a-transaction) - [Recurring Transactions](/docs/user-guide/recurring-transactions/) - [Creating a recurring transaction](/docs/user-guide/recurring-transactions/#creating-a-recurring-transaction) - [Posting or skipping a payment](/docs/user-guide/recurring-transactions/#posting-or-skipping-a-payment) - [Editing and deleting a schedule](/docs/user-guide/recurring-transactions/#editing-and-deleting-a-schedule) - [Search](/docs/user-guide/search/) - [Finding things](/docs/user-guide/search/#finding-things) - [Acting on a result](/docs/user-guide/search/#acting-on-a-result) - [Inbox](/docs/user-guide/inbox/) - [Scheduled transactions](/docs/user-guide/inbox/#scheduled-transactions) - [Sharing invites](/docs/user-guide/inbox/#sharing-invites) - [Classifications](/docs/user-guide/classifications/) - [Create a category, tag, or payee](/docs/user-guide/classifications/#create-a-category-tag-or-payee) - [Budget tags and reporting tags](/docs/user-guide/classifications/#budget-tags-and-reporting-tags) - [Update or delete](/docs/user-guide/classifications/#update-or-delete) - [Merge duplicates](/docs/user-guide/classifications/#merge-duplicates) - [Archive or unarchive](/docs/user-guide/classifications/#archive-or-unarchive) - [Searching a long list](/docs/user-guide/classifications/#searching-a-long-list) - [Budgets](/docs/user-guide/budgets/) - [Budget creation](/docs/user-guide/budgets/#budget-creation) - [Update budget details](/docs/user-guide/budgets/#update-budget-details) - [Manage your budget](/docs/user-guide/budgets/#manage-your-budget) - [Budgets list](/docs/user-guide/budgets/#budgets-list) - [Completing, duplicating and archiving a budget](/docs/user-guide/budgets/#completing-duplicating-and-archiving-a-budget) - [Shared access](/docs/user-guide/budgets/#shared-access) - [Plan](/docs/user-guide/plan/) - [Opening the Plan view](/docs/user-guide/plan/#opening-the-plan-view) - [Reading the sheet](/docs/user-guide/plan/#reading-the-sheet) - [Planning a month](/docs/user-guide/plan/#planning-a-month) - [Adding up a selection](/docs/user-guide/plan/#adding-up-a-selection) - [The Balance row](/docs/user-guide/plan/#the-balance-row) - [Keeping a long sheet readable](/docs/user-guide/plan/#keeping-a-long-sheet-readable) - [Shared access](/docs/user-guide/shared-access/) - [Connect with another user](/docs/user-guide/shared-access/#connect-with-another-user) - [Accept or decline a sharing request](/docs/user-guide/shared-access/#accept-or-decline-a-sharing-request) - [Remove connection between users](/docs/user-guide/shared-access/#remove-connection-between-users) - [Check shared accounts and budgets](/docs/user-guide/shared-access/#check-shared-accounts-and-budgets) - [Access status](/docs/user-guide/shared-access/#access-status) - [Multi-Currency](/docs/user-guide/multi-currency/) - [Accounts in different currencies](/docs/user-guide/multi-currency/#accounts-in-different-currencies) - [Cross-currency transfers](/docs/user-guide/multi-currency/#cross-currency-transfers) - [Currency in your budget](/docs/user-guide/multi-currency/#currency-in-your-budget) - [Currencies](/docs/user-guide/currencies/) - [Choosing which currencies you see](/docs/user-guide/currencies/#choosing-which-currencies-you-see) - [Adding your own currency](/docs/user-guide/currencies/#adding-your-own-currency) - [Editing or deleting a custom currency](/docs/user-guide/currencies/#editing-or-deleting-a-custom-currency) - [User profile](/docs/user-guide/user-profile/) - [Updating your user profile](/docs/user-guide/user-profile/#updating-your-user-profile) - [Sessions](/docs/user-guide/user-profile/#sessions) - [API tokens](/docs/user-guide/user-profile/#api-tokens) - [Connected apps](/docs/user-guide/user-profile/#connected-apps) - [CSV Import & Export](/docs/user-guide/csv-import-export/) - [Apple Wallet](/docs/user-guide/apple-wallet/) - [Set up on iOS 26 or iOS 27](/docs/user-guide/apple-wallet/#setup) - [Map your cards to accounts](/docs/user-guide/apple-wallet/#map-your-cards-to-accounts) --- ## Sign Up Switch to the **Sign up** tab and provide your name (or nickname), email, and password (entered twice to confirm). The form is the same whether you use Econumo at [app.econumo.com](https://app.econumo.com/register) or Econumo Self-Hosted. **Econumo at app.econumo.com** A new account starts with a 45-day free trial, and no payment card is required to sign up. To keep using Econumo after the trial, make a one-time payment. See [Econumo Editions](/docs/edition/) for details. **Econumo Self-Hosted** Administrators can disable open registration with the `ECONUMO_ALLOW_REGISTRATION` environment variable and create users from the [CLI](/docs/self-hosting/cli-commands/) instead. --- ## Sign In To sign in, enter the email and password you provided during sign-up. If your Econumo instance enables single sign-on, an **or continue with** divider below the form offers **Google**, **Apple**, or a custom OpenID Connect provider, alongside the password form. **Note** Signing in through a provider for the first time creates a new, passwordless account if your server allows registration. You can add a password afterwards from **Settings → Personal settings → Change password**, or link the provider to an account you already have from [Sign-in methods](/docs/user-guide/user-profile/#sign-in-methods). **Econumo Self-Hosted** Administrators can turn password sign-in off entirely with the `ECONUMO_PASSWORD_LOGIN` environment variable. On such an instance the sign-in and sign-up screens show only the provider buttons — no email/password fields, no **or continue with** divider, and no **Forgot password?** link — and **Settings → Personal settings → Security** no longer offers **Change password** or **Set a password**. --- ## Password Recovery Click **Forgot password?** on the sign-in screen, enter your email, and press **Send code**. If an account exists with the provided email, you will receive a security code. Enter the code, choose a new password, and press **Reset password**: **Note** Resetting your password is a deliberate account reclaim, not just a password change: it signs you out everywhere, revokes API tokens, and unlinks any sign-in provider that vouches for a different email address than your own. Your shared budgets and connections are left alone. --- ## Getting started checklist After your first sign-in, Econumo greets you with the **Getting started** checklist — a guided tour through the initial setup: add your accounts, enter (or import) your first transaction, review categories, tags, and payees, pick an avatar, connect with your partner, and create your budget. Each step links to the matching section of this guide, and completed steps are ticked off automatically. Work through the steps in any order — the shortcut buttons (**Add account**, **Import transactions**, **Choose your avatar**) open the same dialogs described later in this guide. When you are done, press **Finish setup** at the bottom of the list. Nothing is lost by finishing early: every step remains available in **Settings**. --- ## Finding your way around Your accounts, grouped into folders, fill the sidebar on desktop and tablet and the home screen on mobile; **Budget & Plan** above them opens your [budget](/docs/user-guide/budgets/) and its [Plan view](/docs/user-guide/plan/). Next to the Econumo logo at the top sit two buttons: [Search](/docs/user-guide/search/) (also on **Ctrl+K** / **⌘K**) and the [Inbox](/docs/user-guide/inbox/), whose badge counts what is waiting on you. Everything that is not day-to-day spending lives in **Settings**, in three groups: - **Finances** — [Accounts](/docs/user-guide/accounts/), [Shared access](/docs/user-guide/shared-access/), **Budgets & Plans**, and [Recurring transactions](/docs/user-guide/recurring-transactions/). - **Classification** — [Categories, Tags, Payees](/docs/user-guide/classifications/) and [Currencies](/docs/user-guide/currencies/). - **Data** — **Import & export**, for [CSV import and export](/docs/user-guide/csv-import-export/). On desktop and tablet, open Settings from the bottom of the sidebar; on mobile, from the bottom of the home screen. The card with your name at the top opens your [Personal settings](/docs/user-guide/user-profile/), **Log out** sits right under it, and the **API** link at the very bottom opens the [API reference](/docs/api/) for your instance. --- # Accounts URL: https://econumo.com/docs/user-guide/accounts/ # Accounts This section covers the basics of 'Accounts' in Econumo. Accounts represent your accounts in financial institutions — for example, "Savings account" or "Cash". Each account has its own currency, and accounts are grouped into folders (such as "Personal" and "Family") that structure the sidebar and the mobile home screen. ## In this section - [Account creation](/docs/user-guide/accounts/#account-creation) - [Managing your accounts](/docs/user-guide/accounts/#managing-your-accounts) - [Organize accounts in folders](/docs/user-guide/accounts/#organize-accounts-in-folders) - [Editing an account](/docs/user-guide/accounts/#editing-an-account) - [Shared access](/docs/user-guide/accounts/#shared-access) --- ## Account creation Open **Settings → Accounts** and press the **+** button on the folder you want the account in. Specify the account name, current balance, currency, and icon. The balance field comes with the same built-in calculator (`+`, `−`, `×`, `÷`, `=`) as the [transaction dialog](/docs/user-guide/transactions/#adding-expenses). **Note** The starting balance is recorded as a regular transaction dated the day you created the account, so your history starts consistent from day one. --- ## Managing your accounts All your accounts are accessible via **Settings → Accounts**. This screen shows every folder with its accounts, including the ones shared with you (marked with the avatars of everyone who has access). ### Organize accounts in folders Create folders with the **Create folder** button and drag accounts between them using the dots handle next to their names. The folder structure is reflected in the left sidebar on desktop and on the home screen on mobile. Use the folder menu (the three dots on the folder row) to edit a folder's name, move it up or down, or hide it. A hidden folder disappears from the main screen — handy for accounts you rarely use — and can be shown again from the same menu. ### Editing an account Open the account menu to edit or delete an account. On desktop and tablet, click the three dots next to the account; on mobile, tap the account row to open its details. Editing lets you change the name, balance, currency, and icon. You can also open the same dialog from the account page itself via the **Configure** button. **Note** Correcting the balance in the edit dialog records a compensating transaction for the difference, so your transaction history always adds up. --- ## Shared access If you are [connected with your partner](/docs/user-guide/shared-access/), you can share access to specific accounts. On desktop and tablet, choose **Access control** in the account menu — or press the **Access control** button inside the edit-account dialog — then select the person and the access level. Econumo offers three levels of shared access: 1. **View only** — the invited user can see only the balance and the transaction list. 2. **Manage transactions** — the invited user can also add, update, or delete transactions. 3. **Full control** — the invited user can manage all aspects of the account, including adding categories, tags, and payees on your behalf. Granting access doesn't add the account to your partner's account list right away: Econumo sends them a **pending invite** instead of sharing it outright. They accept it — choosing which folder to file the account under — or decline it, from their [Inbox](/docs/user-guide/inbox/) — see [Shared Access](/docs/user-guide/shared-access/#accept-or-decline-a-sharing-request). Until they respond, the Access control dialog shows **invitation pending** next to their name. Once accepted, the shared account shows the avatars of everyone who can use it — both in the sidebar and in **Settings → Accounts**. --- # Transactions URL: https://econumo.com/docs/user-guide/transactions/ # Transactions This section provides an overview of Transactions in Econumo. Transactions form the core of Econumo, as all budgeting is based on the transactions you enter. Open any account to see its transaction list, search it, and add new records. To find a transaction across all your accounts at once, use [Search](/docs/user-guide/search/) (**Ctrl+K** / **⌘K**). The search field filters the transaction list as you type: ## In this section - [Adding transactions](/docs/user-guide/transactions/#adding-transactions) - [Adding expenses](/docs/user-guide/transactions/#adding-expenses) - [Adding transfers](/docs/user-guide/transactions/#adding-transfers) - [Adding income](/docs/user-guide/transactions/#adding-income) - [Editing a transaction](/docs/user-guide/transactions/#editing-a-transaction) - [Deleting a transaction](/docs/user-guide/transactions/#deleting-a-transaction) **Note** For payments that come back every month — rent, salary, a subscription — set up a schedule once instead of typing them in again and again. See [Recurring Transactions](/docs/user-guide/recurring-transactions/). --- ## Adding transactions Press **Add transaction** on the account page (on mobile it is the button at the bottom of the screen) to open the transaction dialog. **Transaction date** In the top-right corner of the dialog, you can set the transaction date (the date you spent or earned the money). Clicking the date opens a calendar, and the arrow next to it steps one day back. Note that transaction time is not currently supported. **Transaction types** You can add one of the following transaction types: - **Expense** (default option) - **Transfer** - **Income** Each type has a different set of fields to complete. --- ### Adding expenses To add an expense, pick the account, enter the amount, and choose a category — that is all a record needs. Notes, a recipient, and tags are optional. **Amount** Enter the amount spent in the account's currency. The `+`, `−`, `×`, `÷`, and `=` buttons under the amount field (also available as keyboard keys on desktop) let you calculate the total right in the dialog — for example, add up several receipt lines and press `=`. **Categories** Categories are optional — you can save an expense without picking one. Click the category field to search your categories or create a new one: type a name that does not exist yet and press "Enter" (or "Search"/"Submit" on your mobile keyboard). The name must be 3–64 characters long. **Note** Leave a transaction uncategorized and it still counts toward your budget: it shows up there as a read-only **Uncategorized** element instead of being left out of the totals. See [Budgeting](/docs/user-guide/budgets/#budgeting). **Recipients** You can specify a recipient for each transaction — the name of a person or a company where you spent the money. Like categories, recipients can be created right from the dialog. **Tags** Tags group spending across categories. The **Tags** row lists both kinds side by side, and they behave differently when you tap them: - **Budget tags**, marked with `#`, are for a project or an event — in the screenshots, the family tags its Italy vacation expenses with `Italy 2026`. A transaction takes only one, so picking a second replaces the first. - **Reporting tags** track who or what the money went on — a kid, a pet, a second home. Toggle as many as apply. Press the `+` button to create a new tag without leaving the dialog (3–64 characters); see [Budget tags and reporting tags](/docs/user-guide/classifications/#budget-tags-and-reporting-tags) for the difference in full. **Notes** The notes field allows you to add any comments related to the transaction. --- ### Adding transfers Transfers move money between your accounts without affecting the budget: **From/To** Select the account **from** which you want to move money **to** another account. The swap button next to the account fields switches the direction. **Amount** Enter the transfer amount. The same in-dialog calculator (`+`, `−`, `×`, `÷`, `=`) is available. If the two accounts use different currencies, a second field appears so you can record the exact amount received in the target currency: **Notes** The notes field allows you to add any comments related to the transfer. --- ### Adding income Recording an income works just like an expense: pick the account, enter the amount, and choose an income category (income categories are separate from expense categories). You can also set a **sender** — the person or company you received the money from. --- ## Editing a transaction On desktop and tablet, open the three-dots menu on a transaction row and choose **Edit**. On mobile, tap the transaction to see its details, then press **Edit**. The edit dialog is the same as the add dialog, pre-filled with the transaction's data: You can update any transaction in your own accounts, and in shared accounts where you have at least **Manage transactions** access. ## Deleting a transaction Choose **Delete** in the same menu (or in the details sheet on mobile) and confirm. You can delete any transaction except transactions in view-only accounts. --- # Recurring Transactions URL: https://econumo.com/docs/user-guide/recurring-transactions/ # Recurring Transactions Rent, salary, subscriptions, an annual insurance premium — payments that repeat on a schedule don't need re-typing every time. Set them up once in **Settings → Recurring transactions**, and Econumo keeps track of when each one is next due. Econumo never posts anything behind your back. The next occurrence shows up on the account page as **Not posted**; you confirm it when the money actually moves, or skip it when it doesn't. Either way the schedule rolls forward to the following date. ## In this section - [Creating a recurring transaction](/docs/user-guide/recurring-transactions/#creating-a-recurring-transaction) - [Posting or skipping a payment](/docs/user-guide/recurring-transactions/#posting-or-skipping-a-payment) - [Editing and deleting a schedule](/docs/user-guide/recurring-transactions/#editing-and-deleting-a-schedule) --- ## Creating a recurring transaction Open **Settings → Recurring transactions** and press **Add transaction** (on mobile, the **+** button in the header). The dialog is the same one you use for [ordinary transactions](/docs/user-guide/transactions/#adding-transactions), with one extra field: - **Type** — **Expense**, **Income**, or **Transfer**, chosen with the tabs at the top. - **Date** — in the top-right corner. This is the date of the *next* payment; every following one is calculated from it. - **Account**, **Amount** (with the same built-in calculator), **Category**, **Recipient** (**Sender** on an income schedule), **Tags**, and **Notes** — exactly as in a normal transaction. - **Repeats** — how often the payment comes back: **Weekly**, **Every 2 weeks**, **Monthly**, **Every 3 months**, or **Yearly**. The list groups your schedules by account, showing the category and interval, your notes and recipient, the amount, and the date the next payment falls due. **Note** Schedules follow the account, not the person. On a [shared account](/docs/user-guide/shared-access/) everyone with access sees the same schedules and can post or skip them — in the screenshots, the rent and the grocery run on the Joint Account appear in both John's list and Megan's. Schedules on your own accounts stay private to you. --- ## Posting or skipping a payment The next occurrence of every schedule appears in its account's transaction list, greyed out and labelled **Not posted**. It is a placeholder: it does not affect your balance until you confirm it. A schedule that is due today or overdue is pinned to the top of the account's **Today** group, ahead of today's real transactions — so it reads as something still waiting on you, not as something that already happened. A schedule that is still ahead of its next date is untouched: it stays grouped further down the list, at its own future date. Select that row to open its **Transaction details**, which repeats the schedule's interval at the bottom and offers two actions: - **POST** — records the payment as a real transaction. Your balance and budget update, and the schedule moves on to the next date. - **Skip** — the small step-over icon beside it. Passes on this occurrence without recording anything, and moves the schedule on to the next date. The row's own three-dots menu is not the place to look: on a **Not posted** placeholder it offers only **Edit** and **Delete**, both of which act on the schedule rather than on this occurrence. **Note** A payment that is due or overdue shows its date in red, both in the list and on the account page — a quick way to spot what is waiting for you. You can also post a payment straight from **Settings → Recurring transactions**: choose **Post** in the schedule's three-dots menu (on mobile, tap the row to open the bottom sheet). The review dialog opens with its date chip pre-filled to today for a due or overdue schedule — not the missed scheduled date — though you can still edit it; a schedule that isn't overdue keeps pre-filling its own scheduled date, as before. Payments that are due today or overdue also collect in your [Inbox](/docs/user-guide/inbox/), across all your accounts, under **Scheduled transactions**. Select one there to open the same **Transaction details** with **POST** and **Skip**, without going to the account first. --- ## Editing and deleting a schedule Use the three-dots menu next to a schedule — on mobile, tap the row — and choose **Edit** to change any of its fields, or **Delete** to remove the schedule altogether. Editing a schedule changes future payments only; transactions you have already posted stay exactly as they were. Deleting a schedule likewise leaves posted transactions untouched — it only stops future ones from being suggested. --- # Search URL: https://econumo.com/docs/user-guide/search/ # Search One search box finds anything in Econumo: accounts, categories, payees, tags, reporting tags and transactions. Open it from anywhere with **Ctrl+K** (**⌘K** on a Mac), or with the magnifying-glass button at the top of the sidebar (on mobile, at the top of the home screen). Before you type, the search lists your most recent transactions, newest first: ## In this section - [Finding things](/docs/user-guide/search/#finding-things) - [Acting on a result](/docs/user-guide/search/#acting-on-a-result) --- ## Finding things Start typing and the results group by kind — **Accounts**, **Categories**, **Payees**, **Tags**, **Labels** (reporting tags) and **Transactions** — with the best matches first. You don't have to spell things exactly: missing letters are forgiven, so *grcries* still finds **Groceries**, along with the transactions filed under it. Amounts work too — type a figure the way it is stored or the way it is displayed. The recent list leaves out transactions dated in the future, but a search still finds them. **Note** The same matcher drives every picker you can type into — the category, payee, account and currency pickers in the transaction dialog and elsewhere — so a typo there finds the right item too. --- ## Acting on a result Pick a category, payee or tag to list its transactions right inside the search window. Results also carry a three-dots menu with the actions that fit them — for a category, **Edit**, **Archive**, **Merge into…** and **Delete**, the same as in [Settings → Categories](/docs/user-guide/classifications/) — so you can tidy up a duplicate the moment you spot it. --- # Inbox URL: https://econumo.com/docs/user-guide/inbox/ # Inbox The Inbox collects everything that is waiting on you in one place. Open it with the tray icon at the top of the sidebar (on mobile, at the top of the home screen); its badge shows how many things are waiting. ## In this section - [Scheduled transactions](/docs/user-guide/inbox/#scheduled-transactions) - [Sharing invites](/docs/user-guide/inbox/#sharing-invites) With nothing pending, the page simply reads *"All caught up"*. --- ## Scheduled transactions [Recurring transactions](/docs/user-guide/recurring-transactions/) that are due today or overdue come first, across all your accounts. Each row shows the schedule's category, interval, note, payee, amount and account, and when it was due — *"Overdue · Aug 28"*. Select a row to open its **Transaction details**, then: - **POST** — records the payment as a real transaction, and the schedule moves on to its next date. - **Skip** — the step-over icon beside it — passes on this occurrence without recording anything. Either way the schedule moves on to its next date. --- ## Sharing invites When someone shares an [account](/docs/user-guide/accounts/#shared-access) or a [budget](/docs/user-guide/budgets/#shared-access) with you, the invite waits in the **Sharing** group at the bottom of the Inbox, saying who invited you and to what. **Accept** it — for an account, you first choose the folder to file it under — or **Decline** it. See [Shared Access](/docs/user-guide/shared-access/#accept-or-decline-a-sharing-request) for the details. --- # Classifications URL: https://econumo.com/docs/user-guide/classifications/ # Classifications This section introduces the basics of 'Classifications' in Econumo, including **Categories**, **Tags**, and **Payees**. All three entities share similar functionality: - Create a new item. - Update or delete an existing item. - Merge a duplicate into another item. - Archive or unarchive any item. **Categories** answer "what kind of spending is this?" — they're optional on a transaction, but picking one is what makes a budget useful. **Tags** cut across categories to group related spending (a trip, a renovation, the dog). **Payees** record who you paid or who paid you. ## In this section - [Create a category, tag, or payee](/docs/user-guide/classifications/#create-a-category-tag-or-payee) - [Budget tags and reporting tags](/docs/user-guide/classifications/#budget-tags-and-reporting-tags) - [Update or delete](/docs/user-guide/classifications/#update-or-delete) - [Merge duplicates](/docs/user-guide/classifications/#merge-duplicates) - [Archive or unarchive](/docs/user-guide/classifications/#archive-or-unarchive) - [Searching a long list](/docs/user-guide/classifications/#searching-a-long-list) --- ## Create a category, tag, or payee To create a new item, go to **Settings → Categories / Tags / Payees** and press **Create category** / **Create tag** / **Create payee** (on mobile, the **+** button in the header). Expense and income categories are listed separately: You will need to fill out a few fields, such as: - **Type** (income/expense) — only for categories - **Icon** — only for categories - **Kind** (reporting/budget) — only for tags, see [below](/docs/user-guide/classifications/#budget-tags-and-reporting-tags) - **Name** (3–64 characters) Payees need nothing but a name: **Note** You can also create categories, tags, and payees on the fly, right from the [transaction dialog](/docs/user-guide/transactions/#adding-expenses) — no trip to Settings required. --- ## Budget tags and reporting tags Tags come in two kinds, and the **New tag** dialog asks which one you are making before anything else: - **Budget tag** — *"Plan a project or event. Only one tag per transaction."* A vacation, a wedding, a renovation. Because a transaction can carry only one, its spending adds up cleanly, so a budget tag gets a row in your [budget](/docs/user-guide/budgets/) with a limit of its own. Budget tags are marked with `#`. - **Reporting tag** — *"Analyse what the money went on. Several tags per transaction allowed."* A kid, a dog, a second home. A transaction can carry as many as you like, so the totals deliberately overlap and take no part in the budget maths. Reporting tags show up in their own [Reporting tags block](/docs/user-guide/budgets/#reporting-tags) at the foot of the budget page. The Tags screen keeps the two apart in **BUDGET TAGS** and **REPORTING TAGS** sections: **Note** A tag's kind is fixed when you create it and cannot be changed afterwards. If you picked the wrong one, create the tag you meant and [merge](/docs/user-guide/classifications/#merge-duplicates) the other into it. --- ## Update or delete On desktop and tablet, click the three dots next to an item and select **Edit** or **Delete**. On mobile, tap the item to open the same actions in a bottom sheet. Deleting an item will remove it from all transactions and budgets. Use **Reorder list** to change the order in which items appear in pickers and in the budget. --- ## Merge duplicates Long-lived data collects duplicates: a "Groceries" and a "Food", two spellings of the same shop. **Merge into…** in the same three-dots menu folds one into another instead of deleting it and losing the history. 1. Open **Settings → Categories** (or **Tags**, or **Payees**). 2. Choose **Merge into…** in the duplicate's menu. On a phone the same dialog arrives as a bottom sheet. 3. Pick the survivor from the list, or find it with the **Search** box. The dialog spells out what will happen: *"All transactions from … will be moved, and … will be deleted."* 4. Press **MERGE**. Every transaction pointing at the duplicate is moved to the survivor, and the duplicate is then deleted. **Note** Merging two categories also merges their budget rows: the planned amounts are **added together** per period rather than thrown away. The dialog says so before you commit — *"If the two sit in different envelopes, update your budget first so you don't lose your planned amounts — limits are added together when merging."* --- ## Archive or unarchive You can archive items that are no longer relevant to you. Archived items won't appear in the transaction dialog but will still be visible in the transaction list, and in a budget if you've budgeted them or had any associated spending. Use the switch on the right side of each element to archive or unarchive it. The **Active only** toggle at the top of the list controls whether archived items are shown. --- ## Searching a long list Press the search icon next to the page heading to reveal a filter field — handy once your list of categories, tags, or payees grows past a quick scan. It filters the list as you type. --- # Budgets URL: https://econumo.com/docs/user-guide/budgets/ # Budgets This section introduces the basics of 'Budgets' in Econumo. Budgets enable you to implement a "Cash Stuffing" method, also known as the envelope budgeting approach, which uses envelopes to manage spending. The concept is straightforward: take a few envelopes, label each with an expense category — such as groceries, rent, or car loan — and place the amount of money you plan to spend in each envelope. This way, you set limits on your spending for each category. Econumo allows you to create virtual envelopes and allocate your funds accordingly, so you can easily track how much money remains for each specific category: ## In this section - [Budget creation](/docs/user-guide/budgets/#budget-creation) - [Update budget details](/docs/user-guide/budgets/#update-budget-details) - [Manage your budget](/docs/user-guide/budgets/#manage-your-budget) - [Budgeting](/docs/user-guide/budgets/#budgeting) - [Savings accounts](/docs/user-guide/budgets/#savings-accounts) - [Organizing your budget](/docs/user-guide/budgets/#organizing-your-budget) - [Work with the budget](/docs/user-guide/budgets/#work-with-the-budget) - [Comments](/docs/user-guide/budgets/#comments) - [Budgets list](/docs/user-guide/budgets/#budgets-list) - [Completing, duplicating and archiving a budget](/docs/user-guide/budgets/#completing-duplicating-and-archiving-a-budget) - [Shared access](/docs/user-guide/budgets/#shared-access) **Note** To plan several months at once instead of one at a time, switch the budget to its [Plan view](/docs/user-guide/plan/) with the **Budget** / **Plan** tabs beside the months bar — the same budget laid out as a month-by-month sheet. --- ## Budget creation Open **Settings → Budgets & Plans** and press **Create budget** (on mobile, the **+** button in the header). Give the budget a name, pick its base currency, and switch on the accounts that take part in it — the counter above the list keeps track (*"3 of 5 included"*). Once accounts are in, **Savings accounts** lets you mark some of them as [savings](/docs/user-guide/budgets/#savings-accounts). **Note** Account membership is an explicit list, and a new budget starts with every switch off — turn on the accounts you actually budget from. Budgets start from the current month. --- ## Update budget details Open your budget and press **Configure** in the top-right corner. On desktop it opens **Budget settings** straight away; on a tablet or a phone it opens a short menu — choose **Budget settings** there. In the dialog you can rename the budget, change its currency, add or remove accounts, and choose which of them are savings accounts: An account that already carries transactions in past months of this budget cannot be removed from it — taking it out would rewrite months you have already closed. The dialog says so under the list. The other entry in the tablet and phone **Configure** menu, **Edit structure**, is described in [Organizing your budget](/docs/user-guide/budgets/#organizing-your-budget). --- ## Manage your budget The budget page has three sections, in the same order on every screen size: - **Income** — what you expect to earn: **Planned**, **Received** and what is still **To receive**. - **Savings** — your [savings accounts](/docs/user-guide/budgets/#savings-accounts): **Planned**, **Saved** and the **Balance** at month end. - **Expenses** — what you plan to spend: **Budget**, **Spent** and **Available**. Underneath sit the totals for the month, ending with your **Balance at month end**. Inside the sections you work with these entities: - **Budget Folders** — to organize your spending conveniently (in the screenshots: _Essentials_, _Lifestyle_, _Vacations_). - **Categories** — your Econumo categories. - **Tags** — your budget [tags](/docs/user-guide/classifications/). These aggregate spending across categories (e.g. the whole _Italy 2026_ vacation). Reporting tags are not budgeted; they get [their own block](/docs/user-guide/budgets/#reporting-tags) at the foot of the page. - **Envelopes** — these group several categories into one limit (e.g. an envelope for _Food_ could contain _Groceries_, _Drinks_, and _Restaurants_). Both Income and Expenses can hold envelopes. --- ### Budgeting The goal of budgeting is to maintain your monthly budget. Ideally, you should prepare your budget before the month starts and make minor adjustments during the month as needed. The months bar at the top switches between periods — on desktop and tablet the **‹** and **›** arrows beside it step through the months — and the budget shows how much money remains in your virtual envelopes. The bar is clamped to the budget's own lifetime: an open budget runs well into the future, while a [completed one](/docs/user-guide/budgets/#completing-duplicating-and-archiving-a-budget) stops just past its final month. Each expense row has three columns: 1. **Budget** — the amount you plan to spend this month. A small figure in front of it, such as `-1,923.02 +`, is what is left from earlier months. 2. **Spent** — the amount you have actually spent. 3. **Available** — what is left: the budgeted amount plus anything carried over. It shows as a green pill, or a red one when the row is overspent. On desktop, click a number in the **Budget** column to change it. The amount field takes the same calculator keypad (`+`, `−`, `×`, `÷`, `=`) as the [transaction dialog](/docs/user-guide/transactions/#adding-expenses); press **Save**. On a tablet or a phone, tap the row's figures to open its sheet and press **Set budget**: On a phone the budget is a single-month view. Each row shows **Budget** and **Spent**, with a thin progress bar under it that turns red once spending runs past the budget. Tap a row's figures to open its sheet: the month's figures, the latest comment, **Transactions** to list what was spent, and **Set budget** (**Set plan** on a savings row). The pencil icon in the sheet's header edits the item itself. On a tablet, the desktop-style rows open the same sheet when you tap their figures: If a [transaction has no category](/docs/user-guide/transactions/#adding-expenses), its amount still counts: it appears as a read-only **Uncategorized** line at the end of the Income or Expenses section — no **Budget** or **Available** figure, just the amount — instead of being silently left out. Assign a category to those transactions and they move into the rows above. --- ### Savings accounts Money you move into a savings account isn't spent — it's saved. Mark any of the budget's accounts as savings in **Budget settings → Savings accounts** (the **Savings** section's three-dots menu has a shortcut to the same list): Each savings account gets its own row in the **Savings** section: - **Planned** — how much you mean to put away this month. - **Saved** — the account's whole net change for the month: transfers in and out, interest and fees. - **Balance** — the account's balance at the end of the month. For future months it is projected from your plans. The totals under the budget add a **Savings** line for the month and a **Total savings** line for the combined balance. The savings flag belongs to the budget, not to the account, so the same account can be savings in one budget and everyday money in another. Turning an account's savings flag off deletes the planned amounts and comments of its savings row in this budget; the saved amounts and the transactions themselves are not touched. --- ### Organizing your budget You change the structure right on the budget page. **On desktop**, hover a row: a drag handle appears on its left and a three-dots menu beside its name. Drag rows and folders by the handle to reorder them or move them between folders, and use the menus for everything else. **On a tablet or a phone**, press **Configure** and choose **Edit structure**. Every row then shows its handle and three-dots menu; press **Done editing** when you are finished. The menus offer: - **Income** and **Expenses** section headers — **Create folder**, **New envelope**, **New category**. - A **folder** — **New envelope**, **New category**, **Edit** (rename), and **Delete folder**. - A **category, tag or envelope** — **Edit**, **Change currency**, **Move to folder…**, **Archive**, **Merge into…** and **Delete**. An action you can't take right now is greyed out and says why — a folder that still holds items reads **Delete folder (not empty)**, and an item you don't own reads **(no access)**: Items that are not in any folder collect under **No folder** at the end of their section. **Envelopes.** Choose **New envelope** in a section or folder menu. Pick a name, currency, icon, and the categories you want to include: Deleting an envelope releases its categories back into the budget. **Element currency.** Each element can be budgeted in its own currency: open the element's three-dots menu and choose **Change currency**. Amounts spent and available for that element are converted automatically. --- ### Work with the budget #### Tag and envelope breakdown Tags and envelopes aggregate several categories. Expand one by clicking its name to see where the money actually went: #### Spending details To see the transactions behind any number, click the amount in the **Spent** column (on a phone, open the row's sheet and press **Transactions**): #### Reporting tags Below the expenses — under the **Uncategorized** line — sits a separate **Reporting tags** block. It totals what you spent per [reporting tag](/docs/user-guide/classifications/#budget-tags-and-reporting-tags) in the month: people, pets, places. Expand the block by clicking its title, and expand a single tag to see the categories behind its total. These rows show a **Spent** figure only — no **Budget**, no **Available** — and they sit outside the budget's totals. That is deliberate: a transaction can carry several reporting tags at once, so its full amount counts under each of them, and adding the block into the budget maths would count the same money twice. Use it to answer "what did the dog cost us this month?", not "how much is left to spend?". #### Multi-currency budgets Elements budgeted in a foreign currency are converted to the budget's currency for folder and budget totals. See [Multi-Currency](/docs/user-guide/multi-currency/#currency-in-your-budget) for the full picture. --- ### Comments Any budget cell — one item in one month — can carry a comment thread: a note like "trip to Lisbon" or "new TV" that explains a number. A small coloured triangle in the cell's corner marks the cells that have one; on desktop, hovering it previews the latest comments. Click the marker to open the thread, type in **Comment** (up to 500 characters), and press **Post**. On a phone, the row's sheet shows the latest comment — tap **Comments (N)** to open the whole thread. In the [Plan view](/docs/user-guide/plan/) you can also open a selected cell's thread with **Shift+F2**. Everyone with access to the budget can read the comments and add their own — including people you shared it with as **View only**. --- ## Budgets list You can access your budgets list at **Settings → Budgets & Plans**. Shared budgets show the avatars of everyone who uses them, and the bookmark icon marks your default budget — the one that opens from **Budget & Plan** in the sidebar. Budgets you have archived collapse into an **Archived (N)** group at the bottom of the list: --- ## Completing, duplicating and archiving a budget A budget does not have to run forever. Every budget's three-dots menu in **Settings → Budgets & Plans** carries its whole life cycle: **Open budget**, **Access control**, **Duplicate…**, **Complete…**, **Archive**, and **Delete**. ### Complete a budget **Complete…** closes a budget off at a chosen month. Pick the **Last month** it covers; leave **Continue in a copy starting this month** on to name and start its successor in the same step, with **Copy plans** deciding whether the planned amounts come along. Turn that switch off and the **Copy plans** and **Name** fields disappear — the budget is simply closed, with no successor. Press **SAVE** and the budget is archived straight away: it leaves the active list immediately and joins the **Archived** group below it. ### Duplicate a budget **Duplicate…** copies a budget on its own, without closing the original: its structure, folders, envelopes, member accounts and sharing all come across. The copy is pre-named after the original with *"(copy)"* appended, keeps **Copy plans** on, and can **Start from this month** instead of the original's first month. ### Archive and unarchive **Archive** files a budget away without completing it. An archived budget stays in the list under **Archived (N)** and stays fully browsable — opening it shows a banner reading *"This budget is archived and read-only"*, and its numbers stay exactly as they were. Its menu offers **Unarchive** in place of **Archive**, which brings it back to the active list. --- ## Shared access To budget together with your partner, you first need to [connect with them](/docs/user-guide/shared-access/). Then open the budgets list, click the three dots on the budget you wish to share, and select **Access control**. Pick the person and the access level: Econumo supports the following access levels for budgets: - **View only** — you share your budget only for viewing. - **Manage budget** — you and your partner can collaboratively manage this budget and contribute to it together. - **Full control** — like Manage budget, but your partner can also delete and rename the budget. As with accounts, this sends a **pending invite** rather than sharing the budget outright — your partner accepts or declines it from their [Inbox](/docs/user-guide/inbox/), as described in [Shared Access](/docs/user-guide/shared-access/#accept-or-decline-a-sharing-request). Once accepted, your partner sees the budget in their own budget list, and you budget the same envelopes together — as John and Megan do with the "Family budget" in the screenshots throughout this page. --- # Plan URL: https://econumo.com/docs/user-guide/plan/ # Plan The [budget](/docs/user-guide/budgets/) shows one month at a time: what you planned, what you spent, what is left. The **Plan** view shows the same budget as a spreadsheet across several months — one row per envelope, category, tag or savings account, one column per month — so you can put next spring's holiday or an annual insurance premium into the plan long before the money moves. Both views belong to the same budget. Switching between them changes nothing about your data; it only changes how much of the budget you are looking at. ## In this section - [Opening the Plan view](/docs/user-guide/plan/#opening-the-plan-view) - [Reading the sheet](/docs/user-guide/plan/#reading-the-sheet) - [Planning a month](/docs/user-guide/plan/#planning-a-month) - [Copying an amount forward](/docs/user-guide/plan/#copying-an-amount-forward) - [Adding up a selection](/docs/user-guide/plan/#adding-up-a-selection) - [The Balance row](/docs/user-guide/plan/#the-balance-row) - [Keeping a long sheet readable](/docs/user-guide/plan/#keeping-a-long-sheet-readable) --- ## Opening the Plan view Open your budget from **Budget & Plan** in the sidebar, then switch the **Budget** / **Plan** tabs beside the months bar to **Plan**. The Plan view works on desktop and on a tablet. On a phone there is no grid: the budget stays a single-month view, and you plan a month from each row's sheet — tap the row's figures and press **Set budget** (**Set plan** on a savings row). See [Budgeting](/docs/user-guide/budgets/#budgeting). --- ## Reading the sheet Rows are the elements of your budget, in the structure you gave it, under the same **Income**, **Savings** and **Expenses** sections as the budget view. Each cell shows the amount actually spent or earned on the left, in small grey type, next to the amount you planned. An actual figure that overshoots the plan is shown in red. A blank cell means nothing is planned for that month and nothing happened. On a savings row, the small figure is the account's balance at the end of that month. Click an actual figure to list that month's transactions behind it. The **‹** and **›** arrows above the sheet move the visible window to earlier and later months. --- ## Planning a month The sheet works like a spreadsheet: 1. Click a cell to select it, or move to it with the arrow keys. 2. Type the amount, or press **F2** to edit the amount already there. 3. Press **Enter** to save, or **Escape** to leave the cell as it was. **Delete** clears a cell's plan, and you can paste an amount copied from elsewhere. Income rows are planned exactly the same way — a planned salary is what makes the projection at the foot of the sheet worth reading. A selected cell with a [comment](/docs/user-guide/budgets/#comments) opens its thread with **Shift+F2**. --- ## Copying an amount forward Most plans repeat: the same rent, the same phone bill, month after month. When a cell is selected, a small square appears at its bottom-right corner — **Copy budget to the following months**. Drag it to the right to repeat that amount across the months it covers. --- ## Adding up a selection On desktop you can select several cells at once — drag across them, **Shift**+click the far corner of a range, or **Ctrl**+click (**⌘**+click on a Mac) to add single cells. A small label under the selection adds them up: how many cells, their **Plan** total and their **Actual** total. --- ## The Balance row The foot of the sheet sums each month: **Income**, **Expenses**, **Savings** and **Total savings**, with the **Balance** row pinned underneath. Balance rolls your money forward month by month, starting from your real account balances, so each column shows what you would be left with by the end of that month if the plan holds. That is what makes planning ahead useful: put a two-week trip into next July and you can see immediately what it does to the months after it. --- ## Keeping a long sheet readable A budget with a few dozen elements makes for a tall sheet. A few things help: - The **Income**, **Savings** and **Expenses** headers, and each folder header, collapse with the chevron beside them. The Plan view remembers its own folding, separately from the budget view. - The **Σ** button on a section or folder header shows that group's sums on its header row. - Drag the right edge of the name column to make it wider or narrower; double-click the edge to reset it. --- # Shared Access URL: https://econumo.com/docs/user-guide/shared-access/ # Shared Access This section provides an overview of Shared Access in Econumo. Econumo enables users to connect with each other to share access to various accounts and budgets — the foundation for family budgeting. Connections are managed in **Settings → Shared access**: ## In this section - [Connect with another user](/docs/user-guide/shared-access/#connect-with-another-user) - [Accept or decline a sharing request](/docs/user-guide/shared-access/#accept-or-decline-a-sharing-request) - [Remove connection between users](/docs/user-guide/shared-access/#remove-connection-between-users) - [Check shared accounts and budgets](/docs/user-guide/shared-access/#check-shared-accounts-and-budgets) - [Access status](/docs/user-guide/shared-access/#access-status) --- ## Connect with another user When you connect with another Econumo user, you aren't sharing anything yet. You will specify which accounts and budgets to share later. To connect, go to **Settings → Shared access** and press **Create invitation**. You will get a short code that is valid for 5 minutes: Ask your partner to open Econumo, navigate to **Settings → Shared access**, press **Accept invitation**, and enter the code: After the invitation is accepted, you will see each other in the connections list, and you can start sharing [accounts](/docs/user-guide/accounts/#shared-access) and [budgets](/docs/user-guide/budgets/#shared-access). --- ## Accept or decline a sharing request Sharing an account or budget with someone doesn't hand it over immediately — Econumo sends a **pending invite** that the other person has to accept or decline first. Invites land in your [Inbox](/docs/user-guide/inbox/) — the tray icon at the top of the sidebar (on mobile, at the top of the home screen), whose badge counts everything waiting on you. Sharing invites sit in the **Sharing** group at the bottom of the Inbox, each one saying who invited you and whether it is an **Account** or a **Budget**. For each request: - **Accept** — for an account, you first choose which folder to file it under (or leave it in **General**, which is created automatically if it doesn't exist yet); a budget is added straight to your budgets list. - **Decline** — Econumo asks you to confirm, then the invite is dismissed. While a request is still pending, the person who sent it sees **invitation pending** next to your name in the Access control dialog. **Note** Connections and shares that already existed before this flow shipped keep working without any action on your part — Econumo grandfathered them in as already accepted. --- ## Remove connection between users You can delete the connection between users at any time: open the three-dots menu next to the connection and choose **Delete**. Econumo asks you to confirm first, because this action removes all shared access for accounts and budgets in both directions: The connection's dialog (described below) also has a **Delete** button that removes the connection the same way. --- ## Check shared accounts and budgets To view everything you share with a user, choose **View** in the connection's menu (on mobile, tap the connection). The dialog lists all shared budgets and accounts, who owns each item, and the current access level: Select an item in this dialog — this is also the way to manage access from a phone. What opens depends on which side you're on: - For something **you own**, you get an access-level picker where you can change the level or press **Revoke access**. - For something **shared with you**, you get a plain confirmation to **Decline access** instead. The dialog lists only items that are already shared; sharing a new account or budget is done with **Access control**, as described in the [Accounts](/docs/user-guide/accounts/#shared-access) and [Budgets](/docs/user-guide/budgets/#shared-access) sections. --- ## Access status Econumo can restrict an account to read-only — for example when a trial period runs out. Read access, including exporting your data, keeps working; adding or changing anything is disabled until access is restored. A connection in this state shows a **Read-only** badge (or a countdown, e.g. **Subscription ends in 5 days**) next to their name in **Settings → Shared access**, along with a **Manage subscription** link where a billing portal is configured. --- # Multi-Currency URL: https://econumo.com/docs/user-guide/multi-currency/ # Multi-Currency Econumo lets you keep accounts in different currencies and still budget across all of them. Each account has one fixed currency; transfers between currencies record both amounts, and your budget converts everything to a single currency so the totals add up. In the examples on this page, John's family keeps most accounts in US dollars but also has a **Euro Cash** account they top up before travelling to Italy. ## In this section - [Accounts in different currencies](/docs/user-guide/multi-currency/#accounts-in-different-currencies) - [Cross-currency transfers](/docs/user-guide/multi-currency/#cross-currency-transfers) - [Currency in your budget](/docs/user-guide/multi-currency/#currency-in-your-budget) **Note** Which currencies you can pick from is up to you: choose them in **Settings → Currencies**, where you can also add [a currency of your own](/docs/user-guide/currencies/#adding-your-own-currency) with a rate you set. The currencies your server ships with, and how their exchange rates are kept up to date, are configured by whoever runs your Econumo instance — see [Multi-Currency Support](/docs/self-hosting/multi-currency/) in the self-hosting docs. --- ## Accounts in different currencies An account's currency is chosen when you [create it](/docs/user-guide/accounts/#account-creation) and shown next to its balance everywhere in the app. Every transaction on that account is entered in the account's own currency — the Euro Cash account below is in EUR, so its balance and all its transactions are in euros. To spend from an account, add the transaction in that account's currency. To move money between currencies, use a transfer. --- ## Cross-currency transfers When you [transfer](/docs/user-guide/transactions/#adding-transfers) between two accounts that use different currencies, Econumo shows **two amount fields** — one for the source currency and one for the destination — so you can record exactly what left one account and what arrived in the other. This keeps both balances correct regardless of the rate your bank used. In the Euro Cash account above, the "Transfer from John's Card" line is the euro side of one such transfer — dollars left the card, euros arrived in the cash account. --- ## Currency in your budget A budget is kept in a single base currency — the code above the first column of the budget, `USD` in the screenshots — but individual elements (categories, tags, envelopes) can be budgeted in their own currency. Open the element's three-dots menu and choose **Change currency**. On desktop the menu appears when you hover the row; on a tablet or a phone, turn on **Configure → Edit structure** first. Spending in a foreign currency is converted to the budget's currency for folder and budget totals. **Note** Conversions use the exchange rates loaded into your Econumo instance. If rates look off, ask your administrator to refresh them (see [Multi-Currency Support](/docs/self-hosting/multi-currency/)). --- # Currencies URL: https://econumo.com/docs/user-guide/currencies/ # Currencies **Settings → Currencies** controls which currencies Econumo offers you when you create an account, a budget, or a budget element. It holds two kinds of currency: - **Econumo currencies** — the ones that ship with your server. They are available to everyone on the instance, and their exchange rates are managed centrally and refresh automatically when the server has rate updates configured. - **My currencies** — currencies you add yourself. They are visible only to you, and you set their exchange rate by hand. ## In this section - [Choosing which currencies you see](/docs/user-guide/currencies/#choosing-which-currencies-you-see) - [Adding your own currency](/docs/user-guide/currencies/#adding-your-own-currency) - [Editing or deleting a custom currency](/docs/user-guide/currencies/#editing-or-deleting-a-custom-currency) --- ## Choosing which currencies you see A server can carry a long list of currencies, and you probably use two or three. The switch next to each Econumo currency turns it on or off for your account: only the currencies you keep enabled appear in the currency picker when you [create an account](/docs/user-guide/accounts/#account-creation) or budget. **Disable all** clears the list in one go, and the search field at the top helps you find a currency in a long list. **Note** Your [default currency](/docs/user-guide/user-profile/#how-to-change-your-default-currency) cannot be switched off — its toggle stays on and greyed out. Change the default in your profile first if you want to retire that currency. --- ## Adding your own currency Anything you count in units Econumo doesn't know about — loyalty points, airline miles, a local voucher scheme, a cryptocurrency your server doesn't carry — can become a currency of your own. Press **Create currency** and fill in: - **Name** — how the currency is labelled, e.g. "Points". - **Code** — a short code, e.g. `PTS`. - **Symbol** — what is shown next to amounts. Optional; the code is used when you leave it empty. - **Decimal places** — the slider sets how many decimals amounts carry (2 by default; set it to 0 for something counted in whole units, like miles). - **Exchange rate** — how many units of your currency one unit of your default currency is worth, entered as `1 USD = …`. Your custom currency then behaves like any other: you can open an account in it, and pick it for a budget or a single budget element. In the screenshots throughout this guide, John's "Airline Miles" account uses a custom **PTS** currency worth 10 to the dollar. **Note** A custom currency's rate is fixed — Econumo never updates it for you. If the real rate moves and it matters to you, edit the currency to bring the number up to date. --- ## Editing or deleting a custom currency Open the three-dots menu next to a currency under **My currencies** and choose **Edit** or **Delete**. Econumo currencies can only be switched on and off — their details belong to the server, not to you. --- # User Profile URL: https://econumo.com/docs/user-guide/user-profile/ # User profile This section provides an overview of user profiles in Econumo. ## In this section - [Accessing your user profile](/docs/user-guide/user-profile/#accessing-your-user-profile) - [Updating your user profile](/docs/user-guide/user-profile/#updating-your-user-profile) - [How to change your name](/docs/user-guide/user-profile/#how-to-change-your-name) - [How to change your email](/docs/user-guide/user-profile/#how-to-change-your-email) - [How to change your avatar](/docs/user-guide/user-profile/#how-to-change-your-avatar) - [How to change your password](/docs/user-guide/user-profile/#how-to-change-your-password) - [How to change your default currency](/docs/user-guide/user-profile/#how-to-change-your-default-currency) - [How to change the interface language](/docs/user-guide/user-profile/#how-to-change-the-interface-language) - [Sign-in methods](/docs/user-guide/user-profile/#sign-in-methods) - [Sessions](/docs/user-guide/user-profile/#sessions) - [API tokens](/docs/user-guide/user-profile/#api-tokens) - [Connected apps](/docs/user-guide/user-profile/#connected-apps) - [Privacy](/docs/user-guide/user-profile/#privacy) --- ## Accessing your user profile Open **Settings** and select the card with your name at the top of it — it is labelled **Personal settings**, and so is the page it opens. The page shows your personal details, preferences, security and privacy settings. To sign out, press **Log out**: it sits under that card on the Settings page and at the top of Personal settings. --- ## Updating your user profile ### How to change your name Type the new name in the "Name" field and tap outside it — the change is saved automatically. ### How to change your email Choose **Change email** in the Security section, enter your **New email** and **Current password**, and press **Send confirmation code**. Econumo emails a code to the new address to confirm you own it before the change takes effect; your old address gets a notice, and every other session is signed out. ### How to change your avatar Click your avatar on the profile screen to open the avatar picker. Choose a color and an icon, then press **Save**. Your avatar is shown to everyone you [share](/docs/user-guide/shared-access/) accounts and budgets with. ### How to change your password Choose **Change password** in the Security section. Enter your current password, then the new one twice: **Note** On a self-hosted instance with password sign-in turned off (`ECONUMO_PASSWORD_LOGIN=false`), neither **Change password** nor **Set a password** appears here — every sign-in goes through a linked provider instead. ### How to change your default currency The **Currency** preference in the Preferences section sets your default currency in Econumo. ### How to change the interface language The **Language** preference sits right below **Currency**. Open it and pick one of the 11 available languages — English, Deutsch, Español, Français, Italiano, Nederlands, Polski, Português, Русский, Українська, and 简体中文. The same dialog is available from the language badge on the sign-in and sign-up screens, before you have an account. --- ## Sign-in methods **Security → Sign-in methods** lists the external accounts you can use to sign in instead of a password — Google, Apple, or a custom OpenID Connect provider, whichever your Econumo instance enables. Each provider your instance turns on appears here with a **LINK** button. Press **LINK** to connect a provider: Econumo hands you off to it to confirm it's you, then brings you back with the provider listed as linked, its button now reading **UNLINK**. From then on you can sign in either with your password or with that provider. **Note** Unlinking is the same button in reverse. If a linked provider is the *only* way into your account, Econumo won't let you remove the last one. For a passwordless account, set a password first from **Change password**. On an instance with password sign-in turned off, a stored password no longer counts as a way in either, so the last remaining provider can't be unlinked at all — the button is disabled with a note explaining why. Linking or unlinking a provider emails you a notice, so gaining or losing a way into your account never happens without you knowing. --- ## Sessions **Security → Sessions** lists every device currently signed in to your account, with the browser and operating system it was identified as and when it was last active. Your current session is marked **Current**. Press **Revoke** next to a session to sign that device out, **Sign out** to end the session you are using right now, or **Sign out other devices** to end every session except the current one. **Note** If you spot a session you do not recognise, revoke it and [change your password](/docs/user-guide/user-profile/#how-to-change-your-password). --- ## API tokens Econumo has a [REST API](/docs/api/), and personal access tokens are how you authenticate against it — handy for scripts, home-automation dashboards, or any integration of your own. Open **Security → API tokens** to manage them. Press **Create token**, give it a name that will remind you what it is for (for example, "Home Assistant"), and choose when it expires: **30 days**, **90 days**, **365 days**, a **custom date**, or **never**. **Note** A personal access token grants full access to your account over the API — treat it like a password. Create a separate token per integration so you can revoke one without breaking the others. The same tokens also authenticate Econumo's built-in MCP server. Claude and Codex no longer need one — they sign in through the browser, see [Connected apps](/docs/user-guide/user-profile/#connected-apps) — but a token still works for any MCP client that can't. --- ## Connected apps Econumo has a built-in MCP server, so an AI assistant such as Claude or Codex can check your balances and budgets or log transactions for you, straight from a chat. Connecting one takes only your Econumo address — there is no token to create or paste. Open **Security → Connected apps**. The page shows the address to use — for Econumo, `https://app.econumo.com/mcp` — with a **Copy** button beside it: 1. In Claude (on the web, desktop or mobile), Claude Code or Codex, add a custom connector — an MCP server — with that address. 2. The app opens Econumo in your browser. Sign in if you are asked to. 3. Econumo asks you to **Allow** the app access to your account. An app you allow can read and change all of your Econumo data. Every app you have allowed is listed on the same page, with when it was connected and when it was last used. **Revoke** signs an app out right away. **Note** On a self-hosted server, connecting by address needs `ECONUMO_URL` set to the server's public **https** address, with no path. Without it, Connected apps reads *"Connecting AI apps isn't available on this server"* and the MCP server accepts [API tokens](/docs/user-guide/user-profile/#api-tokens) only. Claude on the web, desktop and mobile connects from Anthropic's servers, so for those the server must be reachable from the internet; Claude Code and Codex only need to reach it from your computer. --- ## Privacy The **Privacy** section, below Security, holds a single switch: **Share usage statistics**. Sharing is on by default. Switching it off stops Econumo from sending in-app usage events right away — no page reload needed, and the setting follows your account across devices. **Note** Turning usage sharing off never touches your budgets, transactions, or any other data in your account. Financial data and personal information such as your name or email are never sent either way, whichever way the switch is set. --- # CSV Import & Export URL: https://econumo.com/docs/user-guide/csv-import-export/ # CSV Import & Export This section provides an overview of 'CSV Import & Export' in Econumo. ## In this section - [Exporting your transactions to CSV](/docs/user-guide/csv-import-export/#exporting-your-transactions-to-csv) - [Importing transactions from CSV](/docs/user-guide/csv-import-export/#importing-transactions-from-csv) --- ## Exporting your transactions to CSV You can export your transactions to a CSV file for use in other applications or for backup purposes. To export your transactions: 1. Navigate to **Settings → Import & export**. 2. Click on **Export CSV**. 3. Select the account(s) you want to export transactions from. 4. Click **Export** to download the CSV file. --- ## Importing transactions from CSV Econumo allows you to import transactions from a CSV file. This is useful for migrating data from other financial applications or for bulk adding transactions. CSV import requires the CSV file to be in a specific format. It must be comma-separated values and include the following columns: Date, Amount, and Account name. Optional columns are: Category, Description, Tags, and Payee (Sender/Recipient). The "Amount" column should contain positive values for income and negative values for expenses. Alternatively, you can choose to import data from two columns, "Inflow" and "Outflow," instead of "Amount". To import transactions from a CSV file: 1. Navigate to **Settings → Import & export**. 2. Click on **Import CSV**. 3. Choose the CSV file you want to import (up to 10 MB). 4. Map the CSV columns to the corresponding fields in Econumo — the required fields (Account, Date, Amount) are marked with an asterisk. 5. Click **Import** to add the transactions to your account. **Note** Example CSV format: ```csv account_name,category,description,tag,payee,amount,spent_at "Credit Card",Groceries,,,Costco,-500,"2026-01-04 13:01:32" "Credit Card",Gas,,,Chevron,-50,"2026-01-04 13:01:51" "Credit Card",Gifts,,,Costco,-100,"2026-01-04 13:03:51" "Credit Card","Car Service",,car,,-150,"2026-01-04 13:04:51" Cash,,,,,500,"2026-01-04 12:59:09" Cash,Salary,,,,5000,"2026-01-04 13:02:17" Cash,,"Transfer of 1000 USD to Savings",,,-1000,"2026-01-04 13:04:07" Savings,,"Transfer of 1000 USD from Cash",,,1000,"2026-01-04 13:04:07" Savings,,,,,20000,"2026-01-04 13:01:01" ``` --- # Apple Wallet URL: https://econumo.com/docs/user-guide/apple-wallet/ # Apple Wallet Connect Apple Wallet to Econumo to record purchases when you tap your iPhone to pay with Apple Pay. An iPhone Shortcut sends the card name, merchant, amount, and currency directly to Econumo. ## In this section - [Before you start](#before-you-start) - [Set up on iOS 26 or iOS 27](#setup) - [1. Install the Shortcut](#1-install-the-shortcut) - [2. Connect the Shortcut](#2-connect-the-shortcut) - [3. Create the automation](#3-create-the-automation) - [iOS 26](#ios-26) - [iOS 27](#ios-27) - [4. Make the first payment](#4-make-the-first-payment) - [5. Switch the automation to Run Immediately](#5-switch-the-automation-to-run-immediately) - [Map your cards to accounts](#map-your-cards-to-accounts) - [Troubleshooting](#troubleshooting) ## Before you start You will need an iPhone running **iOS 26 or iOS 27**, Apple Pay set up with a payment card, and the **Shortcuts** app, which comes with iOS. Allow about five minutes for setup; the first payment needs to happen at a payment terminal. Open Econumo on your iPhone and go to **Settings → Apple Wallet**. Tap **Set up Apple Wallet** to open the five-step checklist. Keep it available so you can return to it as you switch between Econumo and Shortcuts. This integration works when you **tap your iPhone to pay**. Apple Pay payments on websites aren't supported.
--- ## Setup The five setup steps are the same on both versions. The redesigned Shortcuts app on iOS 27 changes how you create the automation in **step 3** and enable automatic runs in **step 5**; follow the instructions for your iOS version in those steps. Screenshots for the shared steps were taken on iOS 26. Keep confirmation enabled until the first payment has reached Econumo and you have granted the requested permissions: **Run After Confirmation** on iOS 26, or **Confirm Before Run** on iOS 27. ### 1. Install the Shortcut In Econumo's setup checklist, open the **econumo** Shortcut link under **Install the Shortcut**. In Shortcuts, tap **Add Shortcut**. The yellow **econumo** tile will appear in your library. Return to Econumo and tap **Done** under step 1.
### 2. Connect the Shortcut Tap **Connect the Shortcut** in Econumo. This creates an API token and opens the Shortcut, which saves your Econumo server address and token. When iOS asks whether **econumo** can send data to your Econumo server, choose **Always Allow**. Use **Always Allow** for each data-access prompt that offers it, so future payments can be sent without asking again. If Shortcuts asks to display notifications, tap **Allow**. Wait for the **Econumo configured** notification, then return to Econumo. The checklist advances once the Shortcut has reached your server.
### 3. Create the automation #### iOS 26 1. Open **Shortcuts** and select the **Automation** tab. 2. Tap **New Automation**, or **+** if you already have automations. 3. Find and select **Wallet**.
4. Select the payment cards and purchase categories you want to import. Select every category if you want all purchases from those cards. Leave **Filter Merchants** unset unless you want to limit which merchants trigger the automation. 5. Select **Run After Confirmation**, then tap **Next**. 6. Under **My Shortcuts**, select **econumo**. The automation now appears in the Automation tab. Return to Econumo and tap **Done** under step 3.
#### iOS 27 1. Open **Shortcuts**. If you are in **All Shortcuts**, tap the back arrow to return to **Library**. 2. Select **Automation** in Library. 3. Tap **+** at the bottom to create an automation.
4. On the **New Shortcut** screen, tap **Edit** in the top-right corner. 5. Tap the **Search** field at the bottom and search for **Wallet**. 6. Choose **Wallet** under **Automation**, with the description **When I tap a Wallet Card or Pass**.
7. Tap **Any Card** to choose the cards to import, or leave it as **Any Card** to include all cards. Leave **Categories** and **Merchants** as **Any Category** and **Any Merchant** to include all purchases from those cards. Keep **Automation**, **Notify**, and **Confirm Before Run** on for the first payment. 8. Search for **Run Shortcut** and add that action. 9. In the new action, tap the blue **Shortcut** placeholder and choose **econumo**.
10. Expand the **Run econumo** action using its blue arrow if needed. Tap **Choose Variable** beside **Input** and select **Transaction**. 11. Check that the action reads **Run econumo** with **Input: Transaction**, then tap the back arrow. The new automation appears in the Automation list with its switch on. Set the input to **Transaction** so Econumo receives the Wallet payment details when the automation runs.
Return to Econumo and tap **Done** under step 3. ### 4. Make the first payment Make a purchase by tapping your iPhone to pay with one of the cards you selected. When the automation asks, tap **Run**. The first payment may bring up additional permission prompts. Choose **Always Allow** on every prompt that offers it, including permission to send the transaction to your Econumo server. Return to Econumo and wait for the payment to arrive. Step 4 completes automatically when Econumo receives it. The card will also appear under **Cards**, where you can [map it to an account](#map-your-cards-to-accounts). ### 5. Switch the automation to Run Immediately After the first payment has reached Econumo: #### On iOS 26 1. Open **Shortcuts → Automation** and tap your Wallet automation. 2. Tap **Run After Confirmation** beside **Automation** at the top. 3. Choose **Run Immediately**. 4. Leave **Notify When Run** off if you don't want a notification each time the automation runs, then tap **Done** to save.
#### On iOS 27 1. Open **Shortcuts → Library → Automation** and open the Wallet automation you created. It may be named **Run Shortcut**. 2. Turn off **Confirm Before Run** if it is shown, then turn off **Notify**. Keep **Automation** on. The final settings should look like the screenshot below, with **Automation** on and **Notify** off. 3. Tap the back arrow to return to the Automation list.
Return to Econumo and tap **Done** under step 5 to finish the checklist. This completes **Switch the automation to Run Immediately** in Econumo's checklist on either version of iOS. Future payments that match your selected cards, categories, and merchant filters will be sent to Econumo without a confirmation prompt. --- ## Map your cards to accounts In **Econumo → Settings → Apple Wallet**, find the card under **Cards**. Choose **Map**, select the Econumo [account](/docs/user-guide/accounts/) that represents that card, and confirm. Payments waiting for that card can then be imported into the account, along with future payments. Each newly used card needs its own mapping. Cards with the same name in Wallet appear as one card in Econumo. Choose **Ignore** for a card you don't want to import, or **Remap** to change its destination account later. ## Troubleshooting - **The first payment hasn't arrived:** check that the automation uses the **econumo** Shortcut, includes the card and category you paid with, and doesn't exclude the merchant. While confirmation is enabled, you must tap **Run** after paying and grant the requested permissions. On iOS 27, also check that **Run econumo** has **Transaction** selected as its input. - **The card appears, but the payment isn't in an account:** map the card to an Econumo account under **Settings → Apple Wallet**. - **Every payment still asks for confirmation:** complete step 5 and save the automation with **Run Immediately** selected on iOS 26, or confirmation disabled on iOS 27. - **You need to connect the Shortcut again:** use **Configure again** in Econumo's setup guide and follow the checklist. Connecting again replaces the token; open the Shortcut from the new connection link before expecting further imports. For more about the Wallet trigger, see Apple's [Shortcuts User Guide for iOS 26](https://support.apple.com/en-mide/guide/shortcuts/apd65c67538a/9.0/ios/26). For the redesigned Shortcuts app, see [Add automations on iOS 27](https://support.apple.com/en-mide/guide/shortcuts/apdfbdbd7123/10.0/ios/27). --- # Econumo apps URL: https://econumo.com/docs/apps/ # Econumo apps Econumo is a web application, but you can also use it as a regular mobile application on your iPhone, Android device, Mac, or PC. --- ## On iPhone: 1. Open the website [https://app.econumo.com](https://app.econumo.com) in Safari. 2. Tap the Share button (square with an upward arrow). 3. Select `Add to Home Screen` from the menu. 4. Rename the shortcut if desired, then tap `Add`. The web app will appear on your home screen and open in its own instance. --- ## On Android: 1. Open the website [https://app.econumo.com](https://app.econumo.com) in Google Chrome. 2. Tap the three-dot menu in the top-right corner. 3. Select `Add to Home Screen` or `Install App` (if available). 4. Confirm by tapping `Add`. The web app will now appear on your home screen and function like an app. --- ## On Mac 1. Open the website [https://app.econumo.com](https://app.econumo.com) in Safari. 2. Click `File > Add to Dock` from the menu bar, or click the share icon in the Safari toolbar and select `Add to Dock`. 3. Confirm by clicking `Add`. The web app will appear in your Dock, Applications folder, and Launchpad for easy access. --- ## On PC 1. Open the website [https://app.econumo.com](https://app.econumo.com) in Microsoft Edge. 2. Click the three-dot menu in the top-right corner. 3. Go to `Apps > Install this site as an app`. 4. Confirm by clicking `Install`. The web app will be added to your Start menu and can also be pinned to your taskbar or desktop. --- # Self-Hosting URL: https://econumo.com/docs/self-hosting/ # Self-Hosting **Econumo Self-Hosted** gives you full control over your financial data by running Econumo on your own infrastructure. This section offers guidance and resources to help you manage and optimize your Econumo Self-Hosted instance. --- ## Contents - [Multi-Currency Support](/docs/self-hosting/multi-currency/) - [Backups](/docs/self-hosting/backups/) - [CLI commands](/docs/self-hosting/cli-commands/) - [Debug](/docs/self-hosting/debug/) --- # Multi-Currency support URL: https://econumo.com/docs/self-hosting/multi-currency/ # Multi-Currency Support Econumo offers multi-currency functionality. To get started, you need to: 1. Load the currencies you use into your Econumo instance. 2. Set up regular exchange-rate updates (if needed). --- ## How to add a new currency Econumo preloads **USD** by default (or whatever you set as `ECONUMO_CURRENCY_BASE`). To use another currency, add it with the `currency:add` command — pass the ISO code, and optionally a display name and the number of fraction digits: ```sh docker compose exec econumo /app/econumo currency:add EUR Euro 2 ``` If you want to add several currencies and keep exchange rates up to date, see the next step. --- ## How to update exchange rates To keep exchange rates current: 1. Create a free account at [Open Exchange Rates](https://openexchangerates.org). 2. Obtain your App ID from the Open Exchange Rates dashboard. 3. Set the `OPEN_EXCHANGE_RATES_TOKEN` environment variable in your `.env` and restart the container. 4. Run the update command (it accepts an optional `YYYY-MM-DD` date, defaulting to today): ```sh docker compose exec econumo /app/econumo currency:update-rates ``` To keep rates fresh, schedule this command from a cron job on the host, e.g. once a day. Econumo's base currency defaults to USD and is configurable with the `ECONUMO_CURRENCY_BASE` environment variable. Note that a free Open Exchange Rates account only supports USD as its base currency, so keep the base at USD unless you have a paid plan. The **base currency is not your default currency** — it is used only for conversions. For example, if you have most of your accounts in CAD (Canadian Dollar) and one savings account in USD and another in EUR, currency conversions will occur in two scenarios: 1. When you transfer money from your CAD account to your USD/EUR accounts. 2. In your budget, if you choose to convert your spending to other currencies. Econumo will use the following conversions: 1. CAD ↔ USD directly. 2. CAD → USD (base) → EUR and EUR → USD (base) → CAD Converting using the base currency usually results in minimal or no difference compared to direct conversions. --- # Backups URL: https://econumo.com/docs/self-hosting/backups/ # Backups Econumo does not come with a built-in backup mechanism; it is your responsibility to configure backups for your instance. By default Econumo stores its data in a single SQLite file, so backups are easy. In the Docker setup that file lives in the `db` volume at `/app/var/db/db.sqlite` (the path your `DATABASE_URL` points to). The `jwt` volume (`/app/var/jwt`) holds the JWT keypair — back it up too, or existing login tokens become invalid after a restore. **Note** Always take a manual backup before upgrading your Econumo version, and store a copy on a separate device. --- ## Simple file copy The most reliable backup is a copy of the database file taken while nothing is writing to it. Stop the container, copy the file, and start it again: ```sh docker compose stop econumo docker run --rm -v econumo_db:/data -v "$PWD":/backup alpine \ cp /data/db.sqlite /backup/db-$(date +%F).sqlite docker compose start econumo ``` (Replace `econumo_db` with your actual volume name — check `docker volume ls`.) For a scheduled version, run the same copy from a cron job. A short pause while the container is stopped is fine for a personal instance. --- ## Litestream (continuous replication) [Litestream](https://litestream.io/getting-started/) streams SQLite changes to object storage (S3, Cloudflare R2, …) continuously, so you never lose more than a few seconds of data. It requires the database to be in WAL mode. **WARNING!** Econumo runs SQLite with a single pinned connection and does not enable WAL mode itself. Enabling WAL for Litestream is an advanced setup: take a backup first, and test a restore before relying on it. 1. Take a manual backup (see above). 2. Enable WAL mode on the database file (one-off; the setting is stored in the file). With the container stopped, run it against the copied file, e.g. `sqlite3 db.sqlite 'PRAGMA journal_mode=WAL;'`, then put it back. 3. Create a `litestream.yml` next to your `docker-compose.yml`: ```yml dbs: - path: /data/db.sqlite replicas: # Example for Cloudflare R2: - type: s3 endpoint: https://.r2.cloudflarestorage.com bucket: backup-econumo-sqlite ``` 4. Provide the credentials to the Litestream service (via its own environment): ``` LITESTREAM_ACCESS_KEY_ID= LITESTREAM_SECRET_ACCESS_KEY= ``` 5. Add Litestream as a sidecar sharing the `db` volume: ```yml services: econumo: image: ghcr.io/econumo/econumo:latest env_file: - .env ports: - "8181:80" volumes: - db:/app/var/db - jwt:/app/var/jwt restart: unless-stopped litestream: image: litestream/litestream:latest environment: - LITESTREAM_ACCESS_KEY_ID - LITESTREAM_SECRET_ACCESS_KEY volumes: - db:/data - ./litestream.yml:/etc/litestream.yml command: replicate restart: unless-stopped depends_on: - econumo volumes: db: jwt: ``` 6. Restart the stack: `docker compose pull && docker compose down && docker compose up -d` 7. Verify that replication is working and practice a restore. --- ## PostgreSQL If you run Econumo on PostgreSQL instead of SQLite (set `DATABASE_URL` to a `postgres://…` URL), use your usual PostgreSQL backup tooling — for example a scheduled `pg_dump` — instead of the SQLite steps above. --- # CLI (terminal) commands URL: https://econumo.com/docs/self-hosting/cli-commands/ # CLI (terminal) commands Econumo ships as a single binary that is subcommand-driven: `serve` runs the server, and everything else is a management command. In the Docker image the binary lives at `/app/econumo`, so you run commands with `docker exec`: ```sh docker compose exec econumo /app/econumo [args] ``` Running the binary with no command (or an unknown one) prints the full usage, so `docker compose exec econumo /app/econumo` is the quickest way to see what is available on your version. **Note** The image is distroless — it has no shell. Run the `/app/econumo` binary directly as shown above; `docker compose exec econumo bash` will not work. --- ## User management ```sh # Create a user docker compose exec econumo /app/econumo user:create "" # Change a user's email docker compose exec econumo /app/econumo user:change-email # Change a user's password docker compose exec econumo /app/econumo user:change-password # Activate or deactivate a user docker compose exec econumo /app/econumo user:activate docker compose exec econumo /app/econumo user:deactivate ``` --- ## Currencies ```sh # Add a currency: code, optional name, optional fraction digits docker compose exec econumo /app/econumo currency:add EUR Euro 2 # Load exchange rates from Open Exchange Rates (optional date, defaults to today) docker compose exec econumo /app/econumo currency:update-rates ``` See [Multi-Currency Support](/docs/self-hosting/multi-currency/) for the full setup, including the `OPEN_EXCHANGE_RATES_TOKEN` variable. --- ## Maintenance ```sh # Generate the RS256 JWT keypair (skips if one already exists; --force overwrites) docker compose exec econumo /app/econumo jwt:generate ``` **Note** The JWT keypair is generated automatically on first boot and persisted in the `jwt` volume (`/app/var/jwt`), so you normally never need to run `jwt:generate` by hand. --- # Debug Econumo URL: https://econumo.com/docs/self-hosting/debug/ # Overview Econumo uses the following HTTP response codes: 1. **HTTP 2xx** — everything is fine. 2. **HTTP 4xx** — an error in the user's input. 3. **HTTP 5xx** — a server error. Every response also carries an `X-Request-Id` header (a UUID). When reporting a problem, include it — it lets you find the exact request in the logs. --- ## Reading the logs Econumo writes structured logs to standard output, so you read them with Docker rather than from a file inside the container: ```sh docker compose logs -f econumo ``` Each request produces one result line (the operation name, its `status`, `route`, and `request_id`), logged at `INFO` for 2xx, `WARN` for 4xx, and `ERROR` for 5xx and recovered panics. --- ## How to debug 5xx errors If you hit a **500** response, find the matching `ERROR` line in the logs by its `request_id`. To get more detail, raise the log level and, on a non-public instance, expose stack traces in the response body: ```dotenv # in your .env ECONUMO_LOG_LEVEL=debug ECONUMO_DEBUG=true ``` Restart the container to apply. `ECONUMO_DEBUG=true` includes the stack trace in the 500 response envelope — useful while debugging, but leave it off (the default) on a public instance so internals aren't exposed. **Note** The image is distroless and has no shell, so you cannot `exec` into the container to `tail` a log file. Use `docker compose logs` as shown above. --- # Econumo API URL: https://econumo.com/docs/api/ # Econumo API Econumo includes a REST API and OpenAPI (Swagger) documentation. The Swagger UI is accessible at the `api/doc` URL. For example: [https://app.econumo.com/api/doc/](https://app.econumo.com/api/doc/). The documentation features only `GET` and `POST` HTTP methods. The `GET` method is used for reading data, while the `POST` method is used for modifying data (creating, changing, or deleting). ## In this section - [Econumo API](/docs/api/#econumo-api) - [System endpoints](/docs/api/#system-endpoints) - [Health check](/docs/api/#health-check) --- ## Econumo API All methods except those under `/api/v1/system` are part of the **User API**. To use the **User API**, you need to authorize by using the `/api/v1/user/login-user` method, which will provide an access token in response. Include this **Bearer** token in the `Authorization` header for your requests, for example: ``` Authorization: Bearer {ACCESS_TOKEN} ``` --- ## System endpoints ### Health check Econumo includes a `/_/health-check` endpoint. For example: https://app.econumo.com/_/health-check. You can configure your monitoring tools to check if Econumo is functioning properly. --- ## System API The System API was deprecated in version 0.8.0 and will be removed in version 1.0.0. All methods under `/api/v1/system` are part of the **System API**. These methods are designed to manage the Econumo instance itself, such as updating currency rates. To use them, you must specify the `ECONUMO_SYSTEM_API_KEY` environment variable with a unique string. You will use this as a token in the `Authorization` header: ``` Authorization: {ECONUMO_SYSTEM_API_KEY} ``` If `ECONUMO_SYSTEM_API_KEY` is empty, you will not be able to use the **System API**. --- # Econumo compared URL: https://econumo.com/docs/comparison/ # Econumo compared Econumo is not the only way to budget, and it is not the right tool for everyone. These pages compare it against the alternatives people most often weigh it against — on licence, price, popularity, release history and features — and say plainly where the other tool is the better choice. Every figure is sourced and dated. Where a claim comes from a competitor's own documentation, it is linked. --- ## Comparisons - [Econumo vs Actual Budget](/docs/comparison/econumo-vs-actualbudget/) — the closest open-source match: also MIT, also envelope budgeting, also self-hostable. Differs sharply on multi-currency, family sharing and bank sync. - [Econumo vs YNAB](/docs/comparison/econumo-vs-ynab/) — the app that made envelope budgeting mainstream. Proprietary, cloud-only and $109/year, with excellent bank sync and no multi-currency within a budget. - [Econumo vs Firefly III](/docs/comparison/econumo-vs-firefly-iii/) — the most established self-hosted finance manager. A double-entry ledger rather than an envelope budgeter, and strictly single-user. - [Econumo vs Maybe Finance](/docs/comparison/econumo-vs-maybe-finance/) — Maybe shut down in 2025 and its repo is archived. Where displaced users should go, and when the community fork Sure is the better answer than Econumo. - [Econumo vs ezBookkeeping](/docs/comparison/econumo-vs-ezbookkeeping/) — the closest *technical* twin: also Go, also MIT, also tiny. But it has no budgeting features and no shared household data. - [Econumo vs GnuCash](/docs/comparison/econumo-vs-gnucash/) — a 28-year-old desktop double-entry accounting package. Far deeper accounting; no envelope budgeting, no sharing, no mobile. --- ## How Econumo positions itself Across every comparison, the same three differences keep appearing: 1. **Multi-currency is native.** Each account has its own currency, cross-currency transfers record both amounts, and budgets convert to a single currency. Several popular alternatives do not support this at all. See [Multi-Currency](/docs/user-guide/multi-currency/). 2. **Family sharing is built in.** You connect by invitation and set an access level per account and per budget — no identity provider to run. See [Shared Access](/docs/user-guide/shared-access/). 3. **Hosting is a one-time payment.** Self-hosting is free forever; the hosted cloud is a single $29.99 payment per user rather than a subscription. See [Editions](/docs/edition/). And the recurring trade-off to be aware of: - **There is no automatic bank synchronisation.** Econumo is manual-entry first, with [CSV import/export](/docs/user-guide/csv-import-export/) and a [REST API](/docs/api/) for bulk data. If automatic bank import is essential to you, several alternatives do it better — see the [FAQ](/docs/faq/) for why. --- # Econumo vs Actual Budget URL: https://econumo.com/docs/comparison/econumo-vs-actualbudget/ # Econumo vs Actual Budget Econumo and Actual Budget are both open-source, self-hostable, envelope-style budgeting apps released under the MIT licence. They overlap enough that people routinely evaluate one against the other — and they differ enough that the right answer is usually obvious once you know which two or three things you care about. This page compares them on licence, price, popularity, release history and features. Where Actual Budget is the better tool, it says so. **The short version** Choose **Actual Budget** if you bank in a single currency and want automatic bank synchronisation, a large community and the most mature open-source budgeting codebase available. Choose **Econumo** if you budget in **more than one currency**, want **built-in family sharing** without standing up an identity provider, or want a **hosted account** you can simply pay for once. --- ## At a glance | | Econumo | Actual Budget | |---|---|---| | **Licence** | MIT | MIT | | **Self-hosted price** | Free | Free | | **Hosted price** | $29.99 one-time, per user | No first-party hosting (PikaPods ≈ $1.50/mo) | | **GitHub stars** | 79 | 27,595 | | **Contributors** | Small core team | 463 | | **Releases to date** | 24 | 59 | | **In development since** | 2020 | 2022 as open source | | **First public release** | November 2024 | April 2023 | | **Latest release** | v1.1.1 (19 Jul 2026) | v26.7.0 (2 Jul 2026) | | **Language / stack** | Go, single binary | TypeScript / Node.js ≥ 22 | | **Database** | SQLite (default) or PostgreSQL | SQLite | | **Budgeting method** | Envelope | Envelope / zero-sum | | **Multi-currency** | ✅ Native, per account | ❌ Not supported | | **Family sharing** | ✅ Built in, per-item access | ⚠️ Requires external OIDC provider | | **Bank sync** | ❌ Manual entry + CSV | ✅ 4 active providers | | **Mobile** | PWA | PWA (native apps deprecated) | | **End-to-end encryption** | ❌ | ✅ Optional | | **REST API** | ✅ OpenAPI / Swagger | ✅ API + CLI | *Figures observed 19 July 2026 from the GitHub API and each project's official documentation.* --- ## Licence Both projects use the **MIT licence** — among the most permissive licences in common use. You can run either commercially, modify either, and neither imposes a copyleft obligation on code you build around it. This is worth stating plainly because it is a genuine tie, and it distinguishes both from AGPL-licensed alternatives such as Firefly III or Ghostfolio, where network use of a modified version obliges you to publish your changes. - Econumo: [MIT](https://github.com/econumo/econumo/blob/main/LICENSE) - Actual Budget: [MIT](https://github.com/actualbudget/actual/blob/master/LICENSE.txt) --- ## Price | | Econumo | Actual Budget | |---|---|---| | Self-hosted | **Free** | **Free** | | Hosted by the project | **$29.99 one-time**, per user | Not offered | | Hosted by a partner | — | PikaPods, ≈ $1.50/month | | Funding model | Cloud licences | Donations (Open Collective, GitHub Sponsors) | Self-hosting either app costs nothing but your own infrastructure. The difference is what happens when you would rather not run a server. Econumo sells a **hosted cloud account for a single $29.99 payment per user**. There is no subscription and no recurring renewal. Actual Budget has **no first-party hosted option at all** — a deliberate choice, not an oversight. If you want Actual without running Docker yourself, the documented route is its hosting partner [PikaPods](https://actualbudget.org/docs/install/pikapods/), at roughly $1.50 per month as of November 2025, which works out near $18/year recurring and shares revenue back with the project. Over five years the hosted paths land at roughly $29.99 for Econumo against roughly $90 for PikaPods-hosted Actual — though PikaPods is a general hosting service and that comparison flatters Econumo slightly, since you are also paying for compute. --- ## Popularity and project health This is the category where Actual Budget wins decisively, and pretending otherwise would not help you choose. | | Econumo | Actual Budget | |---|---|---| | GitHub stars | 79 | **27,595** | | Forks | 2 | **2,706** | | Named contributors | small core team | **463** | | Container pulls | ~21,000 across two registries | **30.9 million** (Docker Hub) | | Open source since | November 2024 | April 2022 | Actual Budget is one of the most popular open-source personal finance projects in existence, with a broad contributor base, an active Discord and Reddit community, and a disciplined monthly release train that has not slipped in three years. If community size, third-party guides and the odds of the project outliving any one maintainer are what matter to you, **Actual Budget is the safer pick.** Econumo is a far smaller project, though not a newer one. It has been in development since 2020, was open-sourced in November 2024, and was rebuilt on Go and React for its 1.0 release in July 2026. What its size buys you is a focused feature set and fast movement on the specific gaps described below; what it costs you is ecosystem. --- ## Release history Both projects ship regularly, on different philosophies. | | Econumo | Actual Budget | |---|---|---| | Total releases | 24 | 59 | | First public release | v0.1.0, 16 Nov 2024 | v22.12.9, 17 Apr 2023 | | Latest release | v1.1.1, 19 Jul 2026 | v26.7.0, 2 Jul 2026 | | Versioning | SemVer | CalVer (`YY.M.patch`) | | Cadence | Frequent, feature-driven | ~Monthly, on the 1st–5th | Actual Budget releases a minor version in the first week of nearly every month — 20 releases in 2023, 13 in 2024, 16 in 2025 and 10 through July 2026. Econumo reached its 1.0 milestone in July 2026 after 20 months of pre-1.0 development and ships on a feature-driven cadence. Neither project is dormant. Both pushed code the week this page was written. --- ## Features head to head ### Budgeting method — a genuine tie Both implement **envelope budgeting**: income is assigned to categories, and you spend from the category rather than the account. Actual describes its model as a "monthly envelope system"; Econumo organises envelopes into folders with limits and available amounts. Anyone comfortable in one will recognise the other. *Econumo's budget view: envelopes grouped into folders, with per-envelope limits.* *Actual Budget's budget view: categories with Budgeted / Spent / Balance columns and a "To Budget" figure. Screenshot from the official public demo.* The layouts are close cousins. The meaningful differences are elsewhere. ### Multi-currency — Econumo's clearest advantage This is the single biggest functional gap between the two, and it is not a close call. **Actual Budget does not support multi-currency.** Its own documentation states that the software is "[currency agnostic and does not support multi-currency](https://actualbudget.org/docs/budgeting/multi-currency/)". The only documented approach is a manual workaround: hold separate accounts per currency and convert amounts yourself using rule templating, which is itself an experimental feature. There is no per-account currency field, no automatic exchange-rate updates and no multi-currency reporting. The request is the most-upvoted issue in the repository — [#1132](https://github.com/actualbudget/actual/issues/1132), opened in June 2023 with 328 upvotes — and discussion was still active in April 2026 over how to model the data. It does not appear on the [2026 roadmap](https://actualbudget.org/blog/roadmap-for-2026/). What has shipped so far is cosmetic: v26.1.0 added currency *symbols* to the budget view, and v26.7.0 added three more symbols to the list. **Econumo supports multiple currencies natively.** Each account has its own fixed currency; cross-currency transfers record both amounts; and the budget converts everything into a single currency so the totals reconcile. See [Multi-Currency](/docs/user-guide/multi-currency/) for how it works. If you hold money in more than one currency — expats, cross-border families, anyone paid in a currency they do not spend — this alone likely decides it. ### Family sharing — built in vs bolted on Both support more than one person, with very different setup costs. **Econumo** has sharing as a first-class concept. You connect to another user by [invitation](/docs/user-guide/shared-access/), then choose an access level *per account and per budget*. Nothing to install, nothing to configure. **Actual Budget** supports multi-user, but the [documentation](https://actualbudget.org/docs/config/multi-user/) requires you to run an **external OpenID Connect provider** — Authelia, Authentik, Keycloak or similar — next to your Actual server. Without OIDC, the server is protected by one shared password, so everyone in the household shares an identity. Two roles exist (Basic and Admin), and budget owners grant per-budget access. For a technical user who already runs an identity provider, this is fine, even preferable. For a couple who want a shared budget on a Raspberry Pi, standing up Keycloak is a real barrier. ### Bank synchronisation — Actual Budget's clearest advantage Here the advantage runs the other way, decisively. **Actual Budget** supports four active bank-sync providers, covering much of the world: | Provider | Region | Note | |---|---|---| | SimpleFIN Bridge | North America | Paid third-party service | | Enable Banking | Europe | Added 2026 | | Akahu | New Zealand | Added v26.7.0, experimental | | Pluggy.ai | Brazil | | One caveat if you are in the EU: the older **GoCardless** integration is [no longer accepting new accounts](https://actualbudget.org/docs/advanced/bank-sync/), so new European users are routed to the newer Enable Banking integration. Every provider also requires you to register your own API credentials — Actual brokers nothing on your behalf. **Econumo has no automatic bank import.** This is an explicit product decision rather than a missing feature: the [FAQ](/docs/faq/) states that automated import is not a priority, on the view that manual entry builds a stronger habit of attention to spending. [CSV import and export](/docs/user-guide/csv-import-export/) and the [REST API](/docs/api/) are the supported routes for bulk data. If automatic transaction import is non-negotiable for you, **choose Actual Budget.** ### Mobile Neither project ships a maintained native mobile app. Actual Budget's official mobile applications are **deprecated**, and the archived codebase is public; mobile parity is a stated 2026 roadmap goal, which is itself an acknowledgement of the current gap. What exists is an installable PWA, plus unofficial community clients. Econumo is a responsive web app installable to the home screen on [iPhone, Android, Mac and PC](/docs/apps/). In practice both are "a good mobile website you can pin to your home screen". ### Data, API and automation | | Econumo | Actual Budget | |---|---|---| | Import formats | CSV | CSV, QIF, OFX, QFX, CAMT.053 | | YNAB migration | ❌ | ✅ YNAB4 and nYNAB importers | | Export | CSV | CSV, full local data file | | REST API | ✅ OpenAPI / Swagger UI | ✅ Node.js API library | | CLI | ❌ | ✅ Stable since v26.7.0 | | Rules engine | ❌ | ✅ Conditions, actions, templating | | End-to-end encryption | ❌ | ✅ Optional | Actual Budget is substantially stronger on data portability and automation. Its rules engine, importers and optional end-to-end encryption are mature, and its YNAB importers make migration off YNAB genuinely straightforward. Econumo's API is fully documented via Swagger — you can browse it on the [API docs](https://app.econumo.com/api/doc/) — but there is no CLI and no rules engine today. ### Running it | | Econumo | Actual Budget | |---|---|---| | Stack | Go, single static binary | TypeScript on Node.js ≥ 22 | | Image | Distroless Docker image | Docker image | | Database | SQLite or PostgreSQL | SQLite | | Memory footprint | ~10 MB | Higher (Node runtime) | | Architecture | Server-rendered API + web app | Local-first with sync server | | Desktop builds | — | Microsoft Store, Flathub | Econumo ships as **one self-contained Go binary** in a distroless image that serves both the API and the web app, runs migrations on boot and uses about 10 MB of RAM. On a small VPS or a Raspberry Pi alongside other services, that is a meaningful difference. Actual Budget's **local-first architecture** is the more interesting design: your data lives on your device *and* syncs through your server, so the app keeps working fully offline and syncs when it reconnects. Econumo requires a reachable server. --- ## Which should you choose? **Choose Actual Budget if:** - You budget in a single currency - Automatic bank synchronisation matters to you - You want end-to-end encryption or offline-first operation - You are migrating from YNAB and want an importer - Community size, contributor count and ecosystem maturity are decisive - You want a rules engine and CLI for automation **Choose Econumo if:** - You budget across **multiple currencies** - You want **family sharing that works out of the box**, without running an identity provider - You want a **hosted account for a single $29.99 payment** rather than self-hosting or a subscription - You are running on constrained hardware and want a ~10 MB single binary - You prefer deliberate manual entry to automatic import Both are MIT-licensed and both let you export your data, so neither choice locks you in. If you are undecided, a free [Econumo trial](https://app.econumo.com/register) and the [Actual Budget demo](https://demo.actualbudget.org) both run in the browser with no signup. --- ## Frequently asked questions ### Is Actual Budget free? Yes — MIT-licensed and completely free, with no paid tier and no first-party hosted plan. Its hosting partner PikaPods charges about $1.50 per month. ### Does Actual Budget support multiple currencies? No. The official documentation states it is currency agnostic and does not support multi-currency. Only a manual workaround is documented. The request has been the most-upvoted issue in the project since 2023 and is not on the 2026 roadmap. ### Can two people share a budget in Actual Budget? Yes, but it requires configuring an external OpenID Connect provider such as Authelia, Authentik or Keycloak. Without OIDC the server uses a single shared password. Econumo has invitation-based sharing with per-item access levels built in. ### Which is better for budgeting in more than one currency? Econumo. Each account has its own currency, cross-currency transfers record both amounts, and the budget converts everything to one currency. Actual Budget does not support multi-currency at all. ### Does Econumo have automatic bank synchronisation? No. Econumo is manual-entry first, with CSV import and a REST API for bulk data. Actual Budget is clearly stronger here. --- *Last verified 19 July 2026 against the GitHub API and each project's official documentation. Star counts, release counts and prices change — if you spot something out of date, [let us know](/docs/contact-us/).* --- # Econumo vs YNAB URL: https://econumo.com/docs/comparison/econumo-vs-ynab/ # Econumo vs YNAB YNAB is the app that made envelope budgeting mainstream, and most tools in this space — Econumo included — owe something to it. It is also proprietary, cloud-only, and **$109 per year**. If you like the YNAB method but not the subscription, the lock-in, or the single-currency limit, this comparison is for you. If you want the polished product with real bank sync and excellent mobile apps, YNAB is still very good at being YNAB. **The short version** Choose **YNAB** if you want automatic bank import, best-in-class native mobile apps, and a mature, supported product — and the price is acceptable to you. Choose **Econumo** if you want to **own your data**, budget in **more than one currency**, or stop paying a subscription: self-hosting is free forever, and the hosted account is a **single $29.99 payment**. --- ## At a glance | | Econumo | YNAB | |---|---|---| | **Licence** | MIT, open source | Proprietary, closed source | | **Self-hosting** | ✅ | ❌ Cloud only | | **Price** | Free self-hosted; $29.99 one-time cloud | **$14.99/mo or $109/yr** | | **Free trial** | Free forever, self-hosted | 34 days, no card required | | **Student offer** | n/a — free | Free for 365 days | | **People per plan** | $29.99 per user (one-time) | Up to 6 people, one subscription | | **Budgeting method** | Envelope | Zero-based envelope (the Four Rules) | | **Multi-currency** | ✅ Native, per account | ❌ One currency per budget | | **Bank sync** | ❌ CSV import | ✅ Plaid + MX (US, CA, 18 EU countries) | | **Mobile apps** | PWA | ✅ Native iOS and Android | | **Data ownership** | Your server (Econumo Self-Hosted), or ours (app.econumo.com) | YNAB's servers | | **API** | ✅ REST + Swagger, no rate limit | ✅ REST, 200 requests/hour | | **Export** | CSV | CSV | *Figures observed 18–19 July 2026 from ynab.com and Econumo's documentation.* --- ## Price — the headline difference | | Econumo | YNAB | |---|---|---| | Self-hosted | **Free, forever** | Not possible | | Hosted, 1 year | $29.99 one-time | $109 | | Hosted, 3 years | $29.99 one-time | $327 | | Hosted, 5 years | $29.99 one-time | $545 | YNAB costs **$14.99 per month, or $109 per year** if paid annually. It offers a generous **34-day free trial with no credit card**, and students get a **free 365-day subscription** with proof of enrolment. Econumo's self-hosted edition is free indefinitely. The hosted cloud account is a **single $29.99 payment per user** — not a subscription. Over five years that is roughly **$29.99 against $545**. To be fair to YNAB: a single subscription covers **up to six people** with shared data, so a large household spreads that cost further than the per-user comparison suggests. And YNAB is a supported commercial product with staff, onboarding material and customer service — self-hosting Econumo means you are your own sysadmin. --- ## Licence and data ownership YNAB is **proprietary, closed-source software delivered only as a hosted service**. There is no source code, no self-hosting option and no way to run it after a subscription lapses. Your transaction history lives on YNAB's servers, and access to the API requires an active subscription. Econumo is **MIT-licensed**. You can read the code, run it on your own hardware, modify it, and keep using it forever regardless of what happens to the project or the company behind it. For many people this is the deciding factor: household financial history is about as sensitive as personal data gets, and self-hosting is the only arrangement where it never leaves hardware you control. --- ## Multi-currency — a hard limit in YNAB **YNAB supports one currency per budget.** Its official guidance for anyone holding more than one currency is to [create a separate budget for each](https://support.ynab.com/en_us/using-multiple-currencies-in-ynab-a-guide-SyBF6PHno). In practice that means: no combined net position across currencies, no cross-currency transfers, and duplicated category structures you maintain by hand. Unofficial third-party converters exist, but nothing supported. **Econumo handles this natively.** Each account has its own fixed currency, cross-currency transfers record both amounts, and the budget converts everything into a single currency so the totals reconcile — see [Multi-Currency](/docs/user-guide/multi-currency/). If you are an expat, paid in a currency you do not spend, or in a household straddling two countries, this is likely the whole decision. --- ## Budgeting method — very similar Both apps implement **zero-based envelope budgeting**: money arrives, you assign every unit of it to a category, and you spend from categories rather than from accounts. YNAB formalises this as the Four Rules; Econumo organises envelopes into folders with limits and available amounts. *Econumo's budget view. If you have used YNAB, the model will be familiar.* Anyone fluent in YNAB will find Econumo's [budgets](/docs/user-guide/budgets/) conceptually familiar. Note that Econumo has **no YNAB import tool** — if you are migrating years of history, plan on exporting to CSV and importing that. (Actual Budget, by contrast, does ship dedicated YNAB4 and nYNAB importers — see [Econumo vs Actual Budget](/docs/comparison/econumo-vs-actualbudget/).) --- ## Where YNAB is clearly better An honest comparison has to be blunt here. YNAB is a well-funded commercial product and it shows. **Bank synchronisation.** YNAB imports transactions directly through **Plaid and MX**, covering the US and Canada well, plus 18 European countries via Plaid. Econumo has **no automatic bank import at all** — a [deliberate decision](/docs/faq/) in favour of manual entry, with [CSV import/export](/docs/user-guide/csv-import-export/) and a [REST API](/docs/api/) for bulk data. If automatic import is why you budget at all, choose YNAB. **Mobile apps.** YNAB ships genuinely excellent native apps — **4.79 stars from over 60,000 ratings** on the iOS App Store, and 4.6 stars with 1M+ downloads on Google Play. Econumo is a responsive web app you install to the home screen from [iPhone, Android, Mac or PC](/docs/apps/). Good, but not a native app. **Household sharing.** YNAB's subscription sharing covers **up to six people** on one plan with shared data, at no extra cost. Econumo's [shared access](/docs/user-guide/shared-access/) is arguably more granular — you set an access level per account and per budget rather than sharing everything — but YNAB's is simpler and well supported. **Polish and support.** Onboarding, teaching material, workshops and customer support are all things a subscription pays for. --- ## Where Econumo is better **Price.** $29.99 once against $109 every year. **You own it.** MIT-licensed, self-hostable, and yours to keep. No subscription lapse can lock you out of your own history. **Multi-currency.** Native, versus not supported within a budget. **Privacy.** Self-hosted, your data never leaves your hardware. No third-party bank aggregator holds credentials on your behalf. **No rate limits.** Econumo's [API](/docs/api/) is your server. YNAB's is capped at 200 requests per hour and requires an active subscription. **Runs anywhere.** A single ~10 MB Go binary on a Raspberry Pi, NAS or small VPS. --- ## Which should you choose? **Choose YNAB if:** - Automatic bank import is essential - You want first-class native mobile apps - You budget in a single currency - You want a supported product with real customer service - Several people will share one plan and the annual cost is acceptable **Choose Econumo if:** - You want to stop paying a subscription - You want to **own and self-host** your financial data - You budget across **multiple currencies** - You are comfortable entering transactions manually or via CSV - You want a hosted account for a **single $29.99 payment** If you like the YNAB method but want it free and open source, Econumo and [Actual Budget](/docs/comparison/econumo-vs-actualbudget/) are the two strongest options — Actual Budget for single-currency budgeting with bank sync, Econumo for multi-currency and built-in household sharing. Start a free [Econumo trial](https://app.econumo.com/register) in your browser, no signup required. --- ## Frequently asked questions ### How much does YNAB cost? $14.99 per month or $109 per year as of July 2026, with a 34-day free trial and no card required. Students get 365 days free. One subscription covers up to six people. ### Does YNAB support multiple currencies? Not within one budget. YNAB officially recommends a separate budget per currency, so there is no combined view or cross-currency transfer. Econumo converts all accounts into one budget currency. ### Is there a free alternative to YNAB? Yes — Econumo is MIT-licensed and free to self-host, using the same envelope method. Actual Budget is another free, MIT-licensed option. ### Can I self-host YNAB? No. YNAB is proprietary and cloud-only; your data lives on its servers. Econumo is open source and self-hostable. ### Does Econumo connect to my bank like YNAB does? No. This is YNAB's clearest advantage. Econumo is manual-entry first, with CSV import and a REST API. --- *Last verified 19 July 2026 against ynab.com and Econumo's documentation. Prices change — check [ynab.com/pricing](https://www.ynab.com/pricing) for the current figure. If you spot something out of date, [let us know](/docs/contact-us/).* --- # Econumo vs Firefly III URL: https://econumo.com/docs/comparison/econumo-vs-firefly-iii/ # Econumo vs Firefly III Firefly III is the most established self-hosted personal finance manager there is — in development since 2012, with 24,000 GitHub stars and 27 million Docker pulls. If you have searched for self-hosted finance software, you have met it. It is also, by its author's own description, **a double-entry bookkeeping system rather than a budgeting app** — and it is **strictly single-user**. Those two facts decide most comparisons with Econumo. **The short version** Choose **Firefly III** if you want a mature, deeply featured transaction manager with double-entry rigour, rich reporting and a huge community — and you are the only person who will use it. Choose **Econumo** if you want **envelope budgeting** rather than spending caps, or if you want to **share a budget with your partner without sharing a password**. Firefly III's own FAQ recommends password-sharing for couples; Econumo has proper per-user sharing. --- ## At a glance | | Econumo | Firefly III | |---|---|---| | **Licence** | MIT | AGPL-3.0-or-later | | **Price** | Free self-hosted; $29.99 one-time cloud | Free, self-host only | | **GitHub stars** | 79 | 24,070 | | **Forks** | 2 | 2,229 | | **Contributors** | small core team | 177 (89% of commits by one person) | | **Container pulls** | ~21,000 across two registries | 27.5 million (Docker Hub) | | **Releases to date** | 24 | 329 | | **In development since** | 2020 | 2012 | | **First public release** | November 2024 | October 2014 | | **Latest release** | v1.1.1 (19 Jul 2026) | v6.6.6 (1 Jul 2026) | | **Cadence** | Feature-driven | ~45 releases in the last 12 months | | **Stack** | Go, single binary | PHP ≥ 8.5, Laravel 13 | | **Database** | SQLite or PostgreSQL | MySQL, MariaDB, PostgreSQL, SQLite | | **Memory footprint** | ~10 MB | Full PHP/web-server stack | | **Budgeting model** | Envelope | Spending caps on a double-entry ledger | | **Zero-based budgeting** | ✅ | ❌ Explicitly declined | | **Household sharing** | ✅ Per-item access levels | ❌ "Share the username and password" | | **Multi-currency** | ✅ Converts into one budget currency | ⚠️ Yes, but budgets ignore foreign amounts | | **Bank sync** | ❌ CSV import | ⚠️ Separate app; EU providers contracting | | **Mobile** | PWA | ❌ No official app; community apps only | | **API** | ✅ REST + Swagger | ✅ Extensive REST + webhooks | *Figures observed 18 July 2026 from the GitHub API, Docker Hub and Firefly III's official documentation.* --- ## Licence — the one real legal difference Econumo is **MIT**. Firefly III is **AGPL-3.0-or-later**. The AGPL is the strongest common copyleft licence: if you modify Firefly III and let others use it **over a network**, you must publish your modifications. For a household running it privately this changes nothing. For anyone building a service on top, it is a serious constraint that MIT does not impose. --- ## Price Both are free to self-host. Firefly III has **no official paid tier and no official hosted service** — self-hosting is the only supported model. It is funded through GitHub Sponsors, Patreon, Ko-fi and Liberapay, and the author describes it plainly as *"a side gig."* Econumo's self-hosted edition is likewise free, with an optional hosted account at **$29.99 one-time per user** for those who would rather not run a server. Firefly III has no equivalent — third-party hosts list it, but that is not a project offering. --- ## Popularity and project health Firefly III is far more established, and the numbers are not close. | | Econumo | Firefly III | |---|---|---| | GitHub stars | 79 | **24,070** | | Forks | 2 | **2,229** | | Container pulls | ~21,000 across two registries | **27.5 million** (Docker Hub) | | In development since | 2020 | **2012** | | Releases | 24 | **329** | If longevity and community size are what you are optimising for, Firefly III wins comfortably. One thing to weigh alongside that, in fairness to both projects: Firefly III's development is **overwhelmingly one person**. James Cole has authored roughly 20,800 of the repository's commits — about 89% — and the next most active human contributor has 131. Of the last 100 commits, 68 were his, 31 were bots, and one was from anyone else. The project is very actively maintained and ships roughly every eight days, but its bus factor is 1, and the author is candid that it is a side project. That is not a criticism so much as context: a large star count does not automatically mean a large maintenance team. --- ## Release history Firefly III has one of the most prolific release records in the category: **329 releases since October 2014**, averaging around 28 stable releases a year over its lifetime and accelerating to **45 in the last twelve months** — roughly one every eight days. | | Econumo | Firefly III | |---|---|---| | Total releases | 24 | 329 | | First public release | 16 Nov 2024 | 14 Oct 2014 | | Latest release | v1.1.1, 19 Jul 2026 | v6.6.6, 1 Jul 2026 | The flip side of that cadence is an upgrade treadmill. Firefly III moved from PHP 8.3 to **PHP 8.5** within about eighteen months, dropped Docker support for `linux/arm/v7`, `linux/arm/v8` and `linux/386` in 6.2.0, and has renamed core concepts across recent versions. Its own 6.2.0 release note says: *"I expect you will run into issue, and I appreciate your feedback and your patience as I fix them."* --- ## Budgeting — the philosophical difference This is the most important section on the page, and it is not a matter of one being more polished than the other. **They disagree about what budgeting is.** **Firefly III does not do envelope or zero-based budgeting, by design.** A budget there is, in the docs' own words, *"just another identifier to link withdrawals together"*, optionally with a date range and an amount — a **spending cap**, not an envelope you fund. The clearest proof is this line from the [budgets documentation](https://docs.firefly-iii.org/explanation/financial-concepts/budgets/): > "You cannot assign income to a budget to automatically increase the budgets > amount. If you have more money available for the budget, you must increase the > budget manually." That is the exact inverse of envelope budgeting, where income is what fills the envelopes. Overspending is also not enforced — the budget simply depletes and *"Firefly III will not complain."* Rollover exists only as a cron-driven "auto-budget" mode, not as native carryover. The maintainer has stated his position directly, on a page flagged as personal opinion: > "Zero based budgeting is a method of budgeting that focuses on giving each Euro > a goal. … I believe this approach is pretty terrible." So this will not change. If you have come from YNAB and want that workflow, Firefly III is explicitly not offering it. **Econumo is envelope-first.** [Budgets](/docs/user-guide/budgets/) are the primary object: income is assigned to envelopes grouped in folders, with limits, available amounts and rollover. *Econumo's envelope budget: money assigned into envelopes, not spending caps attached to a ledger.* Neither model is wrong. But they suit different people, and the choice between them is the choice between these two apps. --- ## Household sharing — Firefly III's hardest limit Firefly III supports unlimited **users**, each with a completely separate financial administration. What it does not support is two people sharing one. From the [official multi-user documentation](https://docs.firefly-iii.org/how-to/firefly-iii/features/multi-user/): > "Can I share my administration with other users? At the moment, you cannot. > Sorry about that. … This is a big project and will take a while." And from the [FAQ](https://docs.firefly-iii.org/references/faq/firefly-iii/general/): > "Each administration is tightly locked to a single user. If you want to share > your financial administration with your partner or somebody else, **you must > share the username and password with them.**" The author has explained why it is unlikely to change soon: roughly 95% of the codebase would be affected, since every query is scoped to a single user ID. Asked in 2021 whether household use really required sharing credentials, his answer was *"Indeed. I advise a password manager with a shared vault."* The request dates back to 2016 and still ships as "at the moment, you cannot" as of July 2026. **Econumo was built for this case.** You [connect by invitation](/docs/user-guide/shared-access/) and set an access level **per account and per budget**. Each person has their own login, their own password, and sees exactly what you have shared. For a couple or a family, this is the single biggest practical difference between the two applications. --- ## Multi-currency — both support it, differently Firefly III's multi-currency support is genuinely substantial: unlimited currencies, a currency per asset account, and mandatory foreign amounts on cross-currency transactions. Automatic exchange rates arrived in **v6.2.0** (January 2025). There are real caveats worth knowing before relying on it: - Exchange rates are **off by default** and need a working cron job - Conversion runs **one way only**, into your primary currency - If a rate is missing, Firefly III **silently uses 1** - No historical rates - Maximum 8 decimal places, so most cryptocurrencies are impractical - **Budgets ignore foreign amounts entirely** — per the docs, *"A budget with the amount set to EUR 100 will not be influenced by transactions in USD, even when those transactions are linked to the budget."* You must set a separate budget amount per currency. That last point matters most here: Firefly III is multi-currency at the *ledger* level, but its *budgets* are not. **Econumo converts everything into a single budget currency**, so a multi-currency household sees one set of totals that reconcile — see [Multi-Currency](/docs/user-guide/multi-currency/). Firefly III's ledger is the more powerful accounting tool; Econumo's budget is the more usable multi-currency budget. --- ## Bank import Neither project is in a strong position here, but for different reasons. **Firefly III** imports through the **Data Importer, a completely separate application** with its own installation, Docker image, upgrade cycle and OAuth wiring. It reads CSV and CAMT.053 files, and connects to Enable Banking (2,500+ banks across 29 European countries), SimpleFIN and Lunch Flow (paid). Two of its longest-standing providers are going away: **Salt Edge ended free-tier access for Firefly III users on 31 October 2025**, and **GoCardless is shifting away from its bank-account-data product**. European bank sync is mid-migration to Enable Banking. The docs are candid about the experience — *"Importing data from your bank and doing this automatically is not that easy with Firefly III"* — and note that imported transactions probably will not match ones you entered manually. Docker pull counts suggest many users skip the importer entirely: 12.3M pulls against 27.5M for the core image. **Econumo** has no automatic bank import at all — a [deliberate decision](/docs/faq/) — with [CSV import/export](/docs/user-guide/csv-import-export/) and a [REST API](/docs/api/) instead. So: Firefly III can sync from banks and Econumo cannot, but Firefly III's bank sync costs you a second application to run and is contracting in Europe. --- ## Setup and running cost | | Econumo | Firefly III | |---|---|---| | Runtime | Single Go binary, distroless image | PHP ≥ 8.5 + web server | | Extensions needed | none | BCMath, intl, curl, zip, libsodium, GD, XML, MBString, DB driver | | Post-install steps | migrations run on boot | four `php artisan` commands | | Cron job | not required | effectively required | | Import tooling | built in | separate application | | Memory | ~10 MB | full PHP stack | Firefly III's own documentation states it is *"geared towards tech-savvy users"* and that you should be someone who *"doesn't mind tinkering with self-hosted servers."* That is an accurate and honest self-description. Econumo pulls one image, runs its migrations on boot and uses about 10 MB of RAM. --- ## Mobile **Firefly III has never shipped an official mobile app.** Its documentation lists community apps — Waterfly III (Android), Abacus (iOS and Android), Photuris III, Firefly-Pico and others — several actively maintained, one officially flagged as dead since January 2020. The project positions its REST API as the mobile story. **Econumo** is a responsive web app installable to the home screen on [iPhone, Android, Mac and PC](/docs/apps/). --- ## Where Firefly III is better - **Maturity** — fourteen years of development, 329 releases, 27.5M Docker pulls - **Double-entry rigour** — a real accounting ledger, which Econumo is not - **Reporting depth** — far more extensive - **Bank sync** — Econumo has none at all - **Import formats** and a large third-party ecosystem - **API surface** — extremely broad, plus first-class webhooks - **Community** — vastly larger, with abundant third-party guides ## Where Econumo is better - **Envelope budgeting** — Firefly III declines to offer it - **Household sharing** — proper per-user access instead of a shared password - **Multi-currency budgeting** — budgets that actually combine currencies - **Setup** — one small binary versus a PHP stack, cron job and second app - **Licence** — MIT rather than AGPL - **Hosted option** — $29.99 one-time, or self-host free --- ## Which should you choose? **Choose Firefly III if:** - You want a full double-entry ledger and detailed financial reporting - You are budgeting alone and will never need to share - You want spending caps rather than funded envelopes - You want bank sync and are willing to run a second application for it - You are comfortable maintaining a PHP application - Project maturity and ecosystem size are decisive **Choose Econumo if:** - You want **envelope budgeting** - You want to **share a budget with your household**, each person with their own login - You want **multi-currency budgets** that combine into one set of totals - You want a small, simple deployment - You want the option of a hosted account for a single $29.99 payment Start a free [Econumo trial](https://app.econumo.com/register), or try the [Firefly III demo](https://demo.firefly-iii.org) — both run in a browser. --- ## Frequently asked questions ### Can my partner and I share a budget in Firefly III? No. Each administration is locked to one user, and the official FAQ says you must share the username and password. Econumo has invitation-based sharing with per-account and per-budget access levels. ### Does Firefly III do envelope or zero-based budgeting? No. Budgets are spending caps on a double-entry ledger; you cannot assign income to a budget. The maintainer has written that he considers zero-based budgeting a poor approach and will not add it. ### Is Firefly III free? Yes — AGPL-3.0-or-later, self-hosted only, funded by sponsorship. There is no official hosted tier. ### Does Firefly III support multiple currencies? Yes at the ledger level, with caveats: rates are off by default, convert only into your primary currency, and fall back to 1 when missing. Budgets ignore foreign amounts entirely. ### Which is easier to set up? Econumo — a single Go binary using about 10 MB of RAM. Firefly III needs PHP 8.5 with nine extensions, a database, four post-install commands, a cron job, and a second application for imports. --- *Last verified 18–19 July 2026 against the GitHub API, Docker Hub and Firefly III's official documentation. If you spot something out of date, [let us know](/docs/contact-us/).* --- # Econumo vs Maybe Finance URL: https://econumo.com/docs/comparison/econumo-vs-maybe-finance/ # Econumo vs Maybe Finance **Maybe Finance is no longer maintained.** The project was archived on GitHub in July 2025, and the company behind it wound down in early 2026. If you arrived here looking for a Maybe alternative, this page is about where to go next — and it will not pretend Econumo is the right answer for everyone. **Maybe Finance shut down** On **24 July 2025**, Maybe Finance published a final release titled *"Farewell… Maybe"* announcing a pivot to B2B financial forecasting. The [repository](https://github.com/maybe-finance/maybe) is archived and read-only, with 54,351 stars frozen in place. `maybefinance.com` now redirects away from the product, and the hosted app is gone. **The short version** **[Sure](https://github.com/we-promise/sure) is the continuation. Econumo is the alternative.** If you loved Maybe's **tracking** — bank sync, investments, the net worth dashboard — go to Sure. It is a direct fork, actively maintained, and keeps your existing database. If you loved Maybe's **simplicity** but wished it actually helped you *plan* — and never got much out of bank sync anyway — Econumo does the envelope budgeting that neither Maybe nor Sure has. --- ## Which should you choose? The honest decision tree, before any comparison table: | If you… | Go to | |---|---| | Want bank sync to keep importing transactions | **Sure** | | Track investments, holdings or crypto | **Sure** | | Care most about the net worth graph and balance sheet | **Sure** | | Are self-hosting Maybe and want to keep your database | **Sure** | | Want the AI assistant | **Sure** | | Want **envelope budgeting** with money that rolls over | **Econumo** | | Budget with a **partner or family**, each with their own login | **Econumo** | | Budget across **multiple currencies** in one place | **Econumo** | | Were entering transactions manually anyway | **Econumo** | | Want a hosted account without running a server | **Econumo** | If several rows on both sides apply, you probably want Sure for tracking and are better served waiting rather than switching twice. --- ## At a glance | | Econumo | Maybe Finance | Sure (fork) | |---|---|---|---| | **Status** | ✅ Active | ❌ **Archived Jul 2025** | ✅ Active | | **Licence** | MIT | AGPL-3.0 | AGPL-3.0 | | **Price** | Free self-hosted; $29.99 one-time cloud | — | Free, self-hosted | | **GitHub stars** | 79 | 54,351 (frozen) | 9,065 | | **Last release** | v1.1.1 (19 Jul 2026) | v0.6.0 (24 Jul 2025) | v0.7.2 (1 Jul 2026) | | **Total releases** | 24 | 28 | 20 | | **Stack** | Go, single binary | Ruby on Rails + PostgreSQL | Ruby on Rails + PostgreSQL | | **Envelope budgeting** | ✅ | ❌ Monthly categories only | ❌ Inherited from Maybe | | **Net worth / balance sheet** | ❌ | ✅ | ✅ | | **Investment tracking** | ❌ | ✅ | ✅ Expanded | | **Bank sync** | ❌ | ✅ Plaid only | ✅ ~20 providers | | **Multi-currency** | ✅ | ✅ | ✅ | | **Household sharing** | ✅ Per-item access | ✅ Household invites | ✅ With permissions | | **Mobile apps** | PWA | ❌ None | 🟡 Flutter, alpha | | **AI assistant** | ❌ | ✅ | ✅ Optional | *Figures observed 19 July 2026 from the GitHub API and each project's documentation. Maybe's figures are frozen at archive time.* --- ## What happened to Maybe Finance Maybe was founded in 2021 by Josh Pigford and Travis Woods. Its first attempt was a paid commercial product that failed to find enough customers. In **January 2024** the team open-sourced roughly a million dollars' worth of prior development work, and it exploded — the top trending repository on GitHub for a week, tens of thousands of stars, arriving just as Mint's shutdown left millions of users looking for a replacement. That momentum never converted into a business. From the final release notes: > "In the end, our obligation as a company is to our investors, and … we've > determined that continuing to build this app is not our best chance at paying > back our investors and profiting as a company." The repository's last commit is **24 July 2025**. The company itself shut down in early 2026 and began liquidating assets — its market-data product Synth now has its domain listed for sale. ### Do not simply self-host the archive This matters practically: **archived Maybe is partially broken today.** It depended on **Synth**, Maybe's own market-data API, which died with the company. Investment prices and related features no longer work, and the code receives no security updates. Sure replaced that dependency with several working market-data providers. If you want Maybe's feature set, run Sure, not the archive. --- ## What Maybe got right Worth stating clearly, because it explains why 54,000 people starred it and why this page exists at all. **The design.** Maybe's team was unusually disciplined about restraint. From their own write-up: > "We spent a lot of time asking the question, 'What can we delete?' … Our goal > with this app was to *remove complexity* from personal finance." **Transfers as first-class citizens.** Maybe auto-detected transfers between your own accounts and *refused to let you categorise them*, so they never polluted budgets or spending totals. Their reasoning — that other apps force users into a "junk drawer" of Transfer and Excluded categories — is correct, and it is a detail people miss immediately when it is absent. **The net worth dashboard.** Assets, liabilities, property, crypto and investments in one balance sheet with a trend over time. This is what made Maybe a *Mint* replacement rather than a *YNAB* replacement — and it is the single biggest thing Econumo does **not** do. --- ## The gap neither Maybe nor Sure fills Maybe had **monthly category budgets**, not envelopes. You could allocate money across categories within a month, but there was **no carryover between months** — no rollover field exists anywhere in its data model, and Sure inherited the same design. That is a deliberate philosophy, not an oversight. Maybe's position was that *"most users are satisfied with less; not more"*, and its four guiding questions were all retrospective: how much do I have, am I spending less than I earn, how much did I spend last month, what did I spend it on. Those are good questions. They are just not budgeting questions. **Maybe told you where your money went. Envelope budgeting decides where it goes next.** [Econumo's budgets](/docs/user-guide/budgets/) are envelopes: income is assigned into categories grouped in folders, with limits, available amounts and rollover between months. *Econumo's envelope budget — unspent money stays in the envelope and carries forward.* *Sure's dashboard, continuing Maybe's design: cashflow, balance sheet and net worth. Screenshot from the Sure project README.* The two screenshots show the difference better than any table. One is a plan; the other is a report. --- ## Bank sync — and why Econumo does not have it Econumo has **no automatic bank import**, and for a Maybe refugee that is the most obvious downgrade. It is a [deliberate decision](/docs/faq/), with [CSV import/export](/docs/user-guide/csv-import-export/) and a [REST API](/docs/api/) instead. Maybe's own postmortem is the most credible explanation of why a small self-hosted project might reasonably decline to build it: > "The single biggest challenge with a personal finance app in 2025 is bank > providers. … this is a *massive* challenge for anyone building a personal > finance app and is the primary reason why 'bootstrapping' a personal finance app > with automated bank syncing is an uphill battle. **You need a lot of money and > time to get this right.**" They listed unsupported banks, banks that only accept logins at certain hours, provider documentation that did not match production data, and bank data that was simply wrong. With roughly $3M raised, it was still the thing that beat them. That is context, not an excuse. If automatic bank import is why you budget at all, **Sure is the better choice** — it now supports around twenty providers including Plaid, SimpleFIN, Enable Banking, Akahu and several brokers, well beyond Maybe's Plaid-only integration. --- ## Sure: the direct continuation Sure was forked on **23 July 2025** — one day *before* Maybe's final release — and its first version was titled *"Maybe v0.6.0 — Bug compatible"*, an explicit statement of intent. It has since clearly outgrown a straight continuation: - **Replaced the dead Synth dependency** with Twelve Data, Yahoo Finance, Alpha Vantage, Frankfurter and others - **Expanded bank sync** from Plaid alone to roughly twenty providers - **Native mobile apps** in Flutter — iOS and Android, still alpha - **Pluggable AI**, including local models via Ollama, and the option to disable it entirely - **OpenID Connect / SSO**, which Maybe never had - **Family sharing permissions**, goals, transaction splits, privacy mode - **Internationalisation** — Maybe was English-only Health signals are genuinely good: **1,199 merged pull requests** in its first year, and **eight consecutive on-schedule monthly stable releases** from November 2025 through July 2026. Two caveats worth knowing. Its **bus factor is low** — one maintainer leads development and writes all the communications, with a long tail of occasional contributors — and there are **more than 200 open pull requests**, the classic signature of review capacity being the bottleneck. It is substantially healthier than a one-person project, but it is not yet institutionally durable. --- ## Where Econumo genuinely fits **Envelope budgeting.** Verified absent from both Maybe and Sure. This is the real differentiator, not a marketing one. **Multi-currency and household sharing.** Straight parity with Maybe — Econumo has both, with [access levels set per account and per budget](/docs/user-guide/shared-access/). **A much lighter self-host.** Econumo is a single Go binary in a distroless image using about 10 MB of RAM, with SQLite by default. Sure is a Rails application with PostgreSQL, background workers, and API keys needed for market data and AI. If your Maybe instance felt heavy for what you used it for, that gap is real. **No third-party dependencies.** Sure's headline features need API keys from market-data or LLM providers. Econumo needs none — which is also precisely why Maybe's Synth shutdown could not happen to it. **MIT rather than AGPL.** Maybe and Sure are both AGPL-3.0. Maybe additionally trademarked its name, which is why the fork had to be renamed — that is what AGPL-plus-trademark looks like in practice. **A hosted option.** $29.99 one-time per user, or self-host free. Sure offers self-hosting only. --- ## Be clear about the switching cost If you are running self-hosted Maybe today: - **Moving to Sure** is close to a container swap. It shares Maybe's Rails and PostgreSQL schema and started life bug-compatible with v0.6.0. - **Moving to Econumo** means exporting to CSV, importing, and **rebuilding your budget from scratch**. There is no Maybe importer. You also lose investment tracking and the net worth balance sheet, which Econumo does not model at all. If you were a *hosted* Maybe customer, there is a harder problem: the sunset window closed around September 2025, so if you did not export then, that data is likely gone. Neither project can recover it. Given all that, the switch to Econumo makes sense when you were **already entering transactions by hand** — which described most of Maybe's users, since the project had tens of thousands of self-hosters and only a few hundred paying customers — and what you actually wanted was a budget rather than a report. Start a free [Econumo trial](https://app.econumo.com/register) before deciding. --- ## Frequently asked questions ### Is Maybe Finance shut down? Yes. It announced a pivot to B2B forecasting on 24 July 2025 and archived the repository; the company wound down in early 2026. ### What is the best alternative to Maybe Finance? Sure, if you want bank sync, investments and the net worth dashboard to keep working. Econumo, if you wanted a simple app that helps you plan rather than report, and did not rely on bank sync. ### Can I still self-host the archived Maybe Finance? You can run it, but its Synth market-data dependency died with the company, so parts are broken and it gets no security updates. Run Sure instead. ### Did Maybe Finance have envelope budgeting? No — monthly category budgets with no carryover between months. Sure inherited the same model. ### Can I migrate my Maybe data to Econumo? Only via CSV, and you will rebuild your budget. Sure is the drop-in path if you want to keep your existing database. --- *Last verified 19 July 2026 against the GitHub API and the projects' own release notes and documentation. Maybe Finance is a trademark of Maybe Finance Inc.; Econumo is not affiliated with or endorsed by Maybe Finance Inc. or the Sure project. If you spot something out of date, [let us know](/docs/contact-us/).* --- # Econumo vs ezBookkeeping URL: https://econumo.com/docs/comparison/econumo-vs-ezbookkeeping/ # Econumo vs ezBookkeeping Of everything in the self-hosted personal finance space, **ezBookkeeping is Econumo's closest technical twin.** Both are written in Go, both are MIT-licensed, both ship as a lightweight self-hosted Docker container, both run on SQLite or PostgreSQL, and both are built to run on hardware as small as a Raspberry Pi. They are, however, built for two different jobs — and the difference is unusually clean-cut. **The short version** ezBookkeeping is a **bookkeeping and analytics** tool: record what happened, import it from almost any file format, and chart it. Econumo is a **budgeting** tool: plan what should happen, in envelopes, together with your household. ezBookkeeping has **no budgeting features at all** and **no shared household ledger**. If you want either of those, that decides it. If you want the broadest possible import-format support and rich retrospective analytics, ezBookkeeping is excellent at that. --- ## At a glance | | Econumo | ezBookkeeping | |---|---|---| | **Licence** | MIT | MIT | | **Price** | Free self-hosted; $29.99 one-time cloud | Free, self-host only | | **GitHub stars** | 79 | 5,239 | | **Releases to date** | 24 | 22 | | **In development since** | 2020 | October 2020 | | **First public release** | November 2024 | June 2021 | | **Latest release** | v1.1.1 (19 Jul 2026) | v1.5.1 (31 May 2026) | | **Backend** | Go | Go | | **Frontend** | React | Vue 3 (Framework7 mobile / Vuetify desktop) | | **Database** | SQLite or PostgreSQL | SQLite, MySQL or PostgreSQL | | **Memory footprint** | ~10 MB | ~30 MiB | | **Envelope budgeting** | ✅ | ❌ Not supported at all | | **Household sharing** | ✅ Per-item access levels | ❌ Multi-user, but no shared data | | **Multi-currency** | ✅ | ✅ With auto-updating rates | | **Import formats** | CSV | CSV, OFX, QFX, QIF, IIF, Camt.052/053, MT940 | | **Bank sync** | ❌ | ❌ File import only | | **Mobile** | PWA | PWA with separate mobile UI | | **API** | ✅ OpenAPI / Swagger | ✅ HTTP API + MCP server | | **2FA** | — | ✅ TOTP, WebAuthn, OIDC | *Figures observed 18–19 July 2026 from the GitHub API and each project's official documentation.* --- ## Licence and price A genuine tie on licence: both are **MIT**, both are free to self-host forever. The projects differ in how they sustain themselves. ezBookkeeping is unusually absolutist — its FAQ states there are no paid features and that the project **does not accept donations or sponsorships**, and there is no official hosted service. Econumo funds development through an optional hosted cloud account (**$29.99 one-time per user**) while the self-hosted edition stays free. If you object on principle to a project having any commercial arm at all, ezBookkeeping's position is the purer one. If you would rather pay once and not run a server, only Econumo offers that. --- ## Popularity and project health ezBookkeeping is much the better known of the two — **5,239 stars to Econumo's 79** — but the two projects are near-contemporaries. Both have been in development since 2020; ezBookkeeping simply found its audience, and Econumo has not. | | Econumo | ezBookkeeping | |---|---|---| | GitHub stars | 79 | **5,239** | | Forks | 2 | 600 | | Contributors | small core team | ~36 | | In development since | 2020 | October 2020 | One characteristic worth knowing about ezBookkeeping: development is **overwhelmingly one person**, who personally answers nearly every issue. That produces an unusually coherent product and fast, decisive issue triage — and it also concentrates the project's bus factor. Design decisions are firmly held, and requests that do not fit the vision are closed rather than left open, which is directly relevant to the budgeting question below. --- ## Release history Both projects started in 2020 and have shipped a near-identical number of public releases, though Econumo spent its first four years closed-source. | | Econumo | ezBookkeeping | |---|---|---| | In development since | 2020 | October 2020 | | Public releases to date | 24 | 22 | | First public release | v0.1.0, 16 Nov 2024 | v0.1.0, 20 Jun 2021 | | 1.0 milestone | July 2026 (Go + React rewrite) | August 2025 | | Latest release | v1.1.1, 19 Jul 2026 | v1.5.1, 31 May 2026 | ezBookkeeping's cadence has accelerated sharply — 4 releases in 2023, 3 in 2024, 8 in 2025 and 6 in the first half of 2026. Both projects are healthy and actively maintained. --- ## The two differences that decide it ### 1. ezBookkeeping has no budgeting This is not a weak-budgeting story or a roadmap gap. ezBookkeeping does not implement budgeting, by design. The project's **own comparison page** lists budgeting as [not supported](https://ezbookkeeping.mayswind.net/comparison/). There is no budget entity in its data model. And budget feature requests — [#67](https://github.com/mayswind/ezbookkeeping/issues/67), [#127](https://github.com/mayswind/ezbookkeeping/issues/127), [#168](https://github.com/mayswind/ezbookkeeping/issues/168) and [#289](https://github.com/mayswind/ezbookkeeping/issues/289) — have been filed and closed without implementation. Issue #289 puts the philosophy plainly: the app focuses on tracking past transactions, with no support for planning or forecasting. That is a legitimate product position. Plenty of people want a clean ledger with good charts and no opinions about what they *should* spend. If that is you, ezBookkeeping does it well. But if you want to assign income to categories before you spend it — the envelope method — ezBookkeeping cannot do it, and is not going to. [Econumo's budgets](/docs/user-guide/budgets/) are the entire point of the app: envelopes grouped into folders, with limits, available amounts and rollover. *Econumo's budget view. ezBookkeeping has no equivalent screen.* ### 2. ezBookkeeping is multi-user, but not multi-player This one is easy to get wrong, so it is worth stating precisely. ezBookkeeping **does** support multiple users — one instance can host many independent accounts. But each user's data is **completely separate**. There is no shared ledger, no co-owned account, no household view and no cross-user aggregation. The maintainer has explained the reasoning in [#53](https://github.com/mayswind/ezbookkeeping/issues/53) and [#322](https://github.com/mayswind/ezbookkeeping/issues/322): accounts, categories and tags are all scoped to an individual user, ezBookkeeping is designed for personal use, and cross-user aggregation is not planned. For a couple who want a joint budget, the only workaround is sharing one login. [Econumo's shared access](/docs/user-guide/shared-access/) is built for exactly this case: you connect to another user by invitation, then set an access level **per account and per budget**. Each person keeps their own login and sees a shared view of the things you have chosen to share. --- ## Where ezBookkeeping is better Being the closest twin cuts both ways. ezBookkeeping clearly beats Econumo on several axes: **Import formats.** ezBookkeeping reads CSV, OFX, QFX, QIF, IIF, Camt.052, Camt.053 and MT940, plus dedicated migration importers for **GnuCash, Firefly III and Beancount**. Econumo imports CSV only. If you are migrating years of history out of another tool, this is a real gap. **Authentication and security features.** TOTP two-factor authentication, WebAuthn app lock, OIDC external authentication and login rate limiting all ship today. **AI and automation surface.** ezBookkeeping provides an HTTP API *and* an MCP (Model Context Protocol) server, an Agent Skill and CLI tooling — ahead of most of the field on AI integration. Econumo offers a documented [REST API with Swagger UI](/docs/api/), but no MCP server. **Extras.** Transaction image attachments with AI receipt recognition, scheduled and recurring transactions, geolocation with maps, S3/MinIO attachment storage, and a dedicated mobile UI distinct from the desktop one. **Maturity.** Four more years of development and 66× the stars. Neither app has automatic bank synchronisation — both are file-import and manual-entry tools. --- ## Which should you choose? **Choose ezBookkeeping if:** - You want a ledger and analytics, not a budget - You are migrating from GnuCash, Firefly III or Beancount and want an importer - You need broad bank-statement format support (MT940, Camt.053, OFX, QIF) - You want TOTP/WebAuthn/OIDC authentication out of the box - You are budgeting alone and will never need to share - Project maturity and community size are decisive **Choose Econumo if:** - You want **envelope budgeting** — ezBookkeeping has none - You want a **shared household budget** where each person has their own login - You want a hosted option you can pay for once instead of self-hosting - You want the smallest possible footprint (~10 MB, single distroless binary) Both are MIT-licensed and both export your data — Econumo offers a free [Econumo trial](https://app.econumo.com/register) and ezBookkeeping a [public demo](https://ezbookkeeping-demo.mayswind.net) — so you can try both before committing. --- ## Frequently asked questions ### Does ezBookkeeping have budgeting? No. Its own comparison page lists budgeting as unsupported, there is no budget entity in the data model, and multiple budget requests have been closed without implementation. It is a retrospective bookkeeping and analytics tool. ### Can a couple share a budget in ezBookkeeping? No. Multiple users can have accounts on one instance, but their data is entirely separate — no shared ledger and no cross-user aggregation, which the maintainer has confirmed is not planned. Econumo supports per-account and per-budget sharing by invitation. ### Is ezBookkeeping open source and free? Yes — MIT-licensed with no paid features. The project does not accept donations or sponsorships and offers no hosted service. ### Which uses fewer resources? Both are very light. Econumo uses about 10 MB of RAM as a single distroless Go binary; ezBookkeeping reports about 30 MiB for a single user. --- *Last verified 19 July 2026 against the GitHub API and each project's official documentation. If you spot something out of date, [let us know](/docs/contact-us/).* --- # Econumo vs GnuCash URL: https://econumo.com/docs/comparison/econumo-vs-gnucash/ # Econumo vs GnuCash GnuCash is one of the oldest and most respected open-source finance projects in existence — development began in **1997**, and it is still shipping quarterly releases nearly three decades later. Econumo is a self-hosted budgeting web app, in development since 2020 and open-sourced in November 2024. Comparing them is less about which is better and more about which category you actually need: **double-entry accounting** or **household budgeting**. **The short version** Choose **GnuCash** if you want rigorous double-entry bookkeeping, investment and share tracking, or the strongest multi-currency accounting engine available for free — and you are happy in a desktop application, on your own. Choose **Econumo** if you want **envelope budgeting**, access from a phone or any browser, and a **shared budget with your household**. GnuCash does none of those three well. --- ## At a glance | | Econumo | GnuCash | |---|---|---| | **Licence** | MIT | GPL-2.0-or-later / GPL-3.0 | | **Price** | Free self-hosted; $29.99 one-time cloud | Free | | **In development since** | 2020 | 1997 | | **First public release** | November 2024 | 1998 | | **GitHub stars** | 79 | 4,290 | | **Releases on GitHub** | 24 | 75 (2015 onward only) | | **Latest release** | v1.1.1 (19 Jul 2026) | 5.16 (28 Jun 2026) | | **Cadence** | Feature-driven | Strict quarterly, ~4/year | | **Form factor** | Self-hosted web app | Desktop application (GTK) | | **Platforms** | Any browser | Windows, macOS, Linux | | **Language** | Go | C / C++ / Scheme | | **Storage** | SQLite or PostgreSQL | XML file, or SQLite/MySQL/PostgreSQL | | **Accounting model** | Envelope budgeting | Full double-entry | | **Envelope budgeting** | ✅ | ❌ Ledger-delta budgets only | | **Household sharing** | ✅ Per-item access | ❌ Single-user | | **Mobile** | PWA | ❌ Android app unmaintained since 2018 | | **Multi-currency** | ✅ | ✅ Best in class | | **Investments / shares** | ❌ | ✅ With auto price quotes | | **Bank sync** | ❌ CSV import | ⚠️ AqBanking (mostly EU banks) | | **API** | ✅ REST + Swagger | ❌ Python/Scheme bindings only | *Figures observed 18–19 July 2026 from the GitHub API, gnucash.org and each project's documentation.* --- ## Licence This is the one place where the two differ in a way that could matter legally. Econumo is **MIT** — permissive, with no obligation to publish changes. GnuCash is **GPL-2.0-or-later / GPL-3.0**, a copyleft licence: distribute a modified GnuCash and you must release your modifications under the same terms. For an individual user this makes no practical difference. For anyone building a product on top, MIT is the less demanding choice. *Note: GitHub's licence detector reports GnuCash as `NOASSERTION` because its LICENSE file is a composite; the file itself specifies GPL v2 "or, at your option, any later version", with an OpenSSL linking exception on some files.* --- ## Price Both are free. GnuCash has no paid tier, no hosted service and no commercial edition — it is funded by donations. Econumo's self-hosted edition is likewise free, with an optional hosted cloud account at **$29.99 one-time per user**. Since GnuCash runs on your own desktop, there is nothing to host and no running cost either way. --- ## Popularity and longevity GnuCash's popularity is best measured in decades rather than stars. | | Econumo | GnuCash | |---|---|---| | GitHub stars | 79 | 4,290 | | Forks | 2 | 963 | | Contributors | small core team | ~317 | | Age | ~6 years | ~28 years | | Downloads | ~21,000 across two registries | ~67,000 in 3 months (SourceForge) | Roughly 22,000 people download GnuCash every month, three-quarters of them on Windows. Its star count understates it badly — GnuCash predates GitHub by a decade, and much of its community lives on mailing lists, Bugzilla and its own wiki rather than on GitHub. **On project longevity, GnuCash is in a class of its own.** Very little software of any kind has shipped continuously since 1998. If your main worry is a project disappearing, that record is hard to argue with. --- ## Release history GnuCash runs one of the most predictable release trains in open source: a stable release in **late March, late June, late September and mid-to-late December**, every year. | Version | Released | |---|---| | 5.16 | 28 Jun 2026 | | 5.15 | 29 Mar 2026 | | 5.14 | 21 Dec 2025 | | 5.13 | 28 Sep 2025 | | 5.12 | 29 Jun 2025 | The 75 releases visible on GitHub only reach back to 2015 — the project's true release history runs to 1998 and is catalogued on [gnucash.org](https://www.gnucash.org/news.phtml). Econumo, by contrast, has shipped 24 public releases since November 2024 on a feature-driven cadence, reaching 1.0 — and a Go and React rewrite — in July 2026. --- ## Features head to head ### Budgeting — Econumo's core, GnuCash's weak spot GnuCash is a **general ledger** with a budget feature attached, and this is consistently identified as its weakest area. Its budget works by ledger deltas: you enter an expected change per account per period, and GnuCash reports actuals against that expectation. There is no envelope model, no moving money between categories mid-month, no per-envelope rollover, and no intra-period tracking. The project's own wiki maintains a long-standing [Budget Requirements](https://wiki.gnucash.org/wiki/Budget_Requirements) page enumerating what is still unimplemented, and reviewers regularly report that users never quite get the budget feature to fit how they think about money. Econumo is built the other way around — [budgets](/docs/user-guide/budgets/) are the primary object, organised as envelopes in folders with limits and available amounts. *Econumo's envelope budget. GnuCash's budget screen is a per-account grid of expected period amounts.* If you specifically want **envelope budgeting**, GnuCash is the wrong tool — and the GnuCash community will generally tell you the same. ### Accounting rigour — GnuCash's core, Econumo does not compete The reverse is just as true. GnuCash offers full **double-entry accounting**, with every transaction balanced across accounts. It handles: - Stocks, bonds and mutual funds, with automatic price quote retrieval - Depreciation, accounts receivable/payable, invoicing and payroll basics - Small-business accounting - Scheduled transactions and a full reporting engine - Fixed-point arithmetic throughout, avoiding floating-point rounding error Econumo does none of this. It is a personal and family **budgeting** app, not a bookkeeping system, and it has no investment tracking. If you need to track a share portfolio or run books for a small business, **choose GnuCash.** ### Multi-currency — both strong, GnuCash deeper Both handle multiple currencies properly, which puts them ahead of much of the field. **GnuCash** is the more powerful engine: per-account currency denomination, cross-currency transactions fully balanced through double-entry, automatic FX and security price retrieval via Finance::Quote, and fixed-point arithmetic. **Econumo** gives each account a fixed currency, records both amounts on cross-currency transfers, and converts the whole budget into a single currency so totals reconcile — see [Multi-Currency](/docs/user-guide/multi-currency/). That is what a multi-currency *budget* needs, without the accounting machinery. ### Access and sharing — the practical difference This is where the 28-year age gap shows most. **GnuCash is a single-user desktop application.** There are no user accounts, no permissions and no per-user views. Even with a SQL backend, concurrent multi-user editing is not supported — sharing means passing a file around, or sharing one database with locking. There is no web interface. **Mobile is effectively absent.** GnuCash for Android last released in **June 2018** and is unmaintained; it was only ever a capture tool that exported back to the desktop, never a sync client. **Econumo** is a web app: any browser, any device, installable to the home screen on [iPhone, Android, Mac and PC](/docs/apps/). Two people can hold separate logins and [share specific accounts and budgets](/docs/user-guide/shared-access/) at a chosen access level. For a couple who both want to add a transaction from their phone in a shop, this is decisive. ### Bank import **GnuCash** imports QIF, OFX and CSV files, and supports live connections through **AqBanking** — HBCI, EBICS and OFX Direct Connect. In practice, live bank sync is largely a German and European story. GnuCash's own wiki describes OFX Direct Connect as an obsolete protocol that most banks had stopped offering by 2024, so most users outside the EU are on file import. **Econumo** has no automatic bank import at all — this is a [deliberate decision](/docs/faq/) — offering [CSV import and export](/docs/user-guide/csv-import-export/) and a [REST API](/docs/api/) instead. GnuCash wins here, with the caveat that its live-sync advantage mostly applies to European bank customers. ### Learning curve GnuCash's most-cited complaint, ahead of even the dated GTK interface, is that **you need to understand double-entry accounting before you can be productive**. For someone who wants to know whether they can afford dinner out, that is a substantial barrier. Its report builder also draws consistent criticism for being clunky and hard to customise. Econumo asks you to understand envelopes, and nothing more. --- ## Which should you choose? **Choose GnuCash if:** - You want real double-entry accounting and understand it, or want to learn - You track investments, shares or a small business - You need the deepest multi-currency and price-quote support available for free - You are in Europe and want live HBCI/EBICS bank connections - You work alone, on one desktop computer - Three decades of continuous development is your definition of safe **Choose Econumo if:** - You want **envelope budgeting** rather than a general ledger - You want to use it **from a phone or any browser** - You want to **share a budget with your partner or family**, each with a login - You want multi-currency budgeting without an accounting course - You want a hosted option for a single $29.99 payment These tools are different enough that "both" is a reasonable answer — GnuCash for the books and investments, Econumo for the household budget. You can try Econumo by starting a free [trial](https://app.econumo.com/register). --- ## Frequently asked questions ### Is GnuCash good for budgeting? Budgeting is GnuCash's weakest area. It offers ledger-derived budgets — an expected change per account per period — with no envelope model, no moving money between categories and no per-envelope rollover. ### Can my partner and I use GnuCash together? Not really. It is a single-user desktop application with no user accounts or permissions; sharing means sharing a file or database. Econumo has per-user logins and invitation-based sharing per account and per budget. ### Does GnuCash have a mobile app? Not a maintained one. GnuCash for Android last released in June 2018 and was only ever a companion capture tool. Econumo is a responsive web app installable to the home screen. ### Is GnuCash still actively developed? Yes — a strict quarterly release train, about four releases a year, with 5.16 shipping on 28 June 2026. ### Which has better multi-currency support? GnuCash has the deeper accounting engine, including automatic price quotes and fixed-point arithmetic. Econumo covers what multi-currency budgeting requires without the accounting complexity. --- *Last verified 19 July 2026 against the GitHub API, gnucash.org and each project's documentation. If you spot something out of date, [let us know](/docs/contact-us/).* --- # FAQ URL: https://econumo.com/docs/faq/ # Frequently Asked Questions ## Do you have plans to add automated import of transactions from banks? Automated import of transactions from banks and other sources is not a priority at this point. However, it might be added in the future as an optional feature. As an alternative, you can use [CSV import](/docs/user-guide/csv-import-export/#exporting-your-transactions-to-csv). If you have development skills and want to contribute, you are welcome to do so by using Econumo's API. --- # Contact us URL: https://econumo.com/docs/contact-us/ # Contact us Please use [GitHub Issues](https://github.com/econumo/econumo/issues) to talk about the roadmap, features, and bugs. For billing-related inquiries or partnership opportunities, email [econumo@gmail.com](mailto:econumo@gmail.com). --- # Privacy Policy URL: https://econumo.com/docs/legal/privacy-policy/ # Privacy Policy ## Introduction Your privacy is important to us. It is Econumo's policy to respect your privacy regarding any information we may collect from you across our website, econumo.com, its subdomains, and other sites we own and operate (collectively, the "Sites"), and through the Econumo application itself, whether you use **Econumo** or **Econumo Self-Hosted** (the "App"). This Privacy Policy explains how we collect, use, disclose, and safeguard your information when you visit any of our Sites or use the App. Please read this policy carefully to understand our practices regarding your information. ## 1. Information We Collect We may collect and process the following types of information: - **Personal Information:** We ask for personal information only when we truly need it to provide a service to you. This may include your name, email address, GitHub account, phone number, and other contact details. - **Usage Data:** We automatically collect information about your interactions with our Sites, such as IP address, browser type, pages visited, and the duration of your visit. - **Product Analytics:** When you use the App, we collect usage analytics that are linked to your account through a pseudonymous identifier. Section 5 describes exactly what this includes, what it excludes, and how to turn it off. - **Cookies and Tracking Technologies:** We may use cookies, web beacons, and other tracking technologies to enhance your experience on our Sites. You can adjust your browser settings to control cookies; however, disabling cookies may limit certain functionalities. ## 2. How We Use Your Information We use the information we collect for the following purposes: - **To Provide and Improve Our Services:** Personalize your experience, improve our offerings, and provide requested information or services. - **Communications:** Send you updates, promotional materials, and notifications regarding our services. - **Analytics:** Analyze usage trends and measure the effectiveness of our Sites, and understand how the App is used so that we can improve it (see Section 5). - **Legal Compliance:** Comply with legal obligations, enforce our terms, and protect the rights, property, or safety of Econumo, our users, and the public. ## 3. How We Share Your Information We do not share personally identifying information publicly or with third parties, except as described below or when required by law. Product analytics data (Section 5) is never sold, shared with advertisers, or handed to anyone else. - **For Legal Purposes:** We may disclose your information as required by law or if we believe it is necessary to protect our rights, respond to legal requests, or enforce our policies. - **Business Transfers:** If we merge with or are acquired by another company, your information may be transferred as part of the transaction. - **Payment Processing:** When you purchase Econumo, the order is processed by [Paddle](https://www.paddle.com/), our third-party payment processor and Merchant of Record. Your payment and billing details (such as name, email address, billing address, and payment card information) are collected and processed by Paddle in accordance with [Paddle's Privacy Policy](https://www.paddle.com/legal/privacy). We do not receive or store your payment card details. ## 4. Your Choices You have the following choices regarding your information: - **Access and Correction:** You may request access to the personal information we hold about you and correct any inaccuracies. - **Opt-Out:** You may opt out of receiving promotional emails from us by following the unsubscribe link or contacting us directly. - **Product Analytics:** You can turn product analytics off at any time from within the App, under **Settings → Personal settings**, in the "Privacy" section. See Section 5 for details. - **Cookie Preferences:** You can modify your browser settings to manage cookie preferences. ## 5. Product Analytics The App sends us usage analytics so we can see which features are used and where people get stuck. This applies to Econumo and to Econumo Self-Hosted alike. **What we collect.** Each event carries a pseudonymous identifier derived from your account by a one-way hash, so we can connect events from the same account over time. Alongside it we record how you use the App (which features and actions, as event names only) and general characteristics of your account and setup, such as how large your account is (counts, not the items themselves), roughly when you registered, the App version and platform, your display language, your subscription status, and whether you use Econumo or Econumo Self-Hosted (a self-hosted installation is identified by a one-way derived value, not by its address). **What we never collect.** No financial data: no amounts, balances, transaction descriptions, or transaction dates. No names of your accounts, categories, payees, or tags. No email address or name. Your installation's hostname and network address reach our collector as part of any web request, but we do not store them. **Linking to your account.** The identifier is pseudonymous, not anonymous: it lets us see that events belong to the same account without telling us whose account it is. On Econumo we can match it back to your account when there is a reason to, such as investigating a support request. On Econumo Self-Hosted the identifier is derived inside your own environment, so we have no way to match it to you. **Turning it off.** Open **Settings → Personal settings** in the App and use the "Privacy" section. It takes effect immediately and applies to that account only; other accounts you have access to keep their own setting. You can turn it back on the same way. This is how you object to this processing, which we carry out on the basis of our legitimate interest in improving Econumo. **Storage and sharing.** We run the analytics collector ourselves, on our own infrastructure. No third-party analytics service is involved, and the data is never sold, shared with advertisers, or passed to anyone else. Events are kept for up to 3 years and then deleted. ## 6. Data Security We implement appropriate security measures to protect your information. However, please note that no method of transmission over the internet is completely secure, and we cannot guarantee absolute security. ## 7. Data Retention We only retain collected information for as long as necessary to provide you with your requested service. Product analytics events are retained for the period stated in Section 5. Data is stored and protected using commercially acceptable means to prevent loss, theft, unauthorized access, disclosure, copying, use, or modification. You may request that we delete your personal information, subject to certain exceptions provided by law. ## 8. Data Controller and Processor Role We act in the capacity of a data controller and a data processor with regard to the personal data processed through Econumo and its services in compliance with applicable data protection laws, including the EU General Data Protection Regulation (GDPR). ## 9. Links to External Sites Our Sites may link to external sites that are not operated by us. Please be aware that we have no control over the content and practices of these sites and cannot accept responsibility or liability for their respective privacy policies. ## 10. Children’s Privacy Our Sites are not intended for individuals under the age of 16. We do not knowingly collect personal information from children under 16. If you become aware that a child has provided us with personal information, please contact us, and we will take steps to delete such information. ## 11. Changes to This Privacy Policy We may update this Privacy Policy from time to time. We will notify you of any material changes by posting the new Privacy Policy on this page and updating the effective date. ## 12. Contact Us If you have any questions about this Privacy Policy or our practices, please contact us at: econumo@gmail.com --- This policy is effective as of 6 September 2026. --- # Terms of Service URL: https://econumo.com/docs/legal/terms-of-service/ # Terms of Service By using our websites, services, and products (collectively referred to as the "Software"), you agree to these Terms of Service ("Terms"). Please read them carefully. If you do not agree, please discontinue using our Software. Econumo is operated by Dmitry Kuznetsov, sole proprietor, British Columbia, Canada ("we", "us", or "Econumo"). ## 1. Acceptance of Terms By accessing or using the Software, you confirm that you accept these Terms and agree to abide by them. ## 2. Effective Date These Terms are effective from the date you first use the Software. ## 3. Software Versions Econumo offers different versions to suit your needs: - **Econumo**: The hosted service at [app.econumo.com](https://app.econumo.com/), for individuals and families who prefer easy, remote access to financial management tools. Operated by us, it provides lifetime access after a one-time payment. - **Econumo Self-Hosted**: A free, open-source version of the platform that you run on your own infrastructure, for individuals and families who value privacy and control over their finances. ### Licensing The Software includes both open-source and proprietary components. By using the Software, you agree to comply with the applicable licensing terms. ## 4. User Accounts - **Econumo** Users: Must create an account to access the hosted service. Please provide accurate information and keep your login details secure. You're responsible for all activities under your account. - **Econumo Self-Hosted** Users: No account registration with us is necessary. ## 5. License and Restrictions We grant you a limited, non-exclusive, non-transferable license to use the Software for personal, non-commercial purposes, in accordance with these Terms. You agree not to: - Use the Software in a way that violates any laws or regulations. - Attempt to interfere with the proper functioning of the Software. - Distribute, modify, or create derivative works of proprietary components without permission. ## 6. Payments The order process for **Econumo** is conducted by our online reseller [Paddle](https://www.paddle.com/), which acts as the Merchant of Record for all orders. Paddle handles billing, payment processing, applicable taxes, and customer payment inquiries. Your order confirmation and receipt are issued by Paddle. By purchasing Econumo you also agree to Paddle's [Checkout Buyer Terms](https://www.paddle.com/legal/checkout-buyer-terms). ### Refunds You can request a full refund of an **Econumo** purchase within 14 days of purchase, either through Paddle or by contacting us. After that period, refunds are issued at our discretion. Refunds are paid to the original payment method, and your statutory consumer rights are not affected. See our [Refund Policy](/docs/legal/refund-policy/) for full details. We encourage you to start a free trial at [app.econumo.com](https://app.econumo.com/register) or use **Econumo Self-Hosted** before purchasing **Econumo** to ensure the Software meets your needs. ## 7. Third-Party Links Our Software may include links to third-party websites or services. We're not responsible for their content or practices. Please review their terms and privacy policies. ## 8. Disclaimer of Warranties We provide the Software "as is" and "as available," without warranties of any kind. Your use of the Software is at your own risk. ## 9. Limitation of Liability To the maximum extent permitted by law, we are not liable for any damages arising from your use of the Software. This includes, without limitation: - **Direct Damages**: Any direct losses or damages. - **Indirect Damages**: Losses that are not a direct result of our actions. - **Incidental Damages**: Minor damages that occur as a secondary result. - **Special or Consequential Damages**: Damages that are not foreseeable at the time of entering into this agreement. - **Punitive Damages**: Damages intended to punish wrongful conduct. Even if we have been advised of the possibility of such damages, we are not liable. ## 10. User Responsibilities You're responsible for your actions and any content you generate using the Software. We're not responsible for any outcomes resulting from your use of the financial management tools. ## 11. Price Changes Prices may change as we improve and expand Econumo. Any changes in pricing will not affect purchases you've already made. ## 12. Changes to These Terms We may update these Terms occasionally. We'll post changes on this page with a new effective date. Continued use after changes means you accept the new Terms. ## 13. Termination of Service ### By Econumo We may discontinue or terminate the Software or any part of it at any time for various reasons. #### Data Export and Transition If we terminate **Econumo**: - **Data Export**: You'll have the ability to export your data within three months of the termination announcement. After that period, data will be deleted. ### By You You can stop using our services at any time. To delete your account or export data, contact us at econumo@gmail.com. ## 14. Governing Law These Terms are governed by the laws of Canada, without regard to conflict of law principles. ## 15. Contact Us If you have any questions or concerns, please reach out: econumo@gmail.com --- Last Updated: September 5, 2026 --- # Refund Policy URL: https://econumo.com/docs/legal/refund-policy/ # Refund Policy This Refund Policy applies to purchases of **Econumo**, the hosted service at [app.econumo.com](https://app.econumo.com/). **Econumo Self-Hosted** is free and open source, so no refunds apply to it. Please read this policy together with our [Terms of Service](/docs/legal/terms-of-service/). ## 1. Purchases and Merchant of Record Purchases of Econumo are processed by [Paddle](https://www.paddle.com/), which acts as the Merchant of Record for our orders. This means Paddle handles billing, payment processing, applicable taxes, and payment-related customer inquiries. Your order confirmation and receipt are issued by Paddle, and the charge on your statement will appear under Paddle's name. ## 2. Try Before You Buy We recommend evaluating Econumo before purchasing. Every new account comes with a **45-day free trial**, and no payment card is required to start it. You can sign up at [app.econumo.com](https://app.econumo.com/register). You can also run **Econumo Self-Hosted** for free to see whether the Software meets your needs. ## 3. Refund Window If Econumo does not work out for you, you can request a **full refund within 14 days of purchase**, no questions asked. To request a refund, either: - Contact Paddle directly at [paddle.net](https://paddle.net/), using the email address you used at checkout or the order details from your receipt; or - Email us at [econumo@gmail.com](mailto:econumo@gmail.com) with your order number, and we will arrange the refund with Paddle on your behalf. ## 4. After the Refund Window After the 14-day window has passed, refunds are issued at our discretion. We will consider a refund in exceptional cases, for example when a technical issue caused by us prevents you from using Econumo and we have been unable to resolve it. Please contact us at [econumo@gmail.com](mailto:econumo@gmail.com) and describe the problem. ## 5. How Refunds Are Paid Refunds are issued to the original payment method used for the purchase. Depending on your bank or card issuer, it may take several business days for the refund to appear on your statement. Once a refund is issued, access to Econumo for the refunded purchase is revoked. ## 6. Your Statutory Rights Nothing in this policy limits any rights you have under applicable consumer protection law. In particular, if you are a consumer in the European Union, the United Kingdom, or another jurisdiction with statutory withdrawal or cancellation rights, those rights are not affected by this policy. ## 7. Changes to This Policy We may update this Refund Policy from time to time. We will post changes on this page with a new effective date. Changes do not affect purchases made before they take effect. ## 8. Contact Us If you have any questions about this Refund Policy, please reach out: econumo@gmail.com --- Last Updated: September 5, 2026