Advanced
Branding Removal
How ytcn suppresses YouTube chrome — and the limits of each technique.
Techniques used
ytcn uses a combination of IFrame API parameters, CSS, and lifecycle tricks to remove YouTube branding. Here's every technique and what it suppresses:
| Technique | What it removes |
|---|---|
| controls: 0 | Native YouTube controls bar |
| modestbranding: 1 | YouTube logo in controls |
| rel: 0 | Related videos at the end |
| iv_load_policy: 3 | Annotations |
| disablekb: 1 | YouTube keyboard shortcuts (we use our own) |
| Thumbnail-first loading | YouTube red play button on initial load |
| Cover div overlay | YouTube watermark during CUED state |
| Iframe offset + overflow hidden | Top info bar and bottom gradient |
| unloadModule('captions') | Automatic caption overlay (signed-in users) |
Cover div technique
During the "loading" phase (after click, before ready), a cover div sits on top of the iframe. This prevents the YouTube red play button and logo from appearing during initialization. The cover is removed with an opacity transition once the video starts playing.
cover-div.tsx
{/* Cover div — hides YouTube branding during initialization */}
{state.phase !== "ready" && (
<div className="absolute inset-0 bg-black z-10 transition-opacity duration-300" />
)}Caption suppression
Flash possible
For signed-in YouTube users, captions may briefly flash before
unloadModule('captions') fires. ytcn re-suppresses captions on every PLAYING event to minimize this, but a brief flash (under 200ms) is possible on initial play.Terms of Service note
Use at your own risk
Hiding YouTube branding may violate the YouTube API Terms of Service and Branding Guidelines. Review these documents and make your own decision. ytcn provides the tools — you decide how to use them.