Skip to main content

Upcoming Release

info

These changes have been merged but are not yet part of a stable release. They ship in the nightly builds — try them via the nightly Docker image tag, or the hosted demo at nightly.actualbudget.org. For changes in stable releases, see the Release Notes.

Features

  • #8771 Add the Palenight theme to the custom theme catalog — thanks mafsi
  • #8764 Add backend support for grouping accounts into custom account groups — thanks matt-fidd
  • #8656 Add an initial in-app tour to guide first-time users in getting started — thanks matt-fidd
  • #8551 Add experimental Monte Carlo analysis report that estimates how long your savings will last in retirement — thanks MikesGlitch
  • #8752 Rename a tag from the Tags page, updating the hashtag in every transaction note that uses it — thanks tim-smart
  • #8441 Add Group column to the transaction list to show which category group each transaction belongs to — thanks ngoc-minh-do

Enhancements

  • #8740 Allow rules to match transactions by cleared status — thanks matt-fidd
  • #8705 Add autocomplete and help text for loan and investment formula functions like IPMT, PPMT, NPER, and XNPV — thanks youngcw
  • #8716 Add Macedonian Denar (MKD) to the list of available currencies. — thanks Thelosophy
  • #8773 Add the Peruvian Sol to the list of available currencies — thanks davidlitmanowicz
  • #8607 Add Current Quarter and Previous Quarter presets to report date ranges — thanks ildyria
  • #8638 Add Uruguayan Peso (UYU) to the list of available currencies. — thanks diecoscai
  • #8722 Allow selecting future months in the Budget Analysis report date range, so you can plan ahead. — thanks tabedzki
  • #8710 Add a payeeNameNormalization option to the API's importTransactions, so payee names can be kept as supplied instead of always being title-cased. — thanks haimgel
  • #8591 Allow the BALANCE_OF function to be used in formula reports — thanks youngcw
  • #8588 Replace the "Convert to Schedule" prompt for future-dated transactions with a new "Schedule" button, which asks for confirmation only when the scheduled date falls beyond your upcoming length setting. You can also press Ctrl+Shift+Enter (Cmd+Shift+Enter on macOS) in the new transaction row to create a schedule. — thanks CalebBurton
  • #8559 ILS currency added — thanks mbrevda
  • #8641 Add yearly contributions to the Monte Carlo analysis report — thanks MikesGlitch
  • #8667 Ask the browser to protect local budget data from being automatically deleted when disk space runs low — thanks MatissJanis
  • #8385 Drag-and-drop reordering for upcoming scheduled transactions. — thanks StephenBrown2
  • #8583 Fit the summary report on narrow screens — thanks zannis
  • #8580 Add a column manager to the transaction table for showing, hiding, and reordering columns — thanks MatissJanis
  • #8645 Payment, Deposit, and Balance columns in the account register now widen automatically to fit the longest amount — thanks StephenBrown2
  • #8454 Add an opt-in checkbox under the date picker for transfer transactions to also update the date of the other side of the transfer — thanks StephenBrown2
  • #8759 Notes which are long enough to be truncated in the transaction table can now be hovered over to show a tooltip with the full contents of the note. — thanks DavidGrinberg

Bugfixes

  • #8523 Fix crossover reports showing an infinite loading spinner when the budget has no accounts — thanks MeGaurav4
  • #8689 Fix the Rule API default stage handling. — thanks cakeni
  • #8738 GoCardless: use the merchant from the transaction description as the payee for Alior Bank card payments, instead of the account holder — thanks marad
  • #8603 Report an error when changing the password on an instance with no password auth method configured, instead of reporting success without saving. — thanks Gautamstar
  • #8719 Remove duplicate payees from rules after merging payees — thanks SomSamantray
  • #8733 Fix an issue where an entered amount reset to zero when the Cleared icon was clicked while the amount field was focused. — thanks ParaPsychic
  • #8625 Bank sync: show the correct bank name when two accounts at the same bank are connected through separate logins — thanks junyuanz1
  • #8750 Fix bank sync setting an opening balance of 0 when a custom starting date is chosen without a custom starting balance — thanks Islinger19
  • #8765 Fix the misformatted date picker when bulk editing transaction dates — thanks zannis
  • #8668 Fix the Butterfly custom theme being listed as dark instead of light — thanks youngcw
  • #8570 Fix category autocomplete keyboard selection to match the highlighted item — thanks harshmathurx
  • #8587 Rules and filters using "category group" as a condition now correctly match live transactions during import and manual entry. — thanks ReticentEclectic
  • #8749 Skip overspent categories when a named cleanup pool collects leftover funds, instead of moving their negative balance onto the other categories in the pool — thanks Islinger19
  • #8521 Allow custom reports to be created in budgets without transactions — thanks mestredosmagos314
  • #8676 Fix the formula card on the reports dashboard flickering between its value and a loading placeholder — thanks youngcw
  • #8609 Show the schedule name in place of notes for upcoming scheduled transactions with no notes on mobile — thanks youngcw
  • #8732 Fix the Monte Carlo analysis explanation incorrectly saying fees and taxes are ignored by the simulation — thanks MikesGlitch
  • #8658 Show a deposit-appropriate payee placeholder on the mobile transaction entry form when the amount is an inflow — thanks KesleyDavid
  • #8756 Fix a phantom overspent amount appearing after deleting a category that had money moved out of it — thanks youngcw
  • #8726 Default new transaction amount filters to a positive value — thanks JerryNee
  • #8624 Show the payee on upcoming/preview schedule rows that split into multiple categories instead of nothing — thanks youngcw
  • #8699 Show upcoming split transfers as deposits in their destination accounts — thanks JerryNee
  • #8568 Show a clearer error when SimpleFIN can't be reached while linking accounts, instead of wrongly reporting the token as invalid — thanks matt-fidd
  • #8648 Return to login when a saved server session is no longer valid — thanks rezanmz
  • #8718 Fix the "Update now" button getting stuck doing nothing, and show useful details instead of "[object Object]" on the startup error screen — thanks MatissJanis
  • #8709 Fix the Monte Carlo analysis configuration tabs and contributions table overflowing on small screens — thanks MikesGlitch
  • #8602 Allow searching for 'Transfer: ' prefix on payees page — thanks jfdoming

Maintenance

  • #8597 Update PikaPods deployment cost in README — thanks MAkcanca
  • #8611 Add GitHub action that sends a Discord notification when a new tag is pushed or a release is published — thanks MatissJanis
  • #8653 Add design context files (PRODUCT.md and DESIGN.md) and hook wiring for the impeccable AI design skill — thanks MatissJanis
  • #8651 Fix agent hook scripts to show a clear, actionable error when jq is missing instead of a misleading parse error or a silent skip — thanks MatissJanis
  • #8678 Omit empty WHERE clauses from AQL instead of emitting a tautology placeholder — thanks MatissJanis
  • #8753 Compare pull request bundle sizes against the exact base commit — thanks tim-smart
  • #8573 Wrap the mobile accounts list and category transactions pages in scoped error boundaries, so rendering errors show a recoverable fallback instead of crashing the whole app. — thanks russlan23
  • #8677 Upsize Docker build runners — thanks matt-fidd
  • #8770 Fix the desktop VRT update workflow failing to build native modules against Electron 43 — thanks MikesGlitch
  • #8572 Fix feature request workflows by using the feature type — thanks youngcw
  • #8599 Migrate the sync-server health-check script to TypeScript — thanks anjupathak03
  • #8711 Add agent hooks that block AI agents from creating GitHub issues — thanks MatissJanis
  • #8650 Run React Compiler on .js/.ts files (e.g. hooks) in addition to .jsx/.tsx — thanks MatissJanis
  • #8684 Remove the agentic stop-hook (turn-end typecheck + test) from all agent platforms — thanks MatissJanis
  • #8539 Decrease time after which a PR is considered stale — thanks matt-fidd
  • #8553 Migrate packages/sync-server/src/util/title to TypeScript — thanks shahidsarker
  • #8769 Upgrade the desktop Electron runtime from 41 to 43 — thanks MikesGlitch
  • #8604 [BREAKING CHANGE] Update release artifacts to use Node.js 24 by default and drop Ubuntu image support for 32-bit ARM devices — thanks jfdoming
  • #8657 Update vrt-update comment to reflect a more realistic time — thanks matt-fidd