How to Block Websites on Safari (Mac, 2026)
If a site keeps pulling you out of focus, here's how to block websites on Safari for free: use Screen Time for the fastest built-in block, edit the hosts file to cover every browser, or run a system-level app that blocks sites during a focus session. Screen Time takes two minutes; system-level blocking is the hardest to talk yourself out of.
This guide walks through every method — built-in macOS tools, Safari extensions, and OS-level blocking — with the honest limits of each, so you can pick the one that matches how hard you actually need the block to be.
Method 1: Screen Time (built in, free)
macOS has a built-in content filter inside Screen Time, and it's the quickest way to block a site in Safari.
- Open System Settings → Screen Time.
- Click Content & Privacy, then turn on Content & Privacy Restrictions.
- Click Content Restrictions → Access to Web Content and choose Limit Adult Websites.
- Click Customize, and under Restricted, add the site you want blocked (for example,
https://www.reddit.com).
Safari will now block that site. You can set a Screen Time passcode so the restriction can't be removed without it, which adds a little friction.
The honest limits: Screen Time only governs Safari. Open the same site in Chrome and it loads fine. And if you know the passcode — which, for your own machine, you do — you can lift the restriction in a few clicks. It's great for a quick, casual block, less great when the temptation is strong.
Method 2: Safari content-blocker extension
Safari supports content-blocker extensions from the App Store. Install one, add the sites you want gone, and they're blocked inside Safari with no Terminal and no system settings.
This is the most app-like option — a click to install, a simple list to manage. For light blocking it's perfectly fine.
The catch is familiar: an extension only controls Safari. It can be toggled off in Safari's preferences, and it has no effect on Chrome, Firefox, Arc, or native apps. If you're the type to switch browsers the moment you hit a wall, the wall isn't tall enough.
Method 3: Edit the hosts file (covers every browser)
If you want to block a site across Safari and every other browser, edit your Mac's hosts file. It works at the network layer, below the browser, so the block is universal.
Open Terminal and run:
sudo nano /etc/hosts
Enter your password, then add the domains at the bottom:
127.0.0.1 reddit.com
127.0.0.1 www.reddit.com
Save with Control+O, exit with Control+X, then flush DNS:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
The hosts file is free, universal, and effective. Its weakness is that it has no timer and no friction — the site is blocked until you reopen the file and delete those lines, which takes about as long as adding them. There's nothing stopping a determined you from undoing it.
Method 4: System-level blocking with a focus app
The methods above each block something. A system-level focus app blocks everything — across every browser and native app — and ties the block to a session instead of a permanent toggle.
The free Focuh desktop app for Mac blocks distracting sites at the operating-system level during a focus session. While the session runs, the site is unreachable in Safari, Chrome, Firefox, and Arc at the same time, and Focuh pairs blocking with a focus timer, a menu-bar countdown, and task management. Because it uses macOS Accessibility APIs rather than living in Safari's settings, it's harder to switch off mid-session than a Screen Time toggle or an extension.
This is the option to choose when the problem isn't "I forgot a site was bad" but "I keep finding my way back." Removing every escape hatch at once is what makes it stick.
Safari website-blocking methods, compared
| Method | Free? | Covers other browsers? | Has a session/timer? | Bypass friction |
|---|---|---|---|---|
| Screen Time | Yes | No (Safari only) | No | Low (passcode helps) |
| Safari extension | Usually | No | No | Low |
| Hosts file | Yes | Yes | No | Low (easy to edit out) |
| Focuh Mac app | Yes | Yes (OS-level) | Yes — focus session | High |
The pattern is clear once it's laid out. The built-in options are quick but narrow and easy to undo. The hosts file is universal but has no off-switch friction. The system-level app is the only row that covers every browser and ties the block to a session you can't casually flip off.
Why browser-only blocks keep failing
If you've blocked a site in Safari and ended up back on it within the hour, the method wasn't the problem — the scope was. A Safari-only block leaves Chrome wide open. The moment you hit the wall in Safari, the autopilot move is to open the same site in another browser, and a browser-scoped block can't see that.
This is the core argument for OS-level blocking: it closes the side doors. When the block lives below the browser, there's no "other browser" to escape to and no native app exception to forget. For the full comparison of the two approaches, see system-level vs browser website blocking and our deeper look at system-level website blocking on macOS.
Which method should you use?
Match the method to how hard you need the block to be.
"I just want a quick block in Safari and I trust myself" — Use Screen Time. Built in, two minutes, free.
"I want something app-like inside Safari" — Use a Safari content-blocker extension. Easy to install, easy to manage, Safari-only.
"I use more than one browser" — Use the hosts file for a universal block, or the Focuh Mac app if you also want a timer and stronger friction.
"I keep talking myself back onto the site" — Use system-level blocking. The Focuh app removes every escape hatch during a session, which is the difference between a block you respect and one you route around.
All of these are free, so you can start with Screen Time and step up to OS-level blocking if the casual block doesn't hold. For a roundup of dedicated Mac blockers, see the best website blockers for Mac in 2026, or download the free Focuh app to block across your whole system today.