
Deploy Open Net Worth
Self-hosted AI net-worth ledger and personal finance agent.
open-net-worth
Just deployed
/home/onw
Deploy and Host self hosted Open Net Worth (AI Finance Ledger) on Railway
This template deploys Open Net Worth, a self-hosted AI personal finance ledger, as a single Railway service with one persistent volume.
About Hosting Open Net Worth open-source software on Railway (self hosted Open Net Worth template)
Open Net Worth is AGPL-3.0 open-source software. This template runs the unmodified upstream 0.1.43 release as one service. It is independent community packaging, not endorsed by the Open Net Worth project.
Why Deploy Open Net Worth, the self-hosted AI personal finance ledger on Railway (Railway Free Trial)
Actual Budget suits envelope budgeting on your own server, while Open Net Worth adds an AI agent that works on your accounts and net worth, on infrastructure you control.
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying Open Net Worth on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Railway vs Other Hosting Providers and VPS for Open Net Worth self hosting
Open Net Worth runs as one container with one volume, so the choice depends on how much setup you want to own.
| Provider | What You Get with Railway | What You Get with the Other Provider |
|---|---|---|
| DigitalOcean | A one-click template that sets the password, mounts the volume and runs health checks. | A droplet you size, patch and firewall yourself. |
| AWS | A single managed service with usage-based billing and no VPC or IAM setup. | A wide set of services you wire together yourself. |
| Hetzner | A managed deploy with domain, HTTPS and restarts handled for you. | A low-cost server where you manage Docker, the proxy and updates. |
Choose Railway for the fastest path to a running ledger, and a VPS if you want to manage the machine yourself.
Common Use Cases for hosted Open Net Worth
- Accounts and holdings in one ledger: Keep bank accounts, cards, loans, brokerage positions and retirement balances in one multi-currency book.
- Net worth over time: Watch how your total moves month to month as balances and holdings update.
- Budgets and price and news feeds: Set up envelopes or a simple spending split, while live price and news feeds keep investment values current.
- Asking Lucius to categorize, reconcile or explain changes: Ask the built-in AI agent to sort transactions, reconcile an account or explain a net worth shift, then review changes before they land.
- Scripted access with an API token: Set AUTH_API_TOKEN to call the ledger from scripts for reporting or imports without browser sign-in.
Dependencies for Open Net Worth Docker hosted on Railway
Open Net Worth runs as one Railway service built from the public image ghcr.io/onepush-dev/open-net-worth:0.1.43, which wraps the unmodified upstream release. AUTH_PASSWORD is the only template variable, generated per deploy. Optional AUTH_API_TOKEN and ONW_DATABASE_URL are not set by the template.
Deployment Dependencies for Managed Open Net Worth Service (one Python service with SQLite, caches, logs, backups and CLI sign-ins on a /home/onw volume)
The service is a single Python process. Copy backups off the volume too, since it holds your whole financial book.
Implementation Details for Open Net Worth (ghcr.io/onepush-dev/open-net-worth:0.1.43 runs the unmodified upstream image with a start script that fixes volume ownership, drops to the onw user and binds 0.0.0.0:8080 (on :: uvicorn was IPv6-only and Railway returned 502); AUTH_TRUST_LOOPBACK=false baked in)
The start script fixes volume ownership, then drops to the onw user. AUTH_TRUST_LOOPBACK=false is baked in, so local requests still need a login.
How does Open Net Worth compare against other tools
Open Net Worth vs Actual Budget (Actual Budget Alternative)
- Focus: An AI agent (Lucius) works your ledger, budgets and investments through guarded write tools, with a confirm card before changes land.
- Scope: Accounts across currencies, budgets, holdings, planning and a retirement outlook in one book.
- Where Actual Budget may fit better: For a simpler, envelope-only budgeting tool without an AI layer.
Open Net Worth vs Firefly III (Firefly III Alternative)
- Focus: An operator-facing AI analyst that acts on the book, not just a record-keeping interface.
- Setup: On Railway it runs as one service with one persistent volume, so less infrastructure to manage.
- Where Firefly III may fit better: For a long-established, feature-heavy system with a large community.
Open Net Worth vs Wealthfolio (Wealthfolio Alternative)
- Focus: Covers the whole household balance sheet, including banking, budgets and net worth over time, with investments as one part.
- Agent: Lucius can reconcile, categorize and explain changes, and can act through connected MCP servers.
- Where Wealthfolio may fit better: For a dedicated investment-portfolio tracker.
Open Net Worth with Docker vs Railway (Self-Hosting Comparison)
- Docker: You run the Compose file on your own machine and manage the volume, updates and host yourself.
- Railway: The template deploys the same app with a generated instance password, a persistent volume at /home/onw, and a health check at /api/health.
- Trade-off: Railway removes host management but is usage-based, and remains a single-operator setup.
How to use Open Net Worth on Railway?
- Open your Railway domain and sign in with the
AUTH_PASSWORDvalue from the service Variables tab. That value only seeds the password on first boot, so change it later in Settings then Security. - Go to Settings then AI Model and pick a provider and model: Anthropic, OpenAI, or an OpenAI-compatible endpoint. Upstream first run asks for an AI model with no skip, so have an API key, an OpenAI-compatible endpoint, or a CLI sign-in ready. You can also sign a CLI in over
railway ssh, for examplecodex login --device-auth. - Add your accounts and holdings, then ask Lucius to categorize or reconcile them.
- Confirm the service is healthy by requesting the health endpoint:
curl https://your-domain/api/health
How to self host Open Net Worth on other VPS Services (Open Net Worth self hosting guide)
Clone the Repository
Open Net Worth ships a Docker Compose file as a release asset, so you do not need a source checkout. Create an empty folder and download the file into it. The release compose file pins the image to its release, and ONW_VERSION=0.1.43 selects this template version.
mkdir open-net-worth && cd open-net-worth
curl -fsSLO https://github.com/open-net-worth-ai/open-net-worth-releases/releases/latest/download/docker-compose.yml
Install Dependencies
You need Docker with the Compose plugin. The image is public, so Docker pulls it and no local build, Node or Python is required.
docker compose version
Configure Environment Variables
Compose refuses to start without a password, so set AUTH_PASSWORD to at least 8 characters in a .env file next to the compose file.
echo "AUTH_PASSWORD=$(openssl rand -base64 24)" > .env
# Upstream: set AUTH_TRUST_LOOPBACK=false before putting the app behind a reverse proxy.
echo "AUTH_TRUST_LOOPBACK=false" >> .env
Start the Open Net Worth Application
Start the stack, then open localhost:8080 on the server and sign in with your password. Railway handles hosting, HTTPS and the persistent volume for you.
docker compose up -d
Official Pricing of Open Net Worth (Open Net Worth pricing)
Open Net Worth is open-source software licensed under AGPL-3.0, and it is free to self-host.
Open Net Worth hosted vs self hosted comparison (Pricing, features, costs, and more)
Upstream offers desktop apps and self-hosting, not a hosted plan, with the same features either way. The real choice is who runs the machine.
Monthly cost of self hosting Open Net Worth on Railway
Railway bills by usage, so your cost depends on RAM and CPU use, volume size and any other services you add. Check usage after your first week.
System Requirements for Hosting Open Net Worth on a VPS
A VPS needs Docker, or Python 3.12 and Node.js 22 for running from source, plus enough disk for data, caches, logs and backups.
Frequently Asked Questions (FAQs)
How do I sign in to my Open Net Worth instance on Railway?
Open your deployment's domain and log in with the AUTH_PASSWORD value from the service Variables tab. It only seeds the password while none is stored; change it later in Settings then Security.
Does changing AUTH_PASSWORD change my password later?
No. Once a password is stored, editing the variable does not change it. Use Settings then Security to change the password.
Is an AI provider required to run Open Net Worth?
The server boots and the health check passes without one, and startup logs a non-fatal message that the AI provider is not configured. However, upstream first run asks for an AI model with no skip, so in practice have an API key, an OpenAI-compatible endpoint or a CLI sign-in ready.
Can more than one person use the same instance?
No, Open Net Worth is built for one operator and is not meant for multi-user or family accounts. Give each person their own deployment if they need separate books.
Where do my backups go, and what should I do with them?
Automatic daily backups go to the same /home/onw volume as your data. Copy them off regularly, since volume loss takes the backups too.
Can I use Postgres instead of SQLite?
Optionally, yes, by setting ONW_DATABASE_URL to a Postgres connection string. This path is not tested on this template.
Template Content
open-net-worth
ghcr.io/onepush-dev/open-net-worth:0.1.43