[{"data":1,"prerenderedAt":81},["ShallowReactive",2],{"seo-verification":3,"blog-self-host-actual-budget-vps-en":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"title":9,"excerpt":10,"readTime":11,"views":12,"isPinned":13,"publishedAt":14,"category":15,"categories":21,"featuredImage":23,"bgImage":24,"posterImage":25,"relatedSolution":26,"intro":29,"sections":30,"ctaTitle":76,"ctaBody":77,"ctaButton":78,"ctaUrl":79,"relatedPosts":80},173,"self-host-actual-budget-vps","How to Self-Host Actual Budget on a VPS: Your Private YNAB Alternative","Self-host Actual Budget on a VPS — an MIT-licensed, zero-based budgeting app with bank sync, multi-device access and end-to-end encrypted sync. No subscription, full data ownership.",6,0,false,"2026-07-07T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},7,"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[22],{"id":16,"name":17,"slug":18,"color":19,"icon":20},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fself-host-actual-budget-vps-poster.svg",{"categorySlug":27,"appSlug":28},"erp","actual-budget","YNAB proved that zero-based (envelope) budgeting works, but its $99\u002Fyear subscription and cloud-only model aren't for everyone. Actual Budget (MIT, ~26 k GitHub stars) brings the same methodology — assign every dollar a job before you spend it — to a self-hosted Node.js server that runs on a single Docker container. Your data stays in an SQLite file on your own VPS; every device syncs through end-to-end encryption. Here is how to deploy it in minutes.",[31,35,38,48,51,73],{"type":32,"title":33,"body":34},"h2","Why self-host your budget instead of using YNAB","The envelope budgeting method is straightforward: allocate every incoming dollar to a named category (rent, food, savings, emergency fund) before spending it. When a category runs out, you either stop spending or consciously move money from another envelope. YNAB popularised this approach in a polished app — but it costs $99\u002Fyear, stores your financial data on its servers, and can't be audited. Actual Budget replicates the method (including the coveted 'roll with the punches' flexibility) with full source code on GitHub under the MIT licence. Self-hosting it on a VPS means your transactions, balances and budget history never leave your infrastructure — and the annual cost is whatever a small VPS costs.",{"type":32,"title":36,"body":37},"Deploy Actual Budget with Docker in two minutes","Actual ships as a single Docker image — no database server, no message broker, no configuration files. One container, one volume, one port. On your Ubuntu 22.04 VPS, run: `docker run -d --restart=always -p 5006:5006 -v actual-budget:\u002Fdata --name actual-budget actualbudget\u002Factual-server`. The server is ready in under two seconds on port 5006. Open `http:\u002F\u002F\u003Cyour-vps-ip>:5006` in a browser, click 'Create new budget', and you are budgeting. The entire SQLite database is stored in the `actual-budget` Docker volume — back it up with a single `docker run --rm -v actual-budget:\u002Fdata alpine tar -czf - \u002Fdata`.",{"type":39,"title":40,"items":41},"ul","What you get out of the box",[42,43,44,45,46,47],"Zero-based envelope budgeting — assign every dollar to a category before spending; Actual flags overspending in real time.","Multi-device sync — phone, tablet and desktop all share the same live budget via the encrypted server.","End-to-end encryption — the server only stores ciphertext; your transactions are readable only on your devices.","Bank sync via GoCardless (Europe) and SimpleFIN (North America), or import OFX\u002FQFX\u002FCSV files manually.","Reporting: net-worth chart, cash-flow, spending by category, and fully custom reports.","YNAB 4 and nYNAB import — migrate your full history in about five minutes.",{"type":32,"title":49,"body":50},"Add HTTPS so you can sync from anywhere","To access your budget from outside the VPS — on mobile or from another country — you need HTTPS. The simplest path is Caddy. Install it on the same VPS and add a one-line Caddyfile: `budget.yourdomain.com { reverse_proxy localhost:5006 }`. Caddy handles the Let's Encrypt certificate automatically. Once the domain resolves, open `https:\u002F\u002Fbudget.yourdomain.com` on your phone, tap the browser's 'Add to Home Screen' button, and Actual becomes a full PWA icon on your home screen. All sync traffic between your devices and the server goes through this TLS channel.",{"type":52,"title":53,"steps":54},"steps","Setup in six steps",[55,58,61,64,67,70],{"title":56,"body":57},"Create a VPS (1 GB RAM, Ubuntu 22.04)","Actual idles under 80 MB RAM. Even the smallest VPS plan gives you plenty of headroom.",{"title":59,"body":60},"Deploy the container","`docker run -d --restart=always -p 5006:5006 -v actual-budget:\u002Fdata --name actual-budget actualbudget\u002Factual-server`",{"title":62,"body":63},"Create your budget","Open port 5006 in a browser, click 'Create new budget', add your bank accounts with opening balances.",{"title":65,"body":66},"Set up envelope categories","Create categories (Housing, Food, Transport, Savings…) and allocate your expected monthly income across them.",{"title":68,"body":69},"Secure with HTTPS","Install Caddy, add `budget.yourdomain.com { reverse_proxy localhost:5006 }` to your Caddyfile, and reload.",{"title":71,"body":72},"Install on mobile","Open the HTTPS URL on your phone and use 'Add to Home Screen' — Actual Budget becomes a PWA icon.",{"type":32,"title":74,"body":75},"How to back up your budget","All data lives in the `actual-budget` Docker volume. A daily cron backup is one command: `docker run --rm -v actual-budget:\u002Fdata -v \u002Fbackups:\u002Fout alpine tar czf \u002Fout\u002Factual-budget-$(date +%Y%m%d).tar.gz \u002Fdata`. Restore by reversing the tar into a fresh volume before starting the container. Actual also has a built-in export: from the budget screen, go to Settings → Export → Download backup. This creates a portable ZIP of your entire budget that you can import on any other Actual instance.","Deploy Actual Budget on your VPS","Private, zero-based budgeting with no subscription — your financial data stays on your own server, synced across every device.","Deploy Actual Budget","\u002Fvps-cloud",[],1785935688578]