Mozilla this week enabled automatic Tab Unloading for Firefox Nightly on Windows, which significantly improves low memory usage and reduces the likelihood of browser crashes.
Mozilla’s development of Firefox Tab Unloading began more than 10 years ago, but Mozilla has never enabled the feature in any of the browser’s previous releases. Tab Unloading was stalled two years ago due to detection of low memory errors.
Tab unloading is now a feature in Firefox Nightly for Windows, which is currently in version 93 and is expected to be released in Firefox 93 for Windows later this year. In addition to Firefox for Windows, Mozilla also plans to introduce support for this feature in the future for Firefox for macOS and Linux.
The main purpose of Tab unloading is to reduce the number of crashes in Firefox due to lack of memory by freeing up memory.
According to Mozilla, Firefox selects tabs for the unloading process based on a variety of factors, including “last access time, memory usage, and other attributes.” Firefox’s tab selection algorithm tries to exclude tabs that are actively fixed by the user, tabs that play media, and tabs that use WebRTC.
Firefox users can now open a new internal page about:unloads in Nightly 93 to check the order in which tabs will be unloaded if the memory reaches a specific threshold. The page also has an “unload” button that performs the unload function immediately in that order. The unloaded tab is still visible in Firefox’s address bar, and selecting it will reload the page content again.
Firefox’s preference setting browser.tabs.unloadOnLowMemory determines whether the feature is enabled (TRUE) or disabled (FALSE), and Firefox users can change this option on about:config themselves.
Mozilla says that Tab Unloading maximizes the feature on devices with 8 gigabytes of memory or less, which can improve the user experience even more.
Firefox’s native tab unloading feature also frees up memory, but unlike most Firefox browser extensions (e.g. Dormancy, Suspend Background Tabs), it mainly comes into play when the user’s device is low on memory.