Actual Budget

Deploy Actual Budget on a VPS in One Click

Finance & accounting

Self-hosted zero-based budgeting app for tracking spending and syncing your finances across devices, with full control of your data.

  • Ready in ~3 min
  • Free installation
  • We handle the setup
At a glance
Version
Latest (26.x)
Operating system
Ubuntu Server 24.04 LTS
Minimum RAM
1 GB
License
MIT
Addressing
IPv4, IPv6
GitHub
29,000
Deployment~3 min
Open source & self-hosted
VPS plans

Choose a VPS plan for Actual Budget

Blazing-fast NVMe drives and powerful processors. Take a ready-made plan or build the configuration yourself.
Minex
Perfect for personal projects and small websites.
€3.20/mo
Save €0.80 per month

  • 1 vCPU core
  • 1 GB DDR5 RAM
  • 20 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • 1 TB traffic
Basex
A great balance of power and affordable price.
€4.80/mo
Save €1.20 per month

  • 2 vCPU cores
  • 2 GB DDR5 RAM
  • 40 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • 2 TB traffic
Most popular
Corex
For growing applications and businesses.
€7.20/mo
Save €1.80 per month

  • 4 vCPU cores
  • 4 GB DDR5 RAM
  • 50 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • Unlimited traffic
Midex
Resources for high-load projects.
€9.60/mo
Save €2.40 per month

  • 4 vCPU cores
  • 6 GB DDR5 RAM
  • 60 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • Unlimited traffic
Proex
Maximum power and scalability.
€12.00/mo
Save €3.00 per month

  • 6 vCPU cores
  • 8 GB DDR5 RAM
  • 70 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • Unlimited traffic
Scalex
Resources for scaling.
€16.00/mo
Save €4.00 per month

  • 6 vCPU cores
  • 10 GB DDR5 RAM
  • 150 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • Unlimited traffic
Maxex
A large reserve of power.
€44.00/mo
Save €11.00 per month

  • 8 vCPU cores
  • 16 GB DDR5 RAM
  • 200 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • Unlimited traffic
Apex
The top configuration.
€79.99/mo
Save €20.00 per month

  • 16 vCPU cores
  • 32 GB DDR5 RAM
  • 400 GB NVMe SSD
  • Full root access
  • 1 dedicated IPv4
  • Unlimited traffic

What you can do with Actual Budget

Actual Budget is a local-first personal finance app built around zero-based envelope budgeting, where every dollar gets assigned to a category before it's spent. It fits individuals, couples, and freelancers who want a serious alternative to subscription trackers like YNAB without handing bank data to a third party.

Most budgeting tools sell a cloud tier, but Actual Budget self hosted has no official paid version — the free public sync server run by the project is a shared, best-effort relay with no uptime guarantee. Running your own instance on a VPS gives you a private sync endpoint, control over backups, and bank-sync credentials (GoCardless, SimpleFIN) that stay on infrastructure you own.

The applications screen of the control panel with one-click install

Actual Budget features

A server surrounded by app icons — applications running on a VPS

Every hosting for Actual Budget plan on Leneex runs the complete open-source app — nothing here sits behind a paywall. Deployed via Actual Budget vps docker, you get the full feature set from the first login:

01

Zero-based envelope budgeting

Assign every dollar to a category with automatic rollover of over- and underspending into the next month.

02

CRDT-based multi-device sync

Edit the same budget from phone, desktop, and browser, with automatic conflict resolution when changes overlap.

03

Bank feed integrations

Connect accounts through GoCardless (EU/UK) or SimpleFIN (US/Canada) for automatic transaction imports.

04

File import support

Bring in transaction history from CSV, OFX, QFX, and CAMT.053 files.

05

YNAB migration importer

Carry over a complete YNAB4 or nYNAB budget history in one pass, categories and all.

06

Scheduled transactions and rules

Automate recurring bills and apply rule-based categorization to incoming transactions.

07

Custom reports

Build net worth, cash flow, and spending-breakdown views directly from your own data.

08

Optional end-to-end encryption

Sync data is encrypted on the client device before it ever reaches your server.

Requirements

Which server to run it on

Minimum requirements for Actual Budget and the configuration worth starting with.
Minimum
  • CPU1 vCPU
  • Minimum RAM1 GB
  • Disk10 GB
Recommended
VPS Minex
  • CPU1 vCPU
  • Minimum RAM1 GB
  • Disk20 GB

Installation is free — you only pay for the server

Getting started

How to deploy Actual Budget

Three steps and the app is running on your server.
Step 1
Choose a server

Actual Budget runs a single lightweight container with an embedded SQLite database, so even the smallest tier with 512 MB–1 GB RAM handles a household budget comfortably.

Step 2
Pick the app

Select Actual Budget one click install from the marketplace and the panel handles the Docker Compose setup — no manual docker-compose.yml editing needed to install Actual Budget on vps.

Step 3
Get your credentials

After the container starts, open the server's admin URL and set your server password on first load — this password also gates access for every synced device.

Why us

Why Host Actual Budget on Leneex

Speed, protection and support you can rely on — on every plan, with no hidden limits.
Deployment speed
Actual Budget ships as one container with no external database to provision, so you can deploy Actual Budget in one click and start budgeting the same day instead of waiting on a multi-service stack.
Free installation
Testing whether zero-based budgeting fits your habits shouldn't cost anything before you've even opened the app — a free install lets you try Actual Budget self hosted without committing to a paid sync subscription first.
DDoS protection
Your sync server is an internet-facing endpoint handling financial data behind a single password, so keeping it reachable and shielded from flood attacks matters more than it would for a static content site.
Control and support
Root access lets you tune ACTUAL_TRUSTED_PROXIES, reverse-proxy headers, and bank-sync environment variables yourself, with engineers on call if the underlying container or networking needs attention.
99.9% uptime with SLA compensation
Multi-device sync only works while the server is reachable — if it's down, your phone and desktop simply stop exchanging budget changes, so uptime directly affects whether the app is usable day to day.
Flexible payment
Actual Budget vps hosting on Leneex accepts cards, crypto, or invoicing for legal entities — a fitting match for an app whose whole philosophy is escaping rigid subscription billing.
What to choose

Actual Budget: Self-Hosted vs Cloud — Which to Choose

We compare cost, control over your data and limits, so the choice is an informed one.
Ready-made SaaS
Self-hosted on LeneexRecommended
Resources and limitsShared provider infrastructure, often with limits on the number of connected accounts per planDedicated container and SQLite database exclusively for your budget, with no shared queues
Control and accessData and encryption keys are stored on the vendor’s sideRoot access, your own encryption keys, and banking credentials stored on your own server
Feature limitsAdvanced reports, API access, and automation are often reserved for more expensive plansFull feature set: reports, rules, and API access without tier-based restrictions
ScalingScalability depends on the subscription plan and its limitsUpgrade your VPS plan at any time as the number of devices or users grows
CostSubscription costs often increase with the number of users or years of useFixed VPS pricing regardless of the number of family members or devices
Who it fitsIdeal for those who want a ready-made solution without server configurationIdeal for technically savvy users and families who value full control and predictable costs

Since Actual Budget itself has no official paid cloud tier, this isn't self-hosted versus "Actual Cloud" — it's a comparison against what a typical subscription budgeting app looks like. In that light, self-hosting is simply the practical way to run Actual Budget with full control over your financial data and a fixed monthly cost.

Frequently Asked Questions about Actual Budget on VPS

What people ask most about Actual Budget and our servers.

  • Yes — Actual Budget's built-in YNAB4 and nYNAB importer works the same way on a self-hosted instance as on the desktop app, carrying over categories, payees, and full transaction history.

  • Nothing is lost — Actual Budget stores everything in a single /data volume, so resizing the server plan doesn't touch the SQLite database or your sync history.

  • Actual Budget requires HTTPS for its client-side Web Cryptography API, so end-to-end encryption and sync simply won't work over plain HTTP.

  • The app is lightweight enough that a household of several members syncing across phones and desktops fits comfortably on the smallest tier, since the server only relays encrypted sync packets rather than rendering the UI itself.

  • New releases ship as updated actualbudget/actual-server Docker images that you pull and restart yourself.

What's already configured

The one-click deployment brings up a single actualbudget/actual-server container with an embedded SQLite database mounted to a persistent /data volume — there's no separate database service to configure, since Actual ships without one by design. The container restarts automatically on failure through Docker's restart policy. The app listens on port 5006 by default, and in the official Docker setup that port is typically published only to localhost, with a reverse proxy handling the public HTTPS connection.

First login and server password

Actual Budget doesn't ship with a preset admin account — the server password is either set through the ACTUAL_PASSWORD environment variable at Actual Budget installation time or entered directly in the browser on the very first page load, whichever the deployment template uses. Once set, that password is what every synced device — phone, desktop, browser — will ask for when connecting to this server.

Encryption and bank sync setup

Because Actual is local-first, the "real" budget lives as a file the client creates after logging in for the first time — the server only stores encrypted sync data, so enabling end-to-end encryption from Settings is worth doing before adding a second device.

Bank feeds aren't connected automatically: GoCardless and SimpleFIN credentials are entered manually from inside the app's Settings → Bank Sync screen after the first login, not during deployment.

Deploy Actual Budget in about 3 minutes

Choose a server — we do the rest: install, configure and send you the credentials.