Yarrtube brings selected YouTube channels to self-hosted media servers
Yarrtube downloads videos from chosen YouTube channels and playlists to local storage, integrating with Plex and Jellyfin for offline viewing without algorithmic recommendations.
A new open-source tool called Yarrtube allows users to automatically download videos from specific YouTube channels and public playlists directly to their home servers. Released in October 2026, this Rust-based application targets homelab enthusiasts who prefer curating a personal media library over browsing endless algorithmic feeds.
What happened
Yarrtube functions as a bridge between YouTube’s vast content repository and local media server setups. It uses yt-dlp, a widely used command-line utility, to fetch video files based on user-defined subscriptions. Instead of leaving these videos as transient bookmarks or relying on streaming bandwidth, the tool saves them to a directory controlled by the user. This approach transforms ephemeral online content into a permanent, locally accessible archive.
The application includes a web-based interface that allows users to watch downloaded content on desktop or mobile devices. Beyond simple playback, it offers configuration options for download quality and retention limits. Users can specify how many recent videos to keep for each channel, which helps manage disk space on servers that may already be hosting other media libraries. The developer designed the tool to remove the distraction of YouTube’s recommendation engine, focusing solely on content the user has explicitly chosen to follow.
Key details
- Yarrtube is written in Rust and uses SQLite for storing configuration and tracked channel data, eliminating the need for a separate database server.
- The tool supports integration with popular media servers including Plex, Jellyfin, and Kodi by saving files in a compatible directory structure.
- For Plex users, the project provides documentation for a TV-show-style folder layout and an optional scan trigger to refresh the library after new downloads.
- Deployment is handled via Docker, requiring two persistent volume mounts: one for the application database and another for the video files.
- The application requires a free YouTube Data API v3 key from Google to discover new uploads, creating an external dependency for metadata retrieval.
- There is no built-in authentication system, so the developer recommends restricting access to trusted local networks or placing a reverse proxy with auth in front of the service.
Background
Self-hosting media often involves balancing convenience with control. While platforms like YouTube offer unlimited content, they also introduce ads, tracking, and algorithmic suggestions that may not align with a user’s intent. Tools like yt-dlp have long allowed technical users to download videos manually, but automating this process for entire channels requires custom scripting or dedicated applications. Yarrtube fills this gap by providing a managed service that handles the scheduling, downloading, and organization of video files.
Integration with media servers like Plex or Jellyfin is a common goal for homelabbers. These servers excel at organizing local files, fetching metadata, and providing consistent playback interfaces across devices. By structuring downloaded YouTube videos in a way that mimics traditional TV shows or movies, Yarrtube allows these files to appear seamlessly alongside other local media. This reduces the friction of switching between different apps or interfaces when consuming content.
Why it matters
For teams or individuals running their own infrastructure, Yarrtube represents a shift toward intentional content consumption. It removes the noise of commercial platforms, allowing users to build a reference library of repair guides, tutorials, or documented projects that remain accessible even if the original source is deleted or altered. This is particularly valuable for technical professionals who rely on specific instructional content for work or hobbies.
However, the tool’s lack of built-in security features highlights a common challenge in self-hosted niche applications. Without authentication, exposing the web interface to the internet could allow unauthorized users to browse folders or trigger downloads. This necessitates additional infrastructure work, such as configuring network-level access controls or setting up an authentication gateway. IT managers evaluating such tools must account for these hidden operational costs.
Additionally, the reliance on YouTube’s API and the yt-dlp utility introduces potential points of failure. Changes to YouTube’s terms of service, API limits, or internal structures could break the discovery or download process. Users must be prepared to maintain the tool, update dependencies, and potentially troubleshoot integration issues as external services evolve. This reinforces the reality that self-hosting often trades convenience for responsibility.
What you can do
- Deploy Yarrtube using the provided Docker Compose example, ensuring you configure persistent volumes for both data and configuration.
- Obtain a YouTube Data API v3 key from the Google Cloud Console and add it to the application environment variables.
- Restrict network access to the Yarrtube web interface by keeping it on a local VLAN or placing it behind an authenticated reverse proxy.
- Configure retention policies for each channel to prevent storage exhaustion, especially if subscribing to high-frequency uploaders.
- Test the Plex or Jellyfin integration by verifying that new downloads trigger library scans and appear correctly in your media client.
- Monitor the application logs for errors related to yt-dlp or API rate limits, as these may require manual intervention or configuration tweaks.



