How to block websites in Arc, Brave, and Firefox
To block websites in Arc, Brave, or Firefox on a Mac, either set up a block inside each browser or block the sites once at the Mac level. Firefox has its own add-ons and a WebsiteFilter policy. Brave and Arc run Chrome Web Store extensions and read Chromium-style policies. Brave Shields isn't a site blocker. If you switch between browsers, a Mac-level blocker covers all of them at once.
- Firefox: an add-on such as LeechBlock NG, or the
WebsiteFilterpolicy. - Brave: a Chrome Web Store extension, or Brave's policy support.
- Arc: a Chrome Web Store extension, or Arc's group policies.
- All three: the hosts file or a system-level blocker such as Cactus.
Block websites in Firefox on a Mac
With an add-on
LeechBlock NG is free and lets you block sets of sites at set times and days.
- Open addons.mozilla.org in Firefox, find LeechBlock NG, and click Add to Firefox.
- In its options, add the domains and set the times and days.
- Open Add-ons and themes, click the add-on, and set Run in Private Windows to Allow. Firefox add-ons don't run in private windows unless you allow them.
- Test in a normal window and a private window.
With the WebsiteFilter policy
Firefox's enterprise WebsiteFilter policy blocks pages without an add-on, so there is no add-on to disable. It uses match patterns, and *://*.youtube.com/* covers youtube.com and its subdomains.
- Quit Firefox.
- In Terminal, run
sudo mkdir -p /Applications/Firefox.app/Contents/Resources/distribution. - Run
sudo nano /Applications/Firefox.app/Contents/Resources/distribution/policies.jsonand paste:
{
"policies": {
"WebsiteFilter": {
"Block": [
"*://*.youtube.com/*",
"*://*.x.com/*",
"*://*.reddit.com/*"
]
}
}
}
- Save, open Firefox, and go to
about:policies. WebsiteFilter should be listed as active. - Open a blocked site to test.
Mozilla documents policies.json in this location and allows up to 1,000 entries per list. Managed Macs can set the same policy with a configuration profile instead. The policy has no schedule, applies only to Firefox, and an admin can delete the file. Check about:policies again after Firefox updates.
Watch Firefox's DNS over HTTPS
Firefox can resolve names with its own DNS over HTTPS, and it turns this on by default in some regions, including the US. That can skip the hosts file, which Mac-level blockers rely on. SelfControl's FAQ warns that it can make blocks "unreliable or fail entirely." If a site is blocked in Safari but loads in Firefox, open Settings > Privacy & Security, find DNS over HTTPS, turn it off, and test again.
Block websites in Brave on a Mac
Brave Shields is not a site blocker
Brave Shields blocks ads, trackers, and fingerprinting. It is not designed to block a site you choose, such as youtube.com, and it has no schedule. You need one of the options below.
With an extension
Brave installs extensions from the Chrome Web Store, so the same blockers work. Install one, add your sites, then open brave://extensions, click Details, and turn on Allow in Private. Test in a normal window and a private window.
With a policy
Brave's help center documents group policy support for Chromium policies such as URLBlocklist. On a Mac, Brave reads them from its own preference domain, com.brave.Browser. You can use the configuration profile from the Chrome guide and change com.google.Chrome to com.brave.Browser. After you install it, check brave://policy to confirm Brave loaded the blocklist.
Brave's Tor windows
Brave can open a private window with Tor. That traffic goes through the Tor network, so Mac-level blocks based on the hosts file or firewall rules won't stop it. A Brave policy or extension may still apply there, so test it.
Block websites in Arc on a Mac
Arc is built on Chromium and installs extensions directly from the Chrome Web Store, so a Chrome blocking extension works the same way. Open the extension's settings, add your sites, and allow it in incognito windows if Arc shows that option.
Arc's help center has a page on setting Arc group policies through defaults write, with URLBlocklist as one of its examples. Its example spells the key URLBLocklist, and policy names are case-sensitive, so type URLBlocklist. The Chrome guide explains why Chromium treats defaults write policies as recommended rather than enforced. After setting a policy, open arc://policy to see whether Arc picked it up.
Keep Arc's status in mind. In May 2025, The Browser Company said it had stopped active development of Arc to focus on its newer browser, Dia, and Atlassian announced that September that it was buying the company. Arc still gets Chromium security updates. A browser in maintenance mode is a reason to prefer a block that doesn't depend on it.
Block all three at once at the Mac level
A Mac-level block works below the browser, so Arc, Brave, Firefox, Safari, and Chrome all get the same rule. Private windows, guest profiles, and any browser you install next week are covered too. The free route is the hosts file. Website blockers that don't need an extension compares it with DNS filters and system-level apps.
Cactus for Mac blocks sites on a recurring schedule with the hosts file and the macOS packet filter. You set the days and hours once, such as every weekday from 09:00 to 17:00, and the block starts and ends on its own in every browser. It has no off switch during a block, though a Mac administrator can still remove it. See how Cactus blocks websites.
Cactus blocks each domain and its www. version, plus m.youtube.com for YouTube and twitter.com for X. Other hosts, such as youtu.be or old.reddit.com, need their own entries. It blocks whole sites, not paths, has one schedule, doesn't block apps, and costs $19.99 once. For other scheduled tools, see blocking websites on a schedule.
Before relying on any Mac-level block, check each browser:
- Firefox: DNS over HTTPS setting, as above.
- Brave and Arc: look for a secure DNS setting in the browser's privacy or security settings, and turn it off if a block fails only there.
- Brave: remember that Tor windows bypass it.
- All browsers: VPNs and proxies send traffic around address-based rules.
Compare the options by browser
| Browser | Extension route | Policy route | Built-in blocking | Mac-level caveat |
|---|---|---|---|---|
| Firefox | Add-ons, allow in private windows | WebsiteFilter in policies.json | None for chosen sites | DNS over HTTPS may skip hosts |
| Brave | Chrome Web Store, allow in Private | URLBlocklist on com.brave.Browser | Shields blocks ads and trackers, not chosen sites | Tor windows bypass it |
| Arc | Chrome Web Store | Arc group policies | None for chosen sites | Test after updates |
Which approach should you use?
If you use one of these browsers and want something free, use an extension with private windows allowed, or a policy if you want a block with no toggle. If you use two or more, or you'd open another browser the moment one says no, block at the Mac level. Then test every browser you use, in a private window, before you count on it.
