A browser extension that gives you granular control over YouTube’s interface and video filtering.
This project is open-source and not monetized.
It exists to make YouTube more controllable and less distracting.
This extension does two things:
- 🎯 Filters videos by title, channel, and upload date
- 🧱 Hides specific YouTube UI elements at the DOM level
It works on:
- Home
- Search
- Subscriptions
- Watch pages
The extension operates purely on the DOM after the page loads.
It does not intercept network requests or modify YouTube APIs.

- Title allowlist
- Title blocklist
- Channel allowlist
- Channel blocklist
- Optional regex support
- Optional whole-word matching
- Date filtering (Today / Week / Month / Year)
- Soft hide (blur + disable interaction)
- Hard hide (display: none)
Filtering applies to:
- Standard videos
- Sidebar recommendations
- Search results
- Channel cards and shelves
- Hide Shorts
- Hide homepage feed
- Hide comments
- Hide sponsored cards
- Hide playlist cards
- Hide members-only videos
- Hide mix/radio playlists
- Hide subscription section
- Hide subscription buttons
- Hide recommended sidebar
- Hide live chat
- Hide playlist panel
- Hide end cards overlays
- Disable autoplay
- Hide top header
- Hide notification bell
- Hide Explore section
- Hide “More from YouTube”
- Hide “You” section
Where possible, UI elements are hidden using injected CSS instead of JavaScript.
This reduces MutationObserver overhead and improves performance.
Shorts are handled entirely via CSS to avoid re-entrant observer loops.
This extension does not block requests or modify YouTube responses.
All filtering is DOM-based after content renders.
MutationObserver is protected against feedback loops to prevent excessive re-filtering when elements are hidden.
- Does not work on the YouTube mobile app
- Does not modify embedded videos
- Cannot remove content baked into the video itself (e.g., sponsor segments inside the video)
- Relies on YouTube’s DOM structure, so UI changes may temporarily break selectors
- Date filtering depends on relative timestamp parsing and may not cover every edge case
storage– to save settingshttps://www.youtube.com/*– to modify the DOM
No analytics. No tracking. No data collection.
- Clone or download this repository
- Open
chrome://extensions - Enable Developer Mode
- Click “Load unpacked”
- Select the extension folder
v2.0 – Major rewrite:
- Expanded UI controls
- Improved filtering engine
- CSS-first hiding strategy
- Observer loop protection