Actualist

Beta · iOS 26 · GPLv3

Actualist

A native, local-first iPhone client for Actual Budget.

It connects to a normal Actual sync server, imports the budget into SQLite on the phone, and reads from that copy. Offline edits sit in an outbox until the server is reachable again. Companion to Actual — not a second backend, and not a webview.

Join the TestFlight Source on GitHub

The TestFlight build can open a bundled demo budget if you don’t have a server yet.

Screenshots use randomized display values.


Your server, not ours

Actualist talks to the Actual sync server you already run. There is no Actualist cloud, no analytics SDK, and no developer-operated backend. After the first import, the app opens the local copy first, then syncs Actual CRDT messages in the background.

Encrypted budgets unlock on the phone. Sync tokens and keys stay in the iOS Keychain. Budget files live in the app’s private container and are kept out of iPhone and iCloud backups on purpose — the server is the copy that matters once an upload has finished.


On the phone

Budget
Monthly category groups, assigned and available amounts, To Budget, uncategorized transactions, and overspent alerts. Assign money, move it, and roll categories over from the phone.
Spending
A feed across accounts, plus searchable history on each one. Create, edit, delete, categorize, split, and transfer.
Accounts
On-budget, off-budget, and closed, with the order you set on this device.
Reports
Net worth, cash flow, month-to-month, spending averages, and activity. Native charts, not a wrapped website.
Rules & payees
Common Actual payee-rule conditions and field-setting actions stay in sync with the server. Unsupported rule shapes stay visible and read-only so their JSON is never rewritten.
The rest of the device
Density and themes (including Actual Purple), a privacy cover, background refresh, Shortcuts, and Siri. HTTPS is preferred; local HTTP is allowed only on trusted networks, with a warning first.

What it doesn’t do

  • It does not trigger bank-provider imports. Transactions the server or another Actual client already pulled in will arrive through normal sync.
  • Account reconciliation is not in yet, and account lifecycle beyond adding an account is still incomplete.
  • Budget templates exist as an opt-in experiment. They can change many assignments at once — back up first.
  • Actualist is an independent community project. It is not affiliated with or endorsed by Actual Budget.

What you need

  • An iPhone on iOS 26 or later
  • A running Actual Budget server with at least one budget already uploaded for sync — unless you’re only opening the demo
  • The server password, and the budget encryption password if you use one
  • A network path to that server. If it only lives on a VPN or Tailscale, join that network on the phone first