Ublock Origin Breaks Sites: Fix Guide
When uBlock Origin blocks a script, stylesheet, or tracker, some websites break—forms stop working, images vanish, or the page refuses to load entirely. This guide walks you through identifying the blocked element, creating a temporary or permanent exception, and fixing the issue without disabling your ad blocker completely.
What You’ll Need
- A browser with uBlock Origin installed (Firefox, Chrome, Edge, Opera, or Brave)
- The URL of the broken website
- Basic familiarity with browser developer tools (optional but helpful)
Step-by-Step
- Confirm uBlock Origin is the cause. Click the uBlock Origin icon in your browser toolbar and click the large power button to disable it on the current site. Reload the page. If the site works, uBlock is indeed the culprit. Re-enable it afterward.
- Open the uBlock Origin dashboard. Click the icon again, then click the gear icon (⚙) to open the dashboard. Alternatively, right-click the icon and select “Options.”
- Go to the “My filters” tab. This is where you’ll add a custom exception rule. You’ll see a text area with any existing custom filters.
- Add a site-specific exception. To allow all scripts and resources on the broken site, add this line (replace
example.comwith the actual domain):@@||example.com^$document
This tells uBlock to not block anything on that page. Click “Apply changes” and reload the site. - If the site still breaks, try a more targeted exception. Sometimes only a specific third-party script is blocked. Open the browser’s developer tools (F12), go to the “Console” tab, and look for errors mentioning blocked requests (often shown as “net::ERR_BLOCKED_BY_CLIENT”). Note the full URL of the blocked resource.
- Add a filter to allow that specific resource. In “My filters,” add a line like:
@@||example.com/path/to/script.js
This allows only that file while keeping other blocks active. Apply and reload. - Use the element picker for visual breakage. If the page looks wrong (missing images, layout broken), click the uBlock icon and choose the eyedropper icon (element picker). Hover over the broken area, click to select it, and then click “Create” in the popup. This adds a cosmetic filter that hides the offending element—but it won’t unblock resources. For layout issues caused by blocked CSS, you need the exception method above.
- Check if the issue is a known filter list problem. Sometimes a filter list update causes false positives. Click the uBlock icon, then the clock icon (“Purge all caches”). Then click the refresh icon (circular arrows) to update all lists. Reload the site.
- Temporarily disable uBlock for the site. If you need the site to work right now, click the icon and click the power button to disable uBlock for that site only. This is a quick fix, but remember to re-enable it later or add a proper exception.
- Test in a private/incognito window. If the site works there, a browser extension conflict might be the issue. Disable other extensions one by one to isolate the culprit.
Common Mistakes
- Using
@@||example.com^$documenton the wrong domain (e.g., using the full URL instead of just the domain). - Forgetting to click “Apply changes” after editing filters.
- Adding an exception for a resource that isn’t actually blocked—check the console first.
- Disabling uBlock globally instead of per-site, leaving you unprotected elsewhere.
- Assuming the element picker will fix script-related breakage; it only hides visual elements.
Tips
- Use the “Block element” tool to see which filters are active on a specific element—it shows the exact rule that blocked it.
- For sites you trust, consider adding a permanent exception rather than disabling uBlock each visit.
- Check the uBlock Origin subreddit or GitHub issues for known problems with specific sites.
- Keep uBlock Origin updated; newer versions have better site-breakage detection.
- If a site breaks after a filter update, try disabling only the “EasyList” or “uBlock filters” lists to see if that helps.
Troubleshooting
The site still breaks after adding an exception. The exception might not cover all blocked resources. Open the console and look for more ERR_BLOCKED_BY_CLIENT errors. Add exceptions for each unique domain or resource. Alternatively, use the “My filters” tab to add a broad exception like @@||example.com^$script to allow all scripts from that domain.
The site works with uBlock disabled but no exception helps. This can happen if uBlock’s cosmetic filters (which hide elements) are still active. In the dashboard, go to “Filter lists” and uncheck “uBlock filters – Annoyances” or similar cosmetic lists. Or, in the “My filters” tab, add example.com##body to disable all cosmetic filtering on that site (this is a last resort).
The page loads but a button or form doesn’t work. This is often due to a blocked script that handles the interaction. Use the console to find the blocked script URL and add an exception for it. If the script is from a third-party domain (e.g., a CDN), you may need to allow that domain entirely.
uBlock Origin icon shows a number but the site is fine. That number indicates how many requests were blocked. If the site works, you don’t need to do anything. If you want to reduce the number, you can refine your filters, but it’s not necessary.
The site breaks in one browser but not another. This suggests a browser-specific issue. Try resetting uBlock Origin to default settings in that browser, or check if a browser extension (like a password manager) is interfering.
Frequently Asked Questions
Will adding an exception weaken my privacy?
Yes, but only for that specific site or resource. The exception allows that site to load scripts and trackers that uBlock would normally block. It’s a trade-off between functionality and privacy. You can limit the exception to just the broken resource instead of the whole site.
Can I use a wildcard to allow all subdomains?
Yes. For example, @@||example.com^$document will also apply to sub.example.com because the filter matches the domain and all subdomains.
What does the “$document” part of the filter mean?
It tells uBlock to apply the exception to the main document request (the HTML page itself). This effectively disables all blocking on that page, including subrequests. Without it, the exception might only apply to a specific resource type.
Why does the site break only when I’m logged in?
Logged-in pages often load additional scripts for personalization or dynamic content. These scripts might be on a different domain (like a CDN or API) that uBlock blocks. Check the console while logged in to see which new resources are blocked.
Is it safe to disable uBlock Origin for a site permanently?
It’s safe if you trust the site. However, it means that site can run all scripts, including trackers. If you’re concerned, use a targeted exception for only the broken resource instead.
How do I remove an exception I added?
Go to the “My filters” tab in the dashboard, delete the line you added, and click “Apply changes.” The site will revert to normal blocking behavior.
Related
Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.