Want to configure Firefox and other Gecko-based browsers for better performance and security?
Project moved to Codeberg
The Firefox Configuration Guide for Privacy Freaks and Performance Buffs has been moved to Codeberg however you can still leave comments and suggestions here if you wish. If that guide is too much for you, try The Firefox Privacy Guide for Dummies!.
A note regarding user comments
When reading the user comments on this page, keep in mind that this guide has been around since 2015 and, given the dynamic nature of the web and Firefox, some of the information in comments, including information provided by myself, may be obsolete or entirely wrong. Nevertheless i decided to retain all comments because... nostalgia. If you have any questions, ask.
Mozilla Firefox is a popular web browser that is easily extended with add-ons, of which there are literally thousands. These are my favorites...
Mozilla Firefox is a popular, extensible, open source (mostly) web browser that is highly configurable and easy to use. Somewhat bare out of the box however, its functionality is easily extended with free 'add-ons', or 'extensions', of which there are many thousands on the Mozilla add-on repository at addons.mozilla.org (AMO).
Beware
With so many "free" add-ons you might be tempted to install lots of them, however i would strongly suggest installing only those you need since the potential to break things and compromise browser security and your privacy increases with every add-on you install.
A typical day at the Mozilla Firefox Add-ons repository, 2019.
Another problem is unethical developers who include unwanted and unnecessary functionality which is not relevant to the primary purpose of the add-on. Often this results in data collection, tracking your web activities, injecting unwanted content in pages, such as ads, or worse, all of which i categorize as malware.
The problem of malware at AMO has grown exponentially as a result of a very flawed automated review process for add-ons and the company's move to the WebExtension API which made it easy for unethical developers who have infected the Google Chrome Store with their garbage to port their add-ons to Firefox. Indeed, probably at least half of the add-ons at AMO are sketchy and the majority of the remainder are essentially useless. Although the Web Extensions API is greatly limited as opposed to the older XUL/XPCOM extension API, tracking, data collection and advertising are permitted and, on occasion, far more dangerous add-ons escape detection, some of which are used by millions of people.
Add-on selection guidelines
You've been warned! Many extensions are accompanied by a warning on their AMO pages which indicates that the extension is not monitored by Mozilla and therefore is more risky to install. While monitored extensions -- those with a 'recommended' label -- are scrutinized more carefully and may be more trustworthy in general, many others are perfectly fine as long as you trust the developer and/or review the code yourself.
Tool-bar or FOOL-bar? Be very wary of tool-bar add-ons since many of these contain 3rd party spyware/malware components for monetization purposes.
Who the hell are you??? Always check to see what other add-ons the developer has created and how those are rated. Be wary when the developer is named as a company and not an individual, or when their name is generic, such as "Firefox user" followed by a random number. See what kind of content is on the developers website if they link to one and look for marketing hype or unethical activity. Also be wary of developers that make it difficult or impossible to contact them or submit bug reports.
The 0-day 'bonus'. Never install newly released add-ons from a developer whom you're not familiar with, especially if it's their only add-on. Mozilla uses a deeply flawed automated system to evaluate add-ons, so wait at least a few days until others have had a chance to review it or flag it for removal. If the add-on quickly disappears or gets poor reviews, be thankful you didn't take the bait.
When "free" isn't. Always check the software license and be wary of developers who use a restrictive license. Most ethical developers will use a liberal, free software license, such as the General Public License (GPL) or the Mozilla Public License (MPL).
'We care about your privacy' ... LOL. If an add-on has a privacy policy, read it and see what data the add-on may collect, where it's sent, and how it's used. In general, if the document is a wall of legalese, it's probably a rotten privacy policy. One of the best privacy policies i've run across is that written by the developer for the Stylus add-on:
Unlike other similar extensions, we don't find you to be all that interesting. Your questionable browsing history should remain between you and the NSA. Stylus collects nothing. Period.
Yes it can/no it can't. The Mozilla add-on website lists the permissions that add-ons require, though there seems to be some problems at this time in that all permissions used by an add-on may not be listed, or permissions which the add-on does not use may be listed, so don't trust this completely. That said, look for permissions that seem unnecessary given the expected functionality of the add-on.
What's under the hood? In general it's best to avoid developers that attempt to hide their source code. Most ethical developers will publish their work on platforms like GitLab, GitHub or Codeberg where people can submit proper bug reports and feature requests. In such cases there is usually a homepage and/or support link on the add-on page, or a link somewhere in the add-on settings, menus, etc., that leads to the code repository. If the source code is not published, you can still view it by decompressing the add-on or by using the excellent Extension source viewer (CRX Viewer) add-on.
You should always check is the extensions manifest.json file and you don't have to be a geek to do so. Open the address about:debugging#/runtime/this-firefox in Firefox (or just remember the address about:about from where you will find the debugging page) and click on the 'Manifest URL' link for the extension you want to inspect. What you want to look for are any network links for unexpected addresses. For example, an add-on like Maximize All Windows (Minimalist Version) only modifies the behavior of Firefox, therefore there shouldn't be any remote addresses in the manifest. On the other hand, an add-on like uBlock Origin needs to intercept traffic for every website you open, as well as be able to download fresh filter lists and so on, and so its manifest contains http://*/*, https://*/*. and <all_urls>. Other add-ons may be dedicated to a single website, such as BitChute, and so bitchute.com should be the only remote address in the manifest. Also see the Extension source viewer add-on below which can be used to view the source code.
He said, she said. Always read the user reviews to see how well an add-on is liked and be wary if it is rated 3 stars or less, or not rated at all, or was rated highly by only a few people. Sometimes a developer will be the first to "review" their add-on, giving it 5 stars. Regardless of the rating however, always check the comments of the people that gave it the lowest rating to see if their gripes seem legitimate (many aren't) and whether they were addressed. That said, there are many add-ons that have been rated very highly by hundreds or thousands of people that contain malware, so don't give too much weight to user ratings alone.
But everybody's using it! Many developers of hugely popular add-ons have been contacted by malware distributing 3rd parties wanting to buy their work or influence its development. Adblock Plus by Eyeo GmbH (Wladimir Palant) is used by millions of people, yet it is a glaring example of an unethical developer who created an "ad blocking" extension which allows ads by default. For larger entities, Eyeo GmbH charges advertisers 30% of the revenue from Adblock Plus users who click the ads, so not only does Adblock allow ads, it's also spying on its users and making a ton of money for the company. Giorgio Maone, the developer of the hugely popular NoScript add-on, engaged in similar chicanery a while back.
Should i or shouldn't i? If you're not sure whether you'll like an add-on, test it by downloading the .xpi file, then opening about:debugging#/runtime/this-firefox in Firefox and clicking the 'Load Temporary Add-on' button.
Automatic update MALWARE install. Automatic checking for add-on updates is fine, but always disable automatic installation of updated add-ons. Before updating an add-on, read the release notes to see what has changed and make sure the privacy policy, if there is one, remains strong. The problem with automatic add-on updates is that a developer may decide to monetize their work at any time and without warning, or sell their extension to an unethical party such as the developer of Stylish apparently did. Ingo Wennemaring, the much-liked developer of the once popular All-in-One Sidebar add-on, warned about this in a blog post:
It was always very important for me to be honest and fair to the users. I had very good offers to sell the extension, but I didn't want to see that AiOS turn into adware or spyware.
Have I got a DEAL FOR YOU! I would strongly suggest avoiding any add-on that asks for or requires personal information or other data which could be used to identify, track, or profile you, or which is designed around monetization. Such extensions include, but are not limited to, those which promote coupons, discounts and free services, certain automatic form fillers, any add-on which stores data remotely such as many password, bookmark and synchronization add-ons, cryptocurrency add-ons, banking and other financial related add-ons, website/service specific add-ons marketed by corporations and many VPN (Virtual Private Network) add-ons.
Hide and seek. Regarding VPN add-ons, there are 172 of them at the time of this writing and most of them are highly suspect, yet millions of clueless people use them. Furthermore, a VPN add-on for a web browser may protect only browser traffic while leaving all other network traffic unprotected, such as email and, potentially, DNS look-ups. If you want to use a VPN, and i would certainly recommend considering it, it should be incorporated at the system level or, even better, at the router level.
ClearURLs automatically removes tracking parameters from clicked hyperlinks. This add-on is not needed if using uBlock Origin with the ClearURLs for uBo filter list (see the suggested settings for uBlock Origin page for more information).
Dark Background and Light Text replaces Dark Reader as my preferred add-on for darkening the entire web. These 'darkify' add-ons, of which there are many, change the colors used by all websites to a darker theme and this one seems to be the best of those i have tested and i've tested many.
Caveats: All of these 'dark web' add-ons fail miserably in some cases and this one is no exception, however it seems to work better overall than all of the others i've tested and it does offer a few different styles that can be assigned to specific websites when the default style fails. Due to a shortcoming in the code, this add-on cannot be disabled for local content, such as paths beginning with file://.
Enforce Browser Fonts allows one to choose whether to use the fonts specified by the website, or those that you have defined in Firefox preferences (Language and Appearance). Personally i hate when websites override my personal font choices and this extension takes care of that. Enforce Browser Fonts defaults to enabled and will remember the websites for which you disable it.
Caveats: For the privacy minded who enable privacy.resistFingerprinting, forcing the use of your preferred fonts will increase the likelihood of your browser being uniquely identified. It can also uglify some websites.
Extension source viewer is a handy and well thought out utility to quickly view the source code of a Firefox extension right from the Mozilla add-ons website without having to download and unpack it manually. The extension has the ability to search the contents of the files in the source code by prefixing the search with '!'.
Flagfox is a neat utility that adds an icon to the address bar which represents the flag of the country in which the web server is located. When the icon is right-clicked, a context menu is revealed with many more tools, such as a WHOIS lookup, URL shortening services and more. You can also add your own services.
Caveats: If you choose to display the menu icons, they are not stored locally and have to be fetched the first time you open the menu which some might see as a privacy issue.
Format Link offers flexible solutions for copying content and formatting it in different ways, such as HTML, markdown, plain text, , etc., before pasting it somewhere.. I don't like it as much as Link Text and Location Copier, however that add-on is unmaintained and buggy.
Caveats: Format Link is a little buggy and needs some attention, but it's still a better solution than Link Text and Location Copier. If you have trouble copying content, try pausing for just a second after initiating Format Link. I've found that if you switch tabs too soon, the content may not be placed on the clipboard.
LibRedirect redirects many websites, such as YouTube, Twitter, Instagram, Reddit, TikTok, etc., to alternative front-ends that are more respective of user privacy. While there are many such add-ons, LibRedirect is perhaps the best of them due to its many configuration options, its ability to automatically switch instances when a service is not responding, update the list of instances, add your own instances, etc..
Caveats: While most/all alternative front-ends are built with free, open source software and are more respective of user privacy, it is possible that those running the service may have modified the code to act in a malicious manner. Many/most of these alternative front-ends will work without enabling JavaScript however.
List Feeds detects news feeds (RSS, ATOM, etc.). Some time ago the M&Ms (Morons at Mozilla, corporate) decided to strip all support for detecting and reading news feeds at a crucial time when news feeds were never more important. Their excuse for doing so was a lack of money and user interest, however there is little doubt in my mind that this was done in order to sway people to get their news from "trusted" sources rather than independent journalists. List Feeds essentially restores and enhances the feed detection capability which Mozilla removed. Also see: How to access RSS feeds for websites that don't advertise one.
LocalCDN, a fork of Decentraleyes, can increase privacy and decrease page load time for many websites which depend on 3rd party Content Delivery Networks (CDNs). It accomplishes this by storing and loading several common JavaScript and font libraries locally instead of having to fetch them from the server.
From a privacy point of view, LocalCDN is not strictly needed if using the 'arkenfox' user.js or appropriate settings.
Caveats: Can break some websites, though this seems to happen very rarely in my experience. There are 'Filter HTML source code' and whitelist options to address such problems.
Mark-It by Matt [enhancement]
UPDATE: This extension is no longer available. I'm currently searching for a viable replacement. If anyone has any ideas,pleaseĀ leave a comment.
Mark-It is a simple, handy add-on that replaces your new tab page with one that allows you to write notes in markup format. I find this add-on to be really handy for storing commonly used bookmarks, notes and text that i paste frequently in forums and such.
You could play with the CSS i use to divide the page into two columns for less wasted space, plus make some other changes. You'll need to open about:debugging#/runtime/this-firefox and replace <Internal UUID> in the first line with the the Internal UUID for Mark-It. If the CSS doesn't load, be sure toolkit.legacyUserProfileCustomizations.stylesheets is set to true in about:config:
mozlz4-edit allows one to edit, format and otherwise manipulate several types of compressed files including the search.json.mozlz4 file which is where Firefox stores all of its search engine plugins. If this is too much for you, try the Search Engines Helper add-on below.
Privacy Oriented Origin Policy (POOP) helps protect your privacy by preventing Firefox from sending Origin headers, though how it works is configurable.
Caveats: For advanced users. May break some websites, though it is easily disabled and sites can be whitelisted. There is a lengthy discussion about what led to the development of this add-on on GitHub if you're interested.
Reverse Image Search is a privacy friendly add-on used to find different versions of a given image using 3rd party services such as TinEye. Reverse image searching is a great way to find higher resolution versions of an image or to find when an image may have first been published to the web, the latter of which can be beneficial for researchers. Reverse Image Search also allows to add custom services to its menu.
Scroll Up Folder adds an icon in the address bar that, when clicked, opens a list of the segments of the current document address. Clicking the list items makes it really easy to navigate up to a higher level of the address without having to manually edit it.
Search Engines Helper makes it really easy to add, import and export custom search engines for Firefox. It also allows using base64 code (data URLs) for the site icons.
Redirects sometimes happen when you click on a hyperlink expecting to go directly to the destination and, instead, your request is passed through an intermediary. Redirects are often used to track your browsing history or display ads before you are forwarded to the target domain. Skip Redirect simply tries to bypass this annoying behavior. I would suggest keeping the notification enabled when Skip Redirect does its thing as this makes it easy to troubleshoot a problem.
Caveats: May break the functionality of some websites in which case they can be added to a whitelist.
Smart RSS Reader is a well-rounded, multi-pane news feed reader and a pretty good one at that. There are a few little niggles with it, but overall it functions very well and the developer is friendly and open to suggestions. If you subscribe to multiple feed from the same domain, i might suggest setting the "Concurrent downloads:" preference to "1" in order to potentially prevent problems retrieving feeds.
While there is no dark theme option for Smart RSS, it does have an option to add your own CSS. Here's my CSS for a dark theme if you wish to use it. This works for the vertical 3-pane layout:
Stylus is used to write, store and inject custom CSS styles into websites, or even the entire web if you wish. Though you can use FireMonkey for this, working with Stylus is so much nicer. Note: Do not use Stylish, a similar add-on which the developer sold to an unethical party.
Caveats: For advanced users that have at least a basic knowledge of CSS.
uBlock Origin is a superior content filter (or firewall, if you like) that can replace several other content/ad blockers including Adblock Plus/Edge, NoScript, etc.. It is capable of using the same filter lists as Adblock Plus/Edge as well as many more that they cannot. Two of the most welcome differences with uBlock Origin is that it does not slow page loading to any noticeable degree and it uses less memory then the competition. Another major advantage is that it can block both 1st and 3rd party requests for images, scripts and frames when configured to use its advanced mode. See my Firefox Configuration Guide for Privacy Freaks and Performance Buffs article for more information regarding uBlock Origin. Lastly, use only uBlock Origin by Raymond Hill and not any other ripoff.
Caveats: For advanced users. As with any content filtering extension, uBlock Origin has the potential to break website functionality until it is configured correctly.
Web Archives makes it easy to find archived version of webpages. It is fairly configurable, though it does not have an option to add your own archive resources, nor does it have an option to send a webpage to an archive, however i find the latter unnecessary since the archive sites i use allow you easily archive a page if one isn't isn't found.
Enabling add-ons for addons.mozilla.org
By default Firefox does not allow add-ons to run on https://addons.mozilla.org/. if you want to override this behavior you can add the the following preferences to your user.js file or your user-overrides.js file if you're using the 'arkenfox' user.js:
While i'm sure there's a more geeky way of listing extensions which one has removed, this one works for me: In your Firefox profile folder, navigate to /extensions/staged and there should be folders with the names of the removed extensions. You can delete this folder if you like.
If you like an add-on, or any other free and open source software, please donate to the developer. Trust me when i tell you that most developers of free software usually receive little or nothing for all the days/months/years of hard work they invest and the support they provide. Developers are usually very appreciative of a donation regardless of how small it may be.