unsubbed.co

IHateMoney

IHateMoney is a self-hosted finance & budgeting tool that manages your shared expenses, easily.

Open-source shared budget management, honestly reviewed. No marketing fluff, just what you get when you self-host it.

TL;DR

  • What it is: A minimalist open-source web app to track shared expenses — who paid what, for whom — and compute who owes who at settlement time [1].
  • Who it’s for: Housemates, travel groups, or small teams splitting recurring costs who want zero SaaS dependency and zero forced account creation for participants.
  • Cost savings: Splitwise goes freemium and pushes users toward a paid tier; IHateMoney is free to self-host (beerware license) and free to use on its hosted instance at ihatemoney.org.
  • Key strength: No registration required for participants. You share a project code and people join — no email confirmations, no accounts, no data handed to a SaaS company [1].
  • Key weakness: The project formally entered maintenance mode in 2024. Major new features are not planned. If you need mobile apps, real-time sync, or receipt scanning, look elsewhere [README].

What is IHateMoney

IHateMoney is a web application that solves one narrow problem well: tracking shared expenses in a group and computing the minimal set of transfers to settle up. It was started in 2011 — which makes it older than most of its competitors — and has accumulated 1,354 GitHub stars over that time [1].

The pitch is in the README: “A simple shared budget manager web application. It keeps track of who bought what, when, and for whom; and helps to settle the bills.” There is no investor slide deck hiding behind that description. It does exactly what the sentence says.

The technical stack is Python (3.11–3.13), with SQLite, PostgreSQL, or MariaDB as the backend. A Docker image is available on Docker Hub. The license is a BSD beerware derivative — if you meet the authors in person and want to buy them a craft beer, you are encouraged to do so. For legal and compliance purposes, this is effectively a permissive open-source license with no commercial restrictions [README].

What makes IHateMoney notable in the crowded expense-splitting space is not features — it’s philosophy. The README explicitly states that simplicity is now the main goal, that stability is prioritized over new features, and that the project is operating in something close to maintenance mode. That is an unusually honest thing to write in a README, and it’s the first thing a prospective user should understand before committing to it [README].


Why People Choose It

The AlternativeTo page for IHateMoney lists it under tags like split-bills, group-expense, and bills, alongside 87 other alternatives [1]. In that crowded field, it keeps getting listed as an alternative to newer tools — Paji Splitly, DuoDivvy, Zedger, SplitDrip, KillBbill — not because it has more features, but because it has something most of them don’t: you own the data and there’s nothing to sign up for [1].

The privacy angle is real and not marketing. Tools like Splitwise, Tricount, and Settle Up all require accounts and route your transaction data through their servers. IHateMoney self-hosted routes nothing anywhere. The MoneyBuster Android app (an unofficial companion) makes this explicit in its description: “You can keep your project local or make it synchronize with IHateMoney and Nextcloud Cospend. This means you can choose where your data is going and preserve your privacy.” It even positions itself against Tricount, Cospender, and Splitwise as “FOSS alternatives that don’t force you to give away your private data” [4].

The no-registration-for-participants model is what keeps it relevant. You create a project, set a name and a private code, share the link. Anyone with the code can join and add expenses. No email, no verification step, no friction for the person who just wants to log that they bought groceries for the house. That’s a UX decision that most modern apps have abandoned in favor of user accounts and growth metrics.


Features

Based on the README and project documentation:

Core expense tracking:

  • Create shared projects with a private access code [README]
  • Log bills: who paid, how much, for which members, on what date [README]
  • Automatic balance computation — the app tells each member what they owe or are owed [README]
  • Settlement plan output: the minimal set of transfers to zero out all balances [README]
  • No account creation required for participants [1]

Interface and access:

  • Responsive web interface that works on mobile browsers (no native app) [homepage]
  • Demo available at ihatemoney.org before self-hosting [README]
  • Password reminder flow [homepage]
  • Language support: 30+ languages including English, French, German, Spanish, Russian, Japanese, Chinese, and more [README]
  • Translation managed via Weblate [README]

Data and backend:

  • SQLite (zero-config), PostgreSQL, MariaDB, or in-memory backend [README]
  • Docker image on Docker Hub [README]
  • Open API that MoneyBuster Android app syncs against [4]
  • Supports Python 3.11–3.13 [README]

What it does not do:

  • No native mobile apps (web only, responsive)
  • No receipt scanning or OCR
  • No bank/card integration
  • No recurring expense tracking
  • No category budgeting or reports beyond group balances
  • No real-time sync or push notifications unless you use the MoneyBuster companion app against a self-hosted instance [4]

The feature set is intentionally narrow. The maintainers have explicitly said they will not accept contributions that complicate the codebase or the UI significantly [README]. If that sounds limiting, that’s the point — and it’s honest about it.


Pricing: SaaS vs Self-Hosted Math

IHateMoney hosted (ihatemoney.org):

  • Free to use, no paid tiers listed on the homepage
  • Funded by donations via Liberapay [README]
  • You do not control the data — it lives on the project’s server

IHateMoney self-hosted:

  • Software: $0 (beerware license, no restrictions) [README]
  • VPS to run it: $5–6/mo on Hetzner or Contabo
  • Database: SQLite for small groups (zero additional cost), PostgreSQL if you want something more durable (typically bundled or $0 on a self-managed VPS)

Splitwise for comparison:

  • Free tier: basic expense splitting, limited features
  • Splitwise Premium: paid subscription required for advanced features (receipt scanning, charts, currency conversion, no ads) — pricing not disclosed in the reviewed sources, but widely reported as $3.99–$7.99/mo
  • All your data: on Splitwise’s servers regardless of tier

Tricount:

  • Free, no premium tier as of this writing
  • Closed source, data on their servers

Spliit (MIT-licensed alternative):

  • Free, open-source (MIT), self-hostable [5]
  • More actively developed than IHateMoney as of 2026 [5]

The math for IHateMoney self-hosted is trivial: $5–6/mo for a VPS that can run the app alongside other services. For a household of four splitting rent, utilities, and groceries, that’s less than the cost of one shared meal per month. The hosted version at ihatemoney.org is free, but then you’re back in the “trusting someone else’s server” position — just a different someone.


Deployment Reality Check

The Docker path is the recommended way to self-host IHateMoney, and the README points to Docker Hub for the official image [README]. For anyone comfortable with docker run or docker-compose, this is not a difficult deploy.

What you actually need:

  • A Linux VPS (512MB RAM is enough for a household-scale instance)
  • Docker installed
  • A reverse proxy (Caddy or nginx) for HTTPS if you want a real domain
  • A choice of backend: SQLite for simplicity, PostgreSQL if you’re running other services already

What can go sideways:

  • The project being in maintenance mode means bugs may take longer to get fixed. There are 90 open issues on GitHub [1]. For a household expense tracker, this is fine. For anything mission-critical, it’s worth knowing.
  • No official mobile app. The MoneyBuster Android companion app (by Julien Veyssier, GPL-3.0) syncs with a self-hosted instance, but it’s third-party and last updated August 2024 [4]. If you’re iOS-only, you’re using the mobile browser.
  • Language support is community-maintained via Weblate. Completeness varies by language [README].
  • The hosted version at ihatemoney.org has a captcha-style anti-bot question on signup (“Which is a real currency: Euro or Petro dollar?”) — charmingly lo-fi [homepage].

Realistic time for a technical user: 20–40 minutes to a working instance. For a non-technical user following a guide: 1–2 hours including domain and HTTPS setup. If you’ve never touched Docker, budget an afternoon and use the hosted version in the meantime.


Pros and Cons

Pros

  • No registration for participants. The zero-friction invite model (share a code, join, log expenses) is the best UX decision in the project and most competitors have abandoned it for growth-metric reasons [1].
  • Genuinely simple. One narrow problem solved cleanly. The codebase is small, the interface is not a settings maze, and the maintainers actively reject complexity [README].
  • Privacy by default. Self-hosted means your housemates’ grocery and utility data doesn’t feed anyone’s analytics pipeline [4].
  • Permissive license. Beerware is as free as it gets. No GPL copyleft complications, no “Fair-code” commercial restrictions [README].
  • 30+ languages. Actively translated via Weblate — useful for international teams or households [README].
  • Runs on minimal hardware. A shared VPS with 512MB RAM is fine. You are not running Kubernetes for expense splitting [README].
  • MoneyBuster companion app for Android users who want native sync [4].
  • Stable. If you install it today, it will still work in three years without you touching it. Maintenance mode cuts both ways [README].

Cons

  • Maintenance mode is real. The README says it plainly: contributor energy is down, major new features are not planned [README]. If you’re betting on long-term active development, Spliit (MIT, actively maintained) is the better bet [5].
  • No native mobile app. Browser-only on iOS. MoneyBuster covers Android but is third-party and infrequently updated [4].
  • No receipt scanning, no bank sync, no charts. If you want those features, you want a different tool.
  • 87 alternatives listed on AlternativeTo [1] — the category is crowded and several newer tools (Spliit, BillSplit) are MIT-licensed and more actively developed [5].
  • GitHub star count is modest for a 15-year-old project: 1,354 stars [1]. This reflects niche utility, not poor quality, but it’s a signal that community momentum is limited.
  • The hosted version means trusting the project’s server, which is volunteer-funded via Liberapay donations [README]. It’s not a well-capitalized company. For household use this is fine; for anything involving business finances it is not.

Who Should Use This / Who Shouldn’t

Use IHateMoney if:

  • You want to split household expenses, a group trip, or a shared event without anyone having to create an account.
  • Privacy matters — you want expense data on your own server, not Splitwise’s.
  • You want something stable that will run untouched for years on a $5 VPS.
  • Your group includes people who resist signing up for yet another app.
  • You’re comfortable with Docker deployment, or willing to spend an afternoon learning.

Skip it (try Spliit instead) if:

  • You want the same no-frills shared expense model but with active development and a newer codebase [5].
  • You need something that’s still receiving regular feature updates.

Skip it (try Splitwise or Tricount) if:

  • Your group wants native mobile apps with push notifications and real-time sync.
  • You need receipt scanning or bank import.
  • No one in your group will set up or maintain a self-hosted instance and you’re fine with a free-tier SaaS.

Skip it (try Firefly III) if:

  • You want comprehensive personal finance management — budgets, categories, recurring transactions, reports. IHateMoney doesn’t do any of that [5].

Skip it (try Nextcloud Cospend) if:

  • You’re already running a Nextcloud instance and want expense splitting integrated into that stack. MoneyBuster syncs with both Cospend and IHateMoney, and Cospend is more actively maintained [4].

Alternatives Worth Considering

From AlternativeTo data and the sources reviewed:

  • Spliit — MIT-licensed, actively maintained, minimalist. The most direct IHateMoney successor in spirit [5]. Strong first choice for new deployments.
  • Nextcloud Cospend — Expense splitting as a Nextcloud app. If you already self-host Nextcloud, this is worth evaluating. MoneyBuster syncs with it [4].
  • Splitwise — The incumbent SaaS. Better native apps, receipt scanning, broader features. Freemium, closed-source, your data on their servers [2].
  • Tricount — Free, no premium tier, clean mobile apps. Closed-source, data on their servers [2].
  • Settle Up — Freemium, solid mobile apps, offline capable [2].
  • BillSplit — MIT-licensed, receipt OCR, no registration required, newer project [5].
  • Kittysplit — Web-only, no registration, free. Closed-source but dead simple for one-off events [2].
  • Firefly III — Full personal finance manager, self-hosted, AGPL-3.0. Overkill for expense splitting but right for full budget tracking [5].

For a household or travel group that wants self-hosted and no accounts: IHateMoney or Spliit. Spliit if you want active development; IHateMoney if you want proven stability.


Bottom Line

IHateMoney is a 15-year-old tool that solved a specific problem and stopped there. That is neither a criticism nor faint praise — it is a description. The shared expense splitting it does is correct, privacy-respecting, and requires nothing from participants except a shared code. For a housemate group tired of Splitwise asking for their phone number, or a travel group that doesn’t want to create yet another app account, it is the right answer on a $5 VPS.

The honest caveat is that the project said publicly it’s in maintenance mode, and that Spliit exists as an actively maintained MIT alternative with the same philosophy. If you’re setting up a new household expense system today and plan to rely on it for several years, Spliit is probably the better long-term bet. If you already run IHateMoney, there’s no compelling reason to migrate.

If setting up a self-hosted instance is the blocker, that’s exactly what upready.dev handles for clients. One-time deployment, you own the server.


Sources

  1. AlternativeTo — IHateMoney about page (87 alternatives listed, 1,360 GitHub stars noted). https://alternativeto.net/software/ihatemoney/about/
  2. TopAlter.com — 10 Best Free ihatemoney Alternatives. https://topalter.com/best-ihatemoney-alternatives
  3. TopAlter.com — 5 ihatemoney Alternatives for Android. https://topalter.com/best-ihatemoney-alternatives/android
  4. AndroidFreeware — MoneyBuster APK (shared budget manager syncing with IHateMoney and Nextcloud Cospend, GPL-3.0). https://www.androidfreeware.net/download-moneybuster-apk.html
  5. AlternativeTo — ihatemoney Alternatives list (Spliit, Firefly III, BillSplit, Splitwise, and others). https://alternativeto.net/software/ihatemoney/

Primary sources: