unsubbed.co

WYGIWYH

WYGIWYH is a self-hosted budgeting & personal finance replacement for Mint and YNAB.

Self-hosted personal finance, honestly reviewed. No marketing fluff, just what you get when you host it yourself.

TL;DR

  • What it is: Open-source (AGPL-3.0) self-hosted finance tracker built on a single principle — spend what you earn this month, treat savings as untouchable [README].
  • Who it’s for: People who hate budgeting apps but want serious multi-currency tracking, automation via API, and full data ownership. Especially useful for anyone managing income across multiple currencies or running recurring crypto/stock investments.
  • Cost savings: Every alternative that does multi-currency + API + automation with any polish is either a SaaS subscription or a spreadsheet. WYGIWYH runs on a $5–10/mo VPS and costs nothing in licensing [README].
  • Key strength: Principled approach that’s actually reflected in the feature set — no budget categories, no envelope method, no guilt-tripping. Just transaction tracking, net worth, and a DCA tracker for investments [README].
  • Key weakness: 828 GitHub stars means a small community, AGPL-3.0 is restrictive for commercial embedding, and there are no third-party user reviews to draw from. You’re betting on a solo maintainer.

What is WYGIWYH

WYGIWYH — pronounced “wiggy-wih,” short for What You Get Is What You Have — is a self-hosted finance tracker built around one opinionated principle: you only spend what you earned this month. Savings are tracked but treated as off-limits for current spending. That’s not a tagline, it’s the actual design constraint that shapes every feature decision [README].

The project was born out of spreadsheet fatigue. The author managed finances in a spreadsheet for years, and it worked until it didn’t — once multiple currencies, multiple accounts, and recurring investments entered the picture, the spreadsheet became unmaintainable. They evaluated existing apps and found none that met five specific requirements: multi-currency support, no forced budgeting, web interface, automation API, and custom transaction rules. So they built it [README].

That origin story matters for evaluating the software. WYGIWYH is a tool built to solve a specific person’s real problem, not a startup product designed to capture a market. The 828 GitHub stars and 37 contributors suggest others share the same problem. The 86 releases and 1,675 commits suggest it’s been actively maintained, not abandoned after the itch was scratched [README].

The tech stack is Django (Python) with PostgreSQL, deployed via Docker Compose. It has a proper web UI with monthly views, yearly summaries, a net worth tracker, a calendar view, and a full transaction list. There’s a live demo at wygiwyh-demo.herculino.com with credentials demo@demo.com / wygiwyhdemo, though automation features are disabled there [README].


Why people choose it

Independent third-party reviews of WYGIWYH are not available. The following is based entirely on the project’s README and GitHub data — which is itself an honest signal about where this tool sits in the market. With 828 stars it’s not mainstream, and that’s fine. The people who find it tend to be looking for something specific.

The case for WYGIWYH comes down to what it explicitly refuses to be. Most personal finance apps — Mint, YNAB, Copilot, and their open-source equivalents like Firefly III — are budgeting apps. They want you to assign every dollar to a category, set spending targets, and feel bad when you go over. WYGIWYH’s author found that model useless and built around a different mental model: you have income, you have expenses, and whatever is left accumulates as savings that you don’t touch for day-to-day decisions [README].

For people with multi-currency income and expenses, the alternatives are especially weak. Spreadsheets work until they don’t. YNAB’s multi-currency support has been a known gap for years. Firefly III handles multiple currencies but is primarily a bookkeeping tool. WYGIWYH was built with multi-currency as a first-class requirement, not an afterthought [README].

The API-first automation angle is another differentiator. The README lists “automation-ready API” as one of the five founding requirements. This matters if you’re pulling bank transaction exports, writing scripts to auto-categorize transactions, or integrating with other tools in a self-hosted stack.


Features

Based on the README and repository:

Transaction tracking:

  • Unified income and expense recording organized by account [README]
  • Multiple accounts (banks, wallets, investments, crypto exchanges) [README]
  • Full transaction list view and calendar view [README]

Currency support:

  • Native multi-currency with dynamic management [README]
  • Custom currencies — create your own for crypto tokens, rewards points, airline miles, or anything else [README]
  • Automatic exchange rate updates (disabled in demo) [README]

Automation and rules:

  • Customizable transaction rules for automated adjustments — the example use case is credit card billing cycle quirks [README]
  • Import/Export functionality (disabled in demo) [README]
  • REST API for integration with external tools and services [merged profile][README]

Investment tracking:

  • Built-in Dollar-Cost Average (DCA) tracker designed specifically for recurring crypto and stock investments [README]
  • Net worth view [README]

Views and reporting:

  • Monthly view, yearly view, net worth dashboard, calendar view, all transactions [README]
  • Visual interface with screenshots showing clean, functional UI [README]

Infrastructure and integrations:

  • Docker Compose deployment [README]
  • PostgreSQL backend [merged profile]
  • MCP server support — meaning it can be connected to AI tools like Claude Desktop [README]
  • Unraid app store support (no manual setup required on Unraid) [README]
  • OIDC configuration for SSO [README]

What’s missing or unclear from the README:

  • No mention of mobile apps — the README flags “web app usability (ideally with mobile support, though optional)” as a requirement but doesn’t confirm a native mobile app exists. The web interface likely works on mobile browsers.
  • No mention of bank sync / Plaid / open banking connectors. Automation appears to be API-based (push data in, not pull from your bank automatically).
  • Multi-user / household support is not described in detail.

Pricing: SaaS vs self-hosted math

WYGIWYH has no cloud offering. It’s entirely self-hosted. The licensing cost is $0 (AGPL-3.0) [README].

What you pay for:

  • A Linux VPS: $5–10/mo (Hetzner, Contabo, or similar)
  • A domain name if you want a clean URL: ~$12/yr
  • PostgreSQL and Redis are bundled in the Docker Compose setup

For comparison, the main alternatives:

  • YNAB (You Need A Budget): $14.99/mo or $99/yr. Strong budgeting features, multi-currency is weak, fully SaaS, your data lives on their servers.
  • Copilot (iOS-only): $13/mo. Clean UI, US bank sync, Apple ecosystem only, no self-hosting.
  • Monarch Money: $14.99/mo. Good multi-currency, US-centric bank sync, no self-hosting.
  • Firefly III (self-hosted, open-source): $0 license. Mature, broader feature set, more complex setup, focused on double-entry bookkeeping rather than the WYGIWYH philosophy.
  • Actual Budget (self-hosted, open-source): $0 license. Envelope budgeting, cleaner UI than Firefly III, but it is a budgeting app — exactly what WYGIWYH is designed not to be.

For someone currently paying $14.99/mo for YNAB who doesn’t use the budgeting features and just wants transaction history and multi-currency net worth: WYGIWYH + a $6 VPS = $72/yr vs. $180/yr on YNAB. That’s $108/yr saved, with full data ownership.

The math isn’t as dramatic as escaping Zapier pricing, but the data ownership argument is stronger. Financial data is more sensitive than workflow automation logs.


Deployment reality check

The setup path is Docker Compose with a .env file for configuration. The README walks through it in about 10 commands [README]:

  1. Create a folder and a docker-compose.yml by copying the production compose file from the repo
  2. Create a .env file from the example template and fill in your configuration
  3. Run docker compose up -d
  4. Create the first admin account via docker compose exec -it web python manage.py createsuperuser (or set ADMIN_EMAIL / ADMIN_PASSWORD env vars to skip the interactive step)

What you actually need:

  • A Linux VPS with at least 1–2GB RAM
  • Docker and docker-compose installed
  • A domain name and reverse proxy (Caddy or nginx) if you want HTTPS
  • PostgreSQL is bundled in the default Docker Compose setup

Environment variables to configure: The README references a .env.example file with all available variables. OIDC configuration is supported for SSO with external identity providers, suggesting the env file is non-trivial but not overwhelming [README].

What can go sideways:

  • This is a solo/small-team project with 37 contributors. If the maintainer steps away, you’re on your own with the AGPL-3.0 code — which is fine if you’re technical, less fine if you’re not.
  • The API and automation features are disabled in the demo, so you can’t pre-evaluate them before committing to a self-hosted install.
  • No third-party setup guides exist at this scale of adoption. If you hit a problem, you’re reading GitHub issues.
  • AGPL-3.0 means if you modify WYGIWYH and run it as a networked service, you must release your modifications. For personal use this doesn’t matter. For embedding it in a product or client setup, you need to understand the license.

Realistic time estimate for someone comfortable with Docker: 30–45 minutes to a working instance. For someone who needs to learn Docker first: half a day.


Pros and Cons

Pros

  • Purpose-built philosophy. The “no budgeting, just tracking” approach is a real design decision reflected throughout the feature set — not just a tagline [README].
  • Multi-currency as a first-class feature. Not an afterthought. Custom currencies including crypto and rewards points. Automatic exchange rate updates [README].
  • REST API for automation. The founding requirements explicitly included API access. This is load-bearing, not decorative [README][merged profile].
  • DCA tracker built in. Rarely found in personal finance trackers. Useful for anyone doing recurring crypto or stock buys [README].
  • Docker Compose deployment. Standard, well-understood path. Not exotic.
  • MCP server support. Can plug into AI tools like Claude Desktop for querying your financial data [README].
  • Unraid app store for those running Unraid home servers — zero-friction install path [README].
  • OIDC support for organizations that want centralized authentication [README].
  • Free live demo to evaluate before committing to a self-hosted setup [README].
  • Active development. 1,675 commits, 86 releases, 37 contributors is a healthy signal for an 828-star project [README].

Cons

  • Small community. 828 stars means limited community resources — fewer tutorials, fewer GitHub issue answers, fewer people who’ve hit your specific problem first [README].
  • AGPL-3.0 license. More restrictive than MIT or Apache 2.0. Not a problem for personal self-hosting; a consideration if you’re deploying for clients or embedding in a product.
  • Solo/small maintainer risk. No company backing this. If the maintainer loses interest, you inherit the maintenance burden.
  • No third-party reviews. Zero independent coverage means no external validation of the claims in the README. You’re trusting a single source.
  • No bank sync / open banking. You’re manually importing transactions or writing API integrations yourself. No Plaid, no open banking. For some this is a feature (simpler, more private); for others it’s a dealbreaker.
  • Web-only confirmed. No native mobile apps confirmed in the README. The web UI presumably works on mobile browsers, but mobile-first it is not.
  • No hosted option. If you want cloud convenience, there’s no official managed version — you self-host or you don’t use it.

Who should use this / who shouldn’t

Use WYGIWYH if:

  • You manage income or expenses in multiple currencies and need real tracking, not spreadsheet math.
  • You’ve tried YNAB or similar budgeting apps and found the budgeting paradigm annoying rather than helpful.
  • You want a self-hosted finance tracker with an API you can script against.
  • You’re already running a home server or VPS and adding one more Docker Compose stack costs you nothing extra.
  • You track DCA investments in crypto or stocks and want a dedicated view for that.
  • You’re running Unraid and want a one-click install.

Skip it (try Actual Budget instead) if:

  • You want a more polished, actively-reviewed self-hosted finance tool with a larger community.
  • You’re open to the envelope budgeting approach — Actual Budget has better documentation and more user-facing guides.

Skip it (try Firefly III instead) if:

  • You want the most mature, battle-tested self-hosted finance option with double-entry bookkeeping and the largest community.
  • You need extensive reporting features or are running finances for a small business.

Skip it (stay on YNAB/Copilot) if:

  • You need bank sync — automatic transaction import from your bank accounts is a dealbreaker.
  • You’re not comfortable with Docker or don’t have someone to set it up for you.
  • You want mobile apps with offline-first access.
  • You need customer support when things break.

Alternatives worth considering

  • Actual Budget — self-hosted, MIT-licensed, envelope budgeting, cleaner UI, larger community than WYGIWYH. If you can tolerate the budgeting paradigm, this is the safer bet with more community resources.
  • Firefly III — the most mature self-hosted personal finance option. Double-entry bookkeeping, extensive features, large community, AGPL-3.0. Overkill for simple tracking, right for complex financial management.
  • Hledger / Beancount — plain-text accounting for people who want version control over their financial data. Steep learning curve, no web UI out of the box, maximum flexibility.
  • GnuCash — desktop application, double-entry bookkeeping, long history. Not web-based, so not a direct comparison.
  • YNAB — the paid SaaS benchmark. Best-in-class bank sync and mobile apps, genuine budgeting methodology, $99/yr, your data on their servers.
  • Maybe Finance — newer open-source option with a cleaner UI, broader feature scope including investment tracking. Worth comparing if you want a more modern self-hosted option.

The realistic shortlist for someone who specifically wants no-budget tracking with multi-currency: WYGIWYH vs. a custom Actual Budget setup ignoring the budgeting features. WYGIWYH wins on DCA tracking and cleaner philosophy alignment. Actual Budget wins on community and documentation.


Bottom line

WYGIWYH is a tool that knows what it is and doesn’t apologize for what it isn’t. The “no budgeting” stance is a real design decision, the multi-currency support is built-in rather than bolted-on, and the REST API exists because the author needed it, not because it looked good in a feature matrix. The 828 stars reflect a niche audience, not a failed product — most people want bank sync and mobile apps, and this offers neither. But for the specific person who manages multi-currency finances, runs a DCA investment strategy, and wants their financial data on a server they control, it’s a focused solution that does exactly what it claims. The main risk is betting on a small-community project for something as long-term as financial tracking. At 86 releases and 1,675 commits that risk looks manageable; two years of maintenance drought and it starts to matter.


Sources

Primary sources (all claims derived from these):

  1. WYGIWYH GitHub Repository and README — eitchtee/WYGIWYH. https://github.com/eitchtee/WYGIWYH (828 stars, AGPL-3.0, 37 contributors, 86 releases)
  2. WYGIWYH Live Demo — wygiwyh-demo.herculino.com. https://wygiwyh-demo.herculino.com/

Note: No independent third-party reviews of WYGIWYH were available at the time of writing. All claims in this article are sourced from the project’s own README and repository metadata. Reader should weight accordingly.

Features

Integrations & APIs

  • REST API

E-Commerce & Payments

  • Multi-Currency