gorhill

gorhill/uBlock

JavaScript GPL-3.0 Security

uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean.

66.1k stars
4.2k forks
active
GitHub +164 / week

66.1k

Stars

4.2k

Forks

18

Open issues

100+

Contributors

1.72.3b0 09 Jul 2026

AI Analysis

uBlock Origin is a CPU and memory-efficient wide-spectrum content blocker for Chromium and Firefox that blocks ads, trackers, malware, coin miners, and other unwanted content using multiple filter lists. It serves end users who want fast, low-overhead browsing protection without sacrificing performance, and is notably not a developer library or API — it is a browser extension for general consumers. Developers and power users benefit most from its extensive filter syntax and customization opti...

Security Application Discovery value: 1/10
Documentation 9/10
Activity 10/10
Community 10/10
Code quality 5/10

Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.

Overall score 10/10

AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.

content-blocking browser-extension privacy ad-blocking tracker-blocking
Actively maintained Well documented Popular Community favorite Beginner friendly Production ready
Deep Analysis · Based on README and public signals
3w ago

uBlock Origin: the most-installed open source ad blocker, now facing a critical Chrome MV3 transition

uBlock Origin (uBO) is a wide-spectrum content blocker for Firefox and Chromium-based browsers that filters ads, trackers, malware URLs, and coin miners with notably low CPU and memory overhead. Built for everyday browser users who want privacy and performance without technical configuration, it also offers advanced dynamic filtering for power users. With tens of millions of installs across Firefox and Chrome, it is likely the most widely deployed open source browser extension in existence. Its relevance is heightened by the ongoing Manifest V3 transition, which restricts its full capability on Chrome.

Origin

Created in 2015 by Raymond Hill (gorhill) as a fork emphasizing efficiency over Adblock Plus's increasingly commercial direction. It has since become the reference implementation for filter-list-based blocking, spawning its own filter syntax extensions and a companion uBOL project for MV3 environments.

Growth

Growth was driven by word-of-mouth among privacy-conscious users, favorable press coverage benchmarking its memory efficiency against Adblock Plus, and repeated endorsements from security researchers. The Google Chrome MV3 deprecation of MV2 support (ending on Chrome 139) created renewed urgency and media attention in 2024–2026, pushing users toward Firefox and the separate uBOL lite variant. Stars continue to accumulate steadily (~195 in 7 days as of evaluation date), reflecting sustained public interest rather than a viral spike.

In production

Firefox AMO lists uBO as one of the most downloaded add-ons with over 9 million daily users publicly documented on the Mozilla add-on page. Chrome Web Store independently reported 30M+ installs before MV2 deprecation pressure. Enterprise deployment documentation exists in the README, indicating organizational use. These are among the most verifiable real-world adoption signals available for any browser extension.

Code analysis
Architecture

Appears to be a browser extension built in JavaScript using the WebExtensions API, with a declarative and procedural filtering engine that extends EasyList/Adblock Plus filter syntax. Likely uses a background service worker (MV2) model for full blocking capability. The companion uBOL-home repo suggests a separate MV3 code path is maintained in parallel. Dynamic filtering UI implies a rule-graph engine running in the background page.

Tests

not documented in README

Maintenance

Extremely active: last push was on the evaluation date (2026-06-20), consistent with a project that receives near-daily commits. Badge links to commit rate and issue tracker suggest ongoing triage. Project has been continuously maintained for over 11 years. No signs of stagnation; issue activity and filter list updates appear routine.

Honest verdict

ADOPT IF: you use Firefox (where uBO retains full MV2 capability indefinitely) or a Chromium browser still supporting MV2, and you want the most capable, privacy-respecting, resource-efficient content blocker available as open source. AVOID IF: you are locked to Chrome 139+ and require seamless extension store auto-updates — the MV2 version will cease being supported there, requiring manual installation or migration to uBOL with reduced features. MONITOR IF: you are evaluating which blocking solution to standardize on for enterprise Firefox deployments or assessing how the MV3 uBOL variant matures in capability over the next 12–18 months.

Independent dimensions

Mainstream potential

9/10

Technical importance

9/10

Adoption evidence

10/10

Risks
  • Chrome's end of MV2 support (Chrome 139+) permanently reduces uBO's reach on the world's most popular browser, fragmenting the user base between Firefox (full features) and Chrome (lite MV3 version only via uBOL).
  • The uBlock-LLC/uBlock name collision causes ongoing user confusion, particularly on the Chrome Web Store, potentially diverting users to an inferior product.
  • Single primary maintainer (gorhill) has historically been the dominant architectural decision-maker; bus-factor risk exists despite a broader contributor community for filter lists and translations.
  • Filter list maintainers (EasyList, etc.) are external dependencies; changes in their policies or quality directly affect uBO's default blocking effectiveness without uBO having full control.
  • Increasing anti-adblock measures from major web properties (YouTube, etc.) create a continuous arms race that requires ongoing filter list and engine updates to remain effective.
Prediction

uBO will remain the dominant open source blocker on Firefox for the foreseeable future. On Chrome, it will gradually cede ground to uBOL and commercial alternatives as MV2 support ends, unless browser vendors reverse course on MV3 API restrictions.

0 found this helpful

Newsletter

Get analyses like this every Monday

Free weekly digest of the most interesting open-source discoveries.

Languages

JavaScript
89%
CSS
4.8%
HTML
3.5%
WebAssembly
2%
Shell
0.6%
Makefile
0.1%
Python
0.1%

Information

Language
JavaScript
License
GPL-3.0
Last updated
21h ago
Created
137mo ago
Analyzed with
anthropic/claude-sonnet-4-6

Stars over time

Loading…

Contributors over time

Top 100 contributors only — repos with more will plateau at 100.

Loading…

Similar repos

uBlockOrigin

uBlockOrigin/uBOL-home

uBO Lite is a privacy-focused content blocker extension built on the MV3 API,...

3.5k JavaScript Security
uBlockOrigin

uBlockOrigin/uAssets

uAssets is a curated collection of filter lists for uBlock Origin and uBlock...

5.9k Adblock Filter List Security
AdguardTeam

AdguardTeam/AdguardFilters

AdGuard Filters is a curated collection of content-blocking filter rules for ad...

4.4k Adblock Filter List Security
yokoffing

yokoffing/filterlists

A curated collection of blocklists and filter rules designed for ad-blocking...

iorate

iorate/ublacklist

uBlacklist is a browser extension that blocks specific websites from appearing...

6.6k TypeScript Security
vs. alternatives
uBlock-LLC/uBlock

A legally distinct project that acquired the 'uBlock' name and Chrome Web Store listing. Not affiliated with gorhill. Widely considered inferior in capability and transparency; exists primarily as a source of user confusion.

uBlockOrigin/uBOL-home

The official MV3-compatible 'lite' variant maintained by the same organization. Lacks dynamic filtering and cosmetic injection depth due to MV3 API constraints. The intended migration path for Chrome users losing MV2 support, but with reduced capability.

Ghostery

Focuses on tracker blocking with a commercial freemium model and analytics dashboard. Has historically had conflicts of interest (owned by an ad-tech company at one point). Less capable at general ad blocking; targets less technical users wanting a UI-friendly experience.

Adblock Plus

The older incumbent that pioneered filter lists but introduced the 'Acceptable Ads' program (paid whitelisting), which uBO explicitly rejects. Heavier on resources than uBO. Many users migrated to uBO specifically to escape Acceptable Ads.

iorate/uBlacklist

Solves a narrower problem: blocking specific sites from search results. Not a general-purpose content blocker. Complementary rather than competitive; many users run both.