Actual Changelog

What's new in Actual 0.0.147

Mar 12, 2022
  • The biggest feature in this release is the ability to make transfers in individual split transactions. See Transfers in split transactions walkthrough for a walkthrough.
  • We’ve also fixed some annoying bugs! Transfers in scheduled transactions now work, some issues with blank payees have been fixed, and other things. See the list below for the full list.

New in Actual 0.0.146 (Feb 25, 2022)

  • Fixed:
  • Can’t batch edit the date field
  • Transactions remain selected after they get removed from current view
  • Split transactions should be exported with parent transaction’s payee
  • Cannot Access Budget Settings if Title is Too Long
  • Importing from YNAB:
  • In version 0.0.146 we integrated direct support from importing from YNAB (also known as nYNAB, YNAB5, or YNAB web version).

New in Actual 0.0.145 (Dec 10, 2021)

  • FEATURE Allow exporting transactions when looking at transactions for a category month (click on the "spent" column in the budget)
  • BUG Fix a crash when doing a shift+click selection that spans both posted and scheduled transactions
  • BUG Fix creating a rule based on the amount field. Previously nothing would happen when selecting that field, and now it works!
  • BUG Posting a schedule with an approximate amount now works instead of crashing. Previously you would see a crash if posting manually, and the automatic service would silently fail in the background
  • BUG Fix a bug where the budget values were sometimes wrong when deleting a category or category group and transferring money to a different category. This flow also now works with undo. Previously, the budget values were cached incorrectly (so a "reset budget cache" would fix it) but now it should always work!
  • BUG Fix an issue where it looked like the budget was blank after doing a YNAB import. Now it correctly calculates the entire spreadsheets after importing. This fix also improves the performance of importing.
  • TWEAK Improve the name of the exported CSV file
  • TWEAK When a transfer transaction is automatically created, it now defaults to uncleared instead of cleared
  • TWEAK The importTransactions API function has been improved. Previously if a transaction matched an existing one, it wouldn't update the notes field. Now if you provide notes it will always update it. Additionally, the cleared flag was being ignored and it was always true; now it defaults to true but if you provide a cleared value it will respect it.
  • TWEAK The settings page hides certain fields that don't make sense for the platform. For example you cannot change the location of files on the web version.

New in Actual 0.0.144 (Nov 12, 2021)

  • BUG: Fix a critical syncing bug that a recent released introduced in 0.0.141. If you've seen partial syncs, that should never happen again!
  • BUG: Also fix a few frontend caching issues which makes the budget numbers more robust
  • BUG: Improve entering amounts. If your system keyboard is set to a different number format than Actual, you will be shown a number input with a decimal separator like "." while Actual expects ",". Previously this made it impossible enter amounts, but now it will work regardless!

New in Actual 0.0.143 (Nov 5, 2021)

  • BUG Fix:
  • YNAB4 importing again! Previously it was erroring if you had any carryover / rollover flags. This also fixes issues if you select a custom location of a YNAB4 file to import.

New in Actual 0.0.142 (Nov 4, 2021)

  • TWEAK:
  • Using the "3 month average" budget action now bases the amounts on spent amounts instead of budgeted for the last 3 months
  • Improve demo budget. It generates more real-world data
  • BUG:
  • Fix creating a new synced file. This was a regression from the last version, sorry about that! You should no longer see "This is not a cloud file" or any errors when setting up syncing
  • Fix a syncing issue that could cause stale budget data! Most of these have been rooted out, but luckily the recent influx of new users has stress-tested syncing and found one edge case where the total amounts for category groups would be wrong. This has been fixed. Note: you can always fix any issues with budget data by going into Settings > Advanced and clicking "Reset budget cache". Hopefully you should never have to do that
  • Fix importing files! This was also a regression from the big caching changes from last release. All YNAB4 and other importers should work now
  • MOBILE Fix the "create account" button that is shown when there are no existing accounts
  • Improve reliability when quickly opening and closing files. Previously sometimes you would see an error after closing a file

New in Actual 0.0.141 (Oct 18, 2021)

  • FEATURE:
  • Revamped navigation in the mobile app! This fixes a lot of issues such as layout of the app being slightly wrong on various devices, especially Android. Navigating between views should feel a lot smoother and various UX issues are fixed. All navigation now uses native components.
  • FEATURE:
  • While technically not a new feature, the way caching works has been completely revamped. This required major restructuring of some of the oldest part of the database. This makes it a lot easier to add new features to the app, reduces the size of the main database file, and fixes some longstanding issues with budget values being wrong in rare cases. Once you upgrade one client, all clients need to be upgraded for syncing to continue working.
  • The desktop app now stores all cached values in a separate database file called cache.sqlite, which sits right beside db.sqlite. Other platforms still store the cache in the main database, but is a separate table.
  • TWEAK:
  • Various internal things like how errors are track have been improved.

New in Actual 0.0.140 (Oct 2, 2021)

  • BUG DESKTOP The desktop app got hit by the expiration of LetsEncrypt's root certificate. This made the app unable to contact the syncing server and would appear "offline". All other platforms (iOS/Android/web) continued to work.
  • This bug effected all Electron apps that makes requests to servers from a backend process (doing it from a the UI process worked fine). Yesterday Electron landed a fix and this version updates Electron to include it. The app should be able to sync again.
  • The core issue is that certificates issued by LetsEncrypt are still cross-signed by the expired root cert for various reasons. The SSL implementation should always choose the valid root cert to check, but a quirk in Electron's SSL implementation was making it still choose the expired root cert.
  • TWEAK We've improved a couple things about how we report errors to make them more accurate.

New in Actual 0.0.139 (Aug 25, 2021)

  • BUG: Fix a bug from the latest version that caused a startup crash. The app should load now, sorry about that!

New in Actual 0.0.138 (Aug 25, 2021)

  • BUG Fix importing OFX files on the web version
  • TWEAK This release some basic tracking. We still fully respect your privacy, and this data will be a huge help for future feature development and improving Actual. Read this blog post which fully explains how tracking works and what is being tracked. Summary: we never log anything from your data, but general app usage, and you can always opt-out.

New in Actual 0.0.137 (Aug 20, 2021)

  • This is a small update that fixes the "reset sync" feature in settings which broke in 0.0.136. Thank you!

New in Actual 0.0.136 (Aug 20, 2021)

  • FEATURE: This version greatly increases the reliability of the web version. It has a totally new storage layer, keeping your data local in a much more robust way. While we're not there yet, this is the first critical step in making the web a first-class platform for Actual.
  • BUG: Fixed a bug which causes certain accounts balances to be wrong. This would happen after deleting split transactions and then doing a "reset sync". Everything should be accurate now.
  • BUG: If you only have a few transactions in the system and they all exist in the future, the budget view would only allow you to see those future months. It now always produces the right range of budget months.
  • BUG: The split transaction animation when expanding/collapsing splits wasn't working, and it has now been fixed.

New in Actual 0.0.135 (Jun 15, 2021)

  • BUG: The "reconcile" button to start reconciling an account now works again.
  • BUG: Clicking on the account balance to expand it and show other various balances now works again.
  • BUG: Your number format is now respected in an amount condition, which is used in the rule editor and account filters. Previously it only worked with a decimal (8.00) but now you can use the format you expect (chosen in settings).
  • BUG: The "uncategorized transactions" view is fixed. There was a regression in recent releases that broke it.
  • BUG: Changing where your data is stored in settings now works again. A recent Electron update broke the UI.
  • TWEAK: Resetting sync now removes a lot of dead data and compacts the database. This will significantly reduce the size of your database if it has a lot of syncing data built up.

New in Actual 0.0.134 (Jun 10, 2021)

  • TWEAK: If adding transactions through addTransactions API, the capitalization of the payee name will be respected and no longer be title-cased.
  • TWEAK: When a schedule posts a transaction, it will now default to uncleared (no green checkmark). This was the intended behavior, allowed you to reconcile with your bank and manually clearing it.
  • TWEAK: Deleting an account (not closing) now properly deletes the associated transfer payee as well. If you have deleted accounts before (clicking "force close" in the close account modal), you will have some leftover payees that you can't delete because they are considered transfer payees. In the future we will clean those up automatically.
  • BUG: Fix problem where the autocomplete dropdowns wouldn't show in the transaction table if the row was too close to the bottom of the window. Now they will show above the input (this was a regression from a few versions ago).
  • BUG: On certain linux distros, the past few versions of Actual (since 0.0.132) would crash on startup. This was due to an upgrade of a native dependency that was buggy, and we upgraded it to a version that fixed the issue. Actual should no longer crash on linux.

New in Actual 0.0.133 (Jun 9, 2021)

  • FEATURE: Scheduled transactions! Track your bills, subscriptions and more with this powerful feature. Actual will scan all of your existing data and try to find recurring transactions and automatically setup schedules for you (click "Find schedules" in the notification that appears, or go to "Tools > Find schedules" any time)
  • FEATURE: Rule conditions for amounts now support "approximate" and "between" operators for matching a range of numbers
  • FEATURE: Rule conditions for dates support recurring dates. This is mainly used for the new scheduled transactions feature, but is available for any rule
  • TWEAK: The animations in a table when rows change position has been greatly improved. It's now a lot more consistent.
  • BUG: Fixed a bug where splitting a transaction sometimes showed a duplicate split transaction
  • BUG: The "For budget" and "off budget" items in the sidebar were hard to click. Not all of the text was clickable, and this has been fixed

New in Actual 0.0.132 (Apr 14, 2021)

  • FEATURE:
  • Actual will now automatically sync when the app gets focused.
  • BUG:
  • If the running balance gets too large (over 100,000), previously the value was truncated. We've widened that column ever so slightly to avoid this.
  • BUG Fix:
  • closed accounts not sorting correctly.
  • BUG:
  • When exporting transactions, all transactions will be exported. In a recent release we accidentally made it so only the transactions loaded in the UI were exported.
  • TWEAK:
  • In a recent version we accidentally introduced a performance regression in the transaction table. This has been fixed, and when combined with the new M1 native build, the perf different will blow your mind :)

New in Actual 0.0.131 (Mar 31, 2021)

  • TWEAK: After merging payees, the final payee is no longer selected. This caused confusion and made it easy to accidentally merge that payee in with others, not realizing it was selected. Thanks again to Luke Herrington for implementing this.
  • FEATURE: Account reordering! You can finally drag accounts in the sidebar to reorder them. You can't drag them across different types of accounts yet to move them on and off budget, but that will come in the future.
  • FEATURE: Collapsable split transactions Split transactions are now collapsed by default, and you can expand a transaction to view the splits by clicking the "Split" button. Or you can expand them all by default with the expand icon in the account header. It will remember this setting across sessions, so you can get the old behavior back by simply expanding all by default.
  • FEATURE: New budget action: hold all for future months Sometimes your budget changes a few months back, throwing off your nicely zeroed out months. Previously you had to go through and press "hold for next month" for each month to zero all your budgets again. Now you can use "hold for all future months" in the "To Budget" menu to tuck away that money in the buffer for that month and all months in the future. Thanks to Luke Herrington for implementing this!
  • BUG Fix: a few bugs with the transactions table introduced in recent versions. Sometimes if you scrolled way down and scrolled back up, you would appear to lose some changes. You didn't actually lose any changes, but the UI would revert to older data. This has been fixed and all data should appear correct.
  • BUG Fix: the bulk editing action for the account and payee fields. This broke in a recent update, and now when setting the account and payee by selecting transactions and doing a bulk edit, it works again.

New in Actual 0.0.130 (Mar 4, 2021)

  • BUG: Fix the payee column when importing a file. In the last version there was a regression that didn't show the imported payee name, but it should work now!
  • BUG: Never create blank payees (payees that only contain whitespace). This should improve confusing situations where importing a file created payees that only contained spaces. Now those transactions won't have payees.
  • BUG: Ctrl+f now works on Windows and Linux to focus on the search bar on the account screen (before only cmd+f worked on macOS, now it works on all platforms)
  • BUG: API Fix getTransactions method to only return transactions for specified account
  • BUG: API Errors from ActualQL are now properly displayed in the API. Previously the error message was blank due to a bug.
  • BUG MOBILE: The "try demo" link on mobile has been fixed on the signup and login screens
  • A minor improvement: an additional check has been added to the schema to never show split transactions that don't have a "parent" transaction. This makes it more stable just in case something goes wrong with your data.

New in Actual 0.0.129 (Mar 1, 2021)

  • FEATURE: Transaction filtering! This is the first big feature to take advantage of the new query system. Use filters to dig through your data with conditions on specific fields. You can filter on any field, and use several operators on them similar to how rules work. Filter by a category on a specific month, all transactions within a date range, and more. The design of the account screen has been updated for this feature.
  • FEATURE: The balance of all selected transactions is now shown beside the account balance.
  • FEATURE: Integrate new keyboard handling library for improved shortcuts. Now you can press cmd/ctrl+f from anywhere in the account screen to focus the search bar, in addition to all other existing shortcuts.
  • FEATURE: When using the search bar to filter transactions, transactions are faded out if they don't match but appear anyway. This happens with split transactions; all of the transactions that make up the split are returned even if only one of them matched.
  • FEATURE: The behavior of automatically creating categorization rules has been tweaked. Previously, whenever you categorized a transaction, it would create a rule to remember that category for next time (if it didn't already exist). It would do this the first time you used a category for a new payee. This was a bit too aggressive, causing confusing and incorrect categorization often. Now, Actual will wait until you use the same category for a payee at least 3 times in a similar timeframe to create the rule. This should make automatic categorization more accurate.
  • FEATURE: ActualQL is the new query system, now available in the API! Go read about ActualQL in the docs about how to use it. In the future, various pieces of it will also be exposed within the app itself.
  • FEATURE MOBILE: The transactions list on the mobile app now implements infinite scrolling. It will load more transactions automatically as you scroll.
  • BUG: Fix bug where sometimes the transaction list would randomly scroll after applying a bulk edit and closing the modal (ok, it's not random, it was focusing the first selected transaction but it made it feel very jarring).
  • BUG: Clicking on "spent" amount always shows the right transactions now.
  • BUG: Fix bug where starting reconciliation with an amount of 0 would not work.
  • BUG: Fix bug where the payee autocomplete would appear over an opened model sometimes.
  • BUG: Fix a rare problem when loading rules that would make the app crash on startup.
  • API: There are a few breaking API changes. You will need to update your scripts. The following fields of the transaction object have been renamed -
  • account_id -> account
  • payee_id -> payee
  • payee -> payee_name
  • category_id -> category
  • The documentation for Transaction has been updated.
  • Additionally, cleared is a now returned from the API. filterTransactions is deprecated, instead you should use ActualQL (see above).
  • API: Split transactions are now updated from API. If you change the amount of a subtransaction, in the app it will now tell you if the amounts sum up correctly or not, just like it would if you updated it in the app.

New in Actual 0.0.128 (Jan 21, 2021)

  • BUG: If you added a transaction without a payee, but it has a category, it would set that category as the one to set on certain rules that categorized payees. That means you'd see wrong categories being automatically set for certain payees. This has now been fixed!
  • FEATURE: The date input now remembers the last date entered when adding a transaction.
  • Recently a lot of work has been done on revamping how data is queried in Actual which will make it much easier to iterate on features, as well as forming the basis for custom reports. It's very exciting to see this work come together and it will bring Actual to a new level. Expect a lot more updates soon!

New in Actual 0.0.127 (Dec 12, 2020)

  • This release focuses on reliability of the budget. A few edge cases have been found which affect the budget, and while these are rare edge cases, you should never have to worry about the budget being wrong. Reliability and robustness is always #1 priority. This release changes the transaction import process quite a bit, so let us know if you have any problems with that.
  • Bugs fixed:
  • When clicking on the "spent" amount in the budget to view transactions for that month's category, it wasn't showing transactions from closed accounts. This made you think the budget was wrong, but it wasn't showing all the transactions it takes into account. Now it shows transactions from closed accounts.
  • Discovered a critical bug that could make budget values out-of-date. If you categorize a transaction, and then split the transaction and categorize the split transactions with different categories, the original transaction's category will be wrong in the budget. What should happen is the original transaction should be removed from category it uses when split, and only the split transactions should affect the budget. This is now what happens!
  • The issue is an out-of-date cached value for the category's budget. If you used that category again, it would recalculate to the correct value. If you suspect any problems with your budget, you can always go to Settings > Advanced > Reset budget cache to recalculate the entire budget.
  • The transaction import process has been refactored again and fixes a few problems. Reconciliation/deduping of transactions should be improved. Previously it wasn't deduping transactions if the payee was different. Let us know if it doesn't dedupe transactions like you expect.
  • Importing transactions should now always use the payee that you expect after running rules. There were a few edge cases here where sometimes it would not end up with the correct payee. Additionally, even if it uses the correct payee, previously sometimes it would internally create other payees while processing the rules. Now it will always only create one payee at the end (if it doesn't already exist)

New in Actual 0.0.126 (Nov 25, 2020)

  • BUG: Fix a crash that happened if importing a CSV/QIF file with transactions with no payees
  • BUG: Fixed a bug where a rule with a condition that matched on payee wouldn't always run. It's hard to explain why this happened, so take my word for it: if you've seen problems with rules not being run when matching payees, it should run now. :)
  • BUG: Fix a problem where sometimes the autocomplete opens when it shouldn't
  • FEATURE: While it should never happen, in the event of a bug the budget values may be wrong. The issue is the values are cached for performance reasons, and if a bug in the caching layer happens, you might see out-of-date budget values. I've never seen this happen on the desktop app, but the web version is experiencing an issue where it happens rarely. I'm currently working hard to track this down - I take it very seriously. Until then, a "reset budget cache" option as been added under the "Advanced" section in Settings. This will recalculate your entire budget and ensure the cache is up-to-date. Try this if you think you are seeing wrong values.

New in Actual 0.0.124 (Nov 20, 2020)

  • Important: Custom rules is a big feature in this release and deprecates the old payee rules. Unfortunately, if you want to migrate over your payee rules, you need to do a sync reset. Actual will prompt you about this. The sync reset requires all other devices to be "reverted". For example, on desktop if you migrate data & sync reset from the prompt, you will see these prompts on your mobile app. Select "revert" to use the upgraded version.
  • FEATURE: Custom rules! You can now create custom rules to process transactions, and the entire transaction importing flow has been rebuilt on top of it. Actual will also automatically create payee renaming and categorization rules for you based on previous behavior. I highly recommended reading the new doc page about rules for more info!
  • FEATURE: Transaction reconciling & deduping has been tweaked so that it won't match transactions as eagerly. Previously it would sometimes dedupe transactions when it shouldn't. Let us know what you think of the new behavior.
  • BUG: On the accounts screen when viewing filtered transactions, clicking the select field in the header will unselect/select the current list of transactions instead of all transactions in the account.
  • BUG: Doing a sync reset sometimes failed. Now it should work.
  • BUG: When importing a QIF file, the dates are now correctly formatted in the list of transactions
  • BUG:
  • Closed accounts are now never shown in the transfers list
  • Internally, the transactions table has been revamped. It now uses the same code as all other tables (it was a special snowflake before) which will make it easier to extend in the future.

New in Actual 0.0.123 (Sep 28, 2020)

  • BUG:
  • Fix renaming accounts. This was a regression in the last release, sorry!
  • Fix importing YNAB4 files. This was also a regression, and it should work now!
  • Fix a bug when using encrypted files where logging out and back in made it looked like syncing failed. What really happened is your encryption key was removed when you logged out, so you need to recreate it. This led to a couple improvements with the workflow when encrypting fails.
  • Fix a problem where a user couldn't load the app if their trial ended and they didn't have any existing files.

New in Actual 0.0.122 (Sep 12, 2020)

  • FEATURE Revamp the demo budget and make it available on all platforms (when logged out, click "Try demo" to get a fully populated file)
  • BUG DESKTOP Improve performance when scrolling the transaction list
  • BUG DESKTOP Sometimes clicking "manage payees" from the payee dropdown accidentally categorized a transaction. No more!
  • BUG Fix some rare edge cases with syncing
  • BUG A few other small improvements and polish

New in Actual 0.0.121 (Jun 30, 2020)

  • BUG DESKTOP: Fix a bug with auto-detecting dates when importing CSV files
  • BUG DESKTOP: CSV importing now remembers that last delimiter selection used
  • BUG MOBILE: Fix problem with setting up encryption key on mobile. You should now be able to create your key when downloading your file.
  • BUG MOBILE: Fix styles on keyboard accessory buttons when editing budget amounts
  • BUG MOBILE: Improve experience of account settings if offline

New in Actual 0.0.120 (Jun 28, 2020)

  • FEATURE End-to-end encryption is now fully available! This update changes a lot internally to support this, and unfortunately you will need to "reset sync" after updating the app. Please read the blog post about it.
  • FEATURE Revamped sync experience. If there are any problems with syncing, encrypting or decrypting data, or your account, in the app you will see a notification describing the problem and be given actions to fix it. Previously, the was done in the file list screen which was not intuitive.
  • FEATURE DESKTOP Improve CSV importing: auto-detect date format, add support for YY year format, add CSV delimiter option (now supports semicolon), and support various formats for amounts
  • FEATURE You can now read your data if your subscription expires instead of being logged out. Any changes to data won't be saved. In addition to that, if payment fails you have 2 weeks to update your payment method and you can fully use the app during this period.
  • FEATURE Internal changes that improve general consistency, and improves reliability of the web app
  • BUG Fix a UX issue where sometimes the user sees the file list while downloading a file instead of a loader
  • BUG Fix issue where certain invalid inputs in the budget field would cause various problems (like deleting a category, moving money around, etc)
  • BUG Fix bug with YNAB4 importing where sometimes that negative balance rollover flag for a category wasn't properly copied
  • BUG Fix the balances in the offbudget and on budget transactions screen
  • BUG DESKTOP The favicon of the webapp has been fixed and now shows Actual's logo

New in Actual 0.0.119 (May 6, 2020)

  • BUG File name is now synced across all devices when changed
  • BUG DESKTOP Fix a bug where undoing a "hold for next month" budget action showed inaccurate amounts temporarily.
  • BUG DESKTOP Maintain focus when editing a transaction and switching to other apps
  • BUG MOBILE Sometimes the app would crash on the settings page with specific settings. It shouldn't crash now!
  • BUG MOBILE Fix regression on Android apps where app would render underneath status bar
  • BUG MOBILE Fix problem with certain Android devices where text was aggressively truncated
  • FEATURE Do an initial sync when opening the app so your data is always up-to-date
  • FEATURE You can now export transactions to CSV by viewing an account and clicking "Export". If you have applied a filter, only those transactions will be exported.
  • FEATURE The default font has changed to Inter on all desktop platforms
  • FEATURE The budget table has been rewritten! The design is similar, but a lot has changed and paves the way for more improvements. I wrote a blog post going into details about it. Many interactions like the animation has changed.

New in Actual 0.0.117 (Mar 27, 2020)

  • Features:
  • Importing CSV files! You can finally import transactions from CSV and choose which fields to map onto.
  • Preview imported transactions Importing other file types will open the same preview modal as you see above, allowing you to see the transactions you are about to import and provide options like customizing the date format.
  • Inline math expressions Wherever you enter an amount, you can enter a math expression like "100.00 - 55" and it will evaluate it. This applies to transaction amounts, budget amounts, and whenever you transfer money around on the budget page.
  • Bugfixes:
  • (Mobile) If the cleared switch hasn't been changed, new transactions are uncleared by default instead of cleared
  • (Mobile) Fixed a few bugs with refreshing transactions after changes
  • (Mobile) Fixed deleting a local file that isn't syncing anymore
  • (Mobile) Fix date logic for timezones like Australia and be more resilient to daylight savings changes (this caused problems sometimes loading a budget)
  • (Mobile) Improve drag & drop experience when editing categories

New in Actual 0.0.116 (Mar 14, 2020)

  • Features:
  • You can now click on a category's "spent" amount in the budget to see all the transactions that make up that amount
  • If the sidebar is hidden, the ability to make it appear by hovering over the left edge no longer works. You must open it by hovering the menu icon in the top left. While this isn't quite as nice, previously the sidebar would appear when trying to interact with UI elements near the left edge (such as deleting a transaction)
  • Bugfixes:
  • Electron, the framework internally used to run Actual on all platforms, has been updated. Please get in touch if you run into any strange bugs in the new version.
  • After navigating away and back to the budget, the multi-month picker in the top left would disappear. Now it's always there (if there is room for multiple months)
  • Sometimes the "cleared" total in the reconciliation message wouldn't update — it's always correct now
  • Sometimes data in the transaction table would be left unformatted (such as "0" instead of "0.00"). This has been fixed!
  • API:
  • This release includes a small change to the importTransactions method. It used to only return ok indicating that it was successful. Now, it returns an object describing the transactions that were added and updated, or an error if it occurred. Read the updated docs.

New in Actual 0.0.115 (Mar 10, 2020)

  • Features:
  • The sidebar can be hidden to give more room for content. When content becomes fullscreen, you can access the sidebar by hovering over the left edge of the app.
  • The account page has been redesigned, and it now includes a "cleared" flag for all transactions. You can view the cleared/uncleared totals by clicking on the account balance. This expanded view will persist in the future.
  • A workflow for reconciling accounts. You can now enter a number and using the cleared flags, figure out why your account doesn't match your bank's.
  • The control for the month picker in the top left of the budget page has been updated
  • All numbers now are fixed width. This makes them easier to scan vertically and compare them
  • When importing files, it will now show a matched icon on transactions that it matched and changed something. If it updates the date, or clears it, etc it will show a matched icon on the left.
  • Bugfixes:
  • Fixed an important bug where sometimes logging in would create an addition file instead of show your existing files
  • The autocomplete control stays anchored to the input if it shows above it
  • Payee rule changes are always saved, regardless of how you close it (like if you clicked outside to close the popup, now it will save!)
  • (Mobile) The budget screen on mobile has been tweaked to give more room for data. The font size has been decreased along with a few other things.

New in Actual 0.0.106 (Oct 22, 2019)

  • Features:
  • Implement a "cover overspending" option in the menu when clicking on a category balance in the budget. This is essentially the same thing as transferring money, but in reverse. It allows you to take money from another category to cover overspending.
  • Relax transaction matching. Previously, it would only match transactions if the dates were relatively similar, the amounts were exactly the same, and if the payees were relative similar. Now it will match regardless of the payee (only check date and amount), but it will still prefer the payees to be similar. That means if there are multiple transactions with the same amount, it will at least to attempt to match the correct one.
  • Revamp settings page
  • Provide the option to customize where files are stored (see "global" tab in settings)
  • Add cmd + , shortcut to open settings in macOS
  • Implement a lot of internal UI changes to prepare for the automatic bank syncing feature.
  • Bugfixes:
  • Fix problem where buttons are in the "hover" state even after you click on them
  • Fix number formatting. The 0.0.106 accidentally broke alternate number formats.

New in Actual 0.0.105 (Oct 14, 2019)

  • This is a small followup release to 0.0.104 which caused a couple regressions. That release included a lot of changes so this release is focused stability.
  • Regression fixes:
  • Certain categories and categories groups that have budget data over a year old caused problems when deleting them and transferring data to another category. Old data was in an unexpected format, and the new budget system handles it correctly now.
  • Fix the overspending screen in the tutorial. Previously it would crash the UI.
  • Bugfixes:
  • Fix a bug where sometimes the UI would crash when creating or deleting an account. This is a rare edge case but it should (hopefully) never happen now.
  • Make reopening an account undo-able
  • Show a loader when force deleting an account instead of closing the modal immediately. If the account has a lot of data, force closing it may take some time you shouldn't be able to interact with the UI while it's deleting it, or there will be errors. Once force closing is finished, the modal will automatically close.

New in Actual 0.0.104 (Oct 14, 2019)

  • A completely new budgeting backend:
  • This release has a totally new budgeting backend. I'll blog about this soon, but basically the entire budget used to be implemented internally as a spreadsheet, even with it's own custom language! The original idea was to expose this to the user and allow customization of the budget formulas, but I've learned a lot since then. I still have ideas related to this, but it was silly how complex the previous implementation made everything.
  • It made everything in the budget slow. If you had a couple years worth of data, adding a category would lag between the time you pressed enter and it actually showed up in the budget. Same with deleting a category, or anything else.
  • This has been completely fixed. Now, all of the interactions with the budget are instant. The backend is insanely faster, and the frontend has been meticulously optimized to make it feel even faster.
  • Big improvements in the budget UI:
  • While the budgeting backend allows the budget to update much faster, on the frontend I optimized it even more. The whole UI is now optimistically updated, which means when you make a change it doesn't even wait for the server. It just instantly updates the UI locally.
  • Additionally, the hover state for budget rows was removed. This allows more specific interactions with the values themselves. When you hover over a budget amount, a faded textbox will appear making it clear that you can edit it. The values in the balance column are now more clearly clickable. This tweaks will always feel instant regardless of the number of categories. (Previously, the row hover state would lag with a huge amount of categories)
  • Revamp how you interact with categories:
  • You can now edit categories and category groups by hovering and clicking the the drop down menu to reveal several actions. This will make it easier to add more actions in the future, and fixes the confusing interaction of renaming category groups.
  • A big thank you to Henri Maurer who has helped contribute on this release and implemented this feature!
  • API:
  • Another major feature: Actual now has an API! Read the docs on the website.
  • This gives you full access to your data. The main use case is to write custom importers (if your bank gives you transactions in a specific format), but you can write anything on top of it. This is considered experimental and will stabilize over time.
  • Improved syncing setup (including desktop-to-desktop):
  • Previously, only the mobile app could discover a desktop device by reading a QR code with the camera. That flow is simplified now, and Actual uses something called multicast DNS to discover devices. The desktop app puts itself into "broadcasting" mode and another desktop or mobile app will automatically discover it when setting up a new synced file.
  • Option to disable auto-update:
  • If you want to stay with a certain version of the app for any reason, you can now disable auto-updating in the settings.
  • Support for Catalina:
  • The new macOS version Catalina requires apps to be signed in another way, which is funny because the app is already properly code signed. I guess Apple really wants to control everything. Now the app is "notarized" by Apple which means they won't freak out when you try to run it.
  • Bugfixes:
  • Fix highlighting new transactions when importing
  • Fix various styling issues with reports
  • Tooltips/dropdowns are now dismissed with mouse down instead of mouse up (thanks Henri!)
  • Remove shortcuts for moving left/right in the budget, tab/shift-tab now move up and down (thanks Henri!)
  • Fix off-by-one date errors with OFX/QFX files if importing from certain timezones
  • Cash flow graph doesn't include off-budget accounts in the balance line
  • Improved YNAB4 import support. The import should be very robust now and import all of your data correctly.

New in Actual 0.0.102 (Oct 14, 2019)

  • Fix "keep negative spending in category" for rolling over negative spending. This was a regression with the undo feature.
  • Fix regression where the month selector could get stuck in the "small" mode where months were only displayed with the first character of each month (that wasn't on purpose!)
  • Many critical bug fixes with payees and default categories. Previously, deleting a category that a payee used as a default category would cause all sorts of problems. No more wreaking havoc on your data.
  • Pressing escape when editing a transaction's category could accidentally split the transaction. This has been fixed.
  • Cash flow report no longer shows on-budget transfers as income or expenses

New in Actual 0.0.101 (Jul 16, 2019)

  • Undo: Fearlessly edit your data knowing that a undo is a keystroke away (cmd+z on mac, ctrl+z on windows/linux)! Undo will revert changes to anything, including the budget, transactions, payees, accounts, etc. Redo changes with shift+cmd+z (shift+ctrl+z on windows/linux).
  • Improve budget page performance: The budget page now persists in memory so navigating back to it will always show your budget instantly. The backend has been tuned for better performance.
  • Searching for transactions should feel faster: Searching performance has been improved.
  • Fix "Restart App" button when app crashes: Now the app will actually restart.
  • Fix importing transactions with empty payees: If an imported file contains transactions with an empty payee description, previously it might match it with a the wrong payee. Now it just leaves it empty.
  • Improve payees merging workflow: merging payees is much faster and will consistently scroll you to the right final payee. Other small bugs have been fixed in the Manage Payees screen.
  • Fix bugs in syncing: it's now as robust as ever! If you've seen sync errors, it should be much more stable now.
  • Fix bugs with transfers: When moving a transfer transaction to a different account, the transfer in the other account will appropriately update. Force closing an account will also "unlink" any transfer transactions.
  • Implement anonymous usage tracking: The app will send basic usage statistics anonymously to Actual's servers. We use Fathom which focuses on privacy and host the data ourselves. The only thing tracked is number of users and pages viewed. You can opt-out in settings