I'm trying Firefox as my primary browser on all devices. It has some great features like Multi-Account containers in addition to being a non-Google product, which is an increasingly rare feature on the web nowadays.
Firefox on macOS is somewhat sluggish at the moment. If you try the current stable version 62 or current beta version 63, you'll notice some lags and general slow response time for even the simplest tasks like changing tabs.
Mozilla will probably fix these issues in the upcoming releases. Meanwhile, I found the following steps improve the performance significantly.
Download Firefox 63 or higher
As of today (October 1, 2018), stable release version is 62. Version 63 is currently in beta, and I recommend using it today. It's very robust, I haven't had any problems with it. There are some important performance improvements in it.
You can also try Firefox Nightly, it is currently version 64 on the dark side. Nightly is an unstable testing and development platform. By default, Nightly sends data to Mozilla — and sometimes their partners. There are some rough edges, I wouldn't recommend it for daily browsing.
Disable animations
By default Firefox has lots of animations. I find them unnecessary and distracting, but more importantly, they contribute to the general sluggishness.
Go to about:config
in the address bar. Search for animate
and set at least cosmeticAnimations
to false
.
Fullscreen transition takes 0.2 seconds both ways. Make them instant by setting the following to 0 0
:
full-screen-api.transition-duration.enter
full-screen-api.transition-duration.leave
Disable Pocket
Firefox embedded Pocket into the browser. A questionable move, but it's easy to disable (unless you use it, of course). Set extensions.pocket.enabled
to false
.
Other stuff
These are not related to performance, but can make your Firefox experience a bit nicer.
Set to true:
modalHighlight
highlight all the search results.browser.tabs.closeTabByDblclick
close tab by double-clicking on it.abs.multiselect
shift-click on tabs to select a group of tabs and do something with them (for example, detach from window).insecure_connection_text.enabled
write “Not Secure” in the address bar of non-https pages (like Chrome does). Additionally, enable a broken padlock icon withsecurity.insecure_connection_icon.enabled
.
Minor things:
general.smoothScroll.mouseWheel.durationMaxMS
set200
to make scrolling speed similar to Chrome.geo.enabled
set tofalse
to disable geolocation.extensions.screenshots.disabled
set totrue
to disable the screenshot extension. It's actually pretty handy, check it out before disabling.