Math in any amount field, plus regions and currencies
Type 20+15 in a budget category and the app does the math. If you're outside the US, you can now pick your country at sign-up and the whole app speaks your currency. Bank sync (Plaid) stays US-only for now while we work through country approvals; manual mode works anywhere.
iOS
Math in any amount field. Type 20+15 or 12.50*3 and the result evaluates when you tap away. Works for transactions, budget edits, and credit card payoff.
Pick your country at sign-up and the whole app speaks your currency. Change region later in Settings.
Add and Edit transactions are now the same form. The category you pick sets the direction, so Transfer is a category, not a separate flow. $0 transactions are allowed.
New Profile section in Settings with Name, Email, and Region. The dashboard greets you by name.
Net worth value no longer stalls during background sync.
Web
Math in any amount field, including budget editing and credit card payoff.
Same region picker as iOS, at sign-up and in Settings.
Add and Edit forms are now the same shape, with category-driven direction. $0 transactions allowed. Date input uses a calendar picker. Amount field auto-formats with thousands separators.
Sign-in loader simplified to two clear stages, and hidden amounts no longer flash during load.
Accessibility and polish: better keyboard navigation, a few hover details, and modals now center on desktop instead of anchoring to the bottom.
The big one. Basis Budget is now on the web at basisbudget.com/app, and the same account works on both platforms. Sign in on the web with the same account you use on iPhone and your data syncs both ways.
Web app
Open Basis Budget in any browser at basisbudget.com/app. Onboarding, Plaid linking, both budgeting modes, pending transaction handling, net worth tracking, and Settings all work on the web.
On-device encryption works the same way it does on iOS. Your transactions are encrypted in your browser before they leave. Our servers see ciphertext.
Apple Wallet imports stay iOS-only since the API is iOS-only. Bank accounts you've already linked on iOS show up on the web automatically.
iOS polish
Bank logos now show up in Manage Banks for institutions Plaid has them for. Banks without a logo get a clean monogram fallback.
Net worth chart fills the full reporting period correctly when you only have one snapshot to plot from.
Account number masking toggle on the Dashboard now persists across sessions and syncs to your other devices.
Sign in with email if Apple Sign-In isn't your preference. Behind the scenes, the subscription model is simpler now: one tier, all features. Existing manual users keep their access — nothing to do on your end.
Sign-in
Email sign-in is now offered alongside Sign in with Apple. Type your email, get a 6-digit code, paste it in. Useful if you want a sign-in method that'll work later when web access ships.
Subscription
Single subscription, $4.99/month with a 1-month free trial. Manual transaction entry, bank sync via Plaid, and Apple Wallet integration are all included.
If you signed up before this release as a manual-mode user, your account is marked as an early supporter and you keep free access to manual tracking. You'll see "Free (early supporter)" on the Settings subscription row.
After cancellation, the app stays open in read-only mode — you can browse and edit existing records, but adding new transactions or accounts requires an active subscription. Your data is never deleted.
Cleanup
The App Mode picker is gone from Settings. Accounts now declare their own type (manual or bank-linked) on a per-account basis, so the global mode toggle stopped earning its keep.
Adding an account goes through a single picker that shows both bank-link and manual options together.
Reports in zero-based mode use the full envelope as the spending denominator now, so categories with rollover budgets read correctly even when nothing was assigned this month.
This release focuses on keeping your devices in sync. Deletes now propagate correctly between iPhone and iPad, background refresh keeps both devices up to date even when you're not in the app, and writes are durably queued when you're on a flaky network. Plus a manual escape hatch for stuck pending charges and a delete-crash fix.
Cross-device sync
Deletes between your iPhone and iPad now propagate reliably. If you delete a category, transaction, or account on one device, it stays gone on the other instead of resurrecting on the next sync.
Signing out and back in no longer brings back things you deleted. Previously, deletes that hadn't fully synced to the server could resurrect on sign-in.
Background refresh now pulls cross-device changes down, not just pushes local ones up. Both devices stay current even when you're not actively in the app.
Writes are durably queued. If you delete something while offline or your network drops mid-operation, the change persists locally and pushes automatically when you're back online. Previously a network hiccup mid-delete could leave the change stuck.
Stuck pendings
New "Mark as Dropped" option in the category picker for connected-mode users. When your bank releases a pending charge but the charge never posts, you can manually clear it to free up your envelope balance. Use only when you're sure the bank has dropped it. If the charge later posts, it'll come back as uncategorized.
Fixes
Fixed a rare crash that could happen when deleting an account or transaction from its detail view.
After months of TestFlight, Basis Budget is publicly available. Private-by-default budgeting with real bank sync, two budgeting modes, and on-device encryption that keeps your transactions yours.
Connect your accounts
Plaid for automatic transaction imports, balance updates, and smart categorization across banks, credit cards, and brokerage accounts.
Apple Wallet for direct imports from Apple Card, Apple Cash, and Apple Savings.
Or go fully manual if you'd rather not connect anything — every feature works without sync.
Two budgeting modes
Zero-Based: every dollar gets a job. Real Left-to-Assign math, configurable reset dates, roll-over categories, and an anchor that stays continuous even when pendings post after the reset.
Spending Limits: category caps with per-month rollover or rollunder — guardrails without the envelope ritual.
Private by default
Transactions, accounts, and budgets are encrypted on your device before they leave. Our servers hold ciphertext, not your transactions in the clear.
Full audit log you can export any time to see exactly what the app did and when.
Delete Account removes everything — app data, cloud records, bank connections, auth record — in one confirmation.
Help & guide
In-app link to a nine-chapter guide on basisbudget.com covering first-run setup, both budgeting modes, splits, restoring on a new iPhone, and what does and doesn't get encrypted.
A real help guide, better sync errors, and fewer stuck pendings
A big one. A new Help guide on basisbudget.com covers everything from first-run setup to deep dives on each budgeting mode, with a link straight from Settings. Bank reauth requirements now stay visible until you fix them, stuck pending transactions clean themselves up, and a handful of onboarding and budget improvements.
Help guide
New Help guide on basisbudget.com with nine chapters: Getting started, Your accounts, Budgeting modes, Zero-Based, Spending Limits, Using the app, Privacy & security, Your subscription, and Troubleshooting. Covers the stuff that's hard to figure out from the app alone, like anchor resets, review flow, splits, restoring on a new iPhone, and what actually gets encrypted.
Settings now links directly to the guide, so you can jump to the chapter you need without leaving the app flow.
Sync errors
When a bank needs you to re-sign in, the Sync Issue banner now stays visible in Settings and the bank's row in Manage Banks shows a Reconnect button. Previously this only appeared once and then disappeared, leaving no in-app way to fix it.
Apple Wallet auth issues now surface in the same Sync Issue banner, so both kinds of reconnect needs show up in one place.
Plaid and Apple Wallet sync errors no longer overwrite each other. Each source keeps its own line in the banner.
Pending transactions
Duplicate "pending + posted" pairs left behind from past sync edge cases now clean themselves up on the next sync, so your Pending list matches what's actually still pending at your bank.
Onboarding and navigation
Welcome and sign-in are now a single step instead of two.
Apple Wallet accounts you've already linked show up during the Bank step alongside Plaid banks.
Added a Sign Out button in Settings.
Tapping an account in Manage Banks now opens the full account detail view.
If the initial bank check fails during onboarding, you get a retry button and a Cancel option instead of a silent hang.
Budget
Left to Assign no longer inflates when pendings from before a Zero-Based reset date finally post. The anchor shifts automatically so the math stays continuous.
Added a Left to Assign breakdown sheet so you can see exactly how the number is derived.
Renamed the small drift caption from "adjusting" to "reconciling" so it's clearer what the app is doing.
Under the hood
Audit log and diagnostic exports now distinguish which source (Plaid vs Apple Wallet) each sync event came from, which makes troubleshooting much faster.
Loan accounts are now supported in the connected-mode account picker.
Account deletion now also removes your Supabase auth record, closing the loop on full data removal.
Consolidated sync cooldowns so pull-to-refresh behaves the same way across Dashboard, Transactions, and Manage Banks.
Added a server-side cleanup job that disconnects Plaid items for lapsed subscribers after the grace period ends, so no bank data keeps syncing after cancellation.
Smarter categorization and a real Restore Defaults
A focused release on category handling and sync reliability. Auto-categorization now uses your bank's own categories as a fallback, Restore Defaults actually restores everything including your groups, and a handful of quieter, more reliable sync improvements.
Categorization
Auto-categorization now uses your bank's own category on a transaction when Basis can't match it to one of your categories itself. Uncategorize a transaction and let it re-run — you'll usually get a better guess.
Fixed a missing space in the MTA keyword that kept transit charges from matching Transportation.
Restore Defaults
Restore Defaults in Category Management now also re-seeds your default groups (Bills, Needs, Wants, Savings & Goals) so the restored state matches what you started with on day one.
Transactions and payee rules pointing at a renamed user category now stay attached to a matching new default — e.g. if you renamed Groceries and later hit Restore Defaults, your Groceries transactions stick instead of all going uncategorized.
Sync
Restores with a lot of history no longer cut off at 500 records. Everything comes back.
Plaid syncs no longer re-push transactions that haven't actually changed, so syncs are quieter and don't flash a progress overlay when nothing moved.
Apple Card and Apple Cash now show the most recent balance Apple has, instead of occasionally showing the oldest balance from when the account was first connected.
Under the hood
Strengthened cloud vault handling — a transient read error can no longer cause the app to treat you as a new user and generate a fresh encryption key.
Subscription purchases now carry your account ID forward, which paves the way for better renewal and refund handling down the road.