MO

Money Manager Ex

Free cross-platform personal finance manager

Budgeting & Finance ★ 2.3k stars Easy setup GPL-2.0

Money Manager Ex is a free, open-source personal finance application. It tracks accounts, transactions, budgets, and investments in a simple desktop interface backed by an SQLite database.

Key features

  • Account and budget tracking
  • Investment management
  • Reports and charts
  • SQLite-backed database

Pros & cons

Strengths

  • Simple and approachable
  • Portable data file

Trade-offs

  • Desktop only
  • No multi-user support

Money Manager Ex replaces

Last reviewed Sep 13, 2026 · 806 words

Money Manager Ex is not something you host. It is a desktop application, C++ and wxWidgets, that keeps your entire financial life in a single SQLite file with a .mmb extension, and the self-hosting question is only about where that file lives. Get that one thing right and MMEX is the most durable personal-finance setup available: 20 years of releases since 2005, GPL-2.0, 128 MB of memory, and a data format you can open with sqlite3 if the application vanished tomorrow.

What it actually is: a ledger, not a platform

The feature list is deliberately old-fashioned. Accounts (checking, credit card, investment, term deposits, assets), transactions with categories and payees, split transactions, recurring transactions, budgets by category and month, and a stock portfolio with manually or automatically fetched prices. Reports come as charts and tables, and the report engine takes custom SQL, which is where power users end up: any question you can phrase against the tables gets its own saved report. There is no web interface, no API, no mobile sync service run by the project, and no multi-user model at all; one file, one person editing at a time. The Android companion app exists, and it works by opening the same .mmb through a cloud folder, which brings us to the only real operational problem.

Syncing the .mmb file without corrupting it

SQLite handles one writer at a time on one machine. Two machines writing through a sync tool is how people get a torn database, and it is the mistake to design around. The rule that works: Syncthing or Nextcloud carries the file, but you close MMEX before you open it anywhere else. MMEX writes changes immediately, so "close" is enough; you do not need an explicit save. If you are the only user, this is a habit, not a burden. If you want two people entering transactions at the same time, that is a different category of tool and I name two below.

Two protective settings are worth turning on. MMEX can keep timestamped backup copies of the database on each open, with a configurable count; set it to 10 and forget about it. It can also encrypt the file, which matters the moment it sits in a synced folder that a phone can reach. Encryption is applied at the SQLite layer, so the sync tool sees only ciphertext, and the passphrase is required on every open.

Getting bank data in

There is no bank-feed aggregator, by design and by licence. Imports are QIF and CSV, with a universal CSV mapper that lets you assign columns once per bank and reuse the mapping. Most European and North American banks still export at least one of those formats, and the workflow is a monthly download, an import, and ten minutes of categorising. Payee-based auto-categorisation learns from history, so month three is faster than month one. If you are coming from Quicken, the QIF path carries transactions and categories across cleanly; investment lots need checking by hand. From Mint or any dead aggregator, CSV is what you have and CSV is what works.

When Firefly III or Actual is the better home

Pick something else in three situations. If two people need to enter transactions concurrently, Firefly III is a proper web application with a database server, an API, and a permission model, and it is the default pick in the finance category for households. If you want envelope-style budgeting where every unit of money has a job, Actual Budget is built around exactly that and syncs its own local-first database between devices with conflict handling, which sidesteps the SQLite-in-a-sync-folder problem entirely. If you run a small business or want double-entry rigour with proper accounts receivable, GnuCash is the older sibling that never stopped being correct. MMEX wins when you are one person who wants a fast, offline, uncomplicated ledger and would rather own a file than a service; at 2,264 stars it is not a small project, but it is a single-user one.

What I'd do

Install MMEX on the machine where you actually do finances, keep the .mmb inside a Syncthing folder with file versioning turned on, enable database encryption and the 10-copy backup rotation, and treat the phone app as read-mostly. Export a full CSV of transactions every quarter into a plain folder so there is always a second format on disk; the exports guide explains why that habit matters more than any single app choice. If a second person joins the household books, move to Firefly III and import the CSV. Until then, this is the lowest-maintenance finance setup you can run, precisely because there is nothing to run.

Compare Money Manager Ex

21 head-to-head comparisons.

Similar budgeting & finance apps