Download YouTube Playlists (Up to 50 Items)
Queue complete music albums, lecture courses, and tutorial series in MP3 or MP4 with automated track extraction via yt-dlp.
📋 Paste Playlist URL
Playlist Download Queue 0
No active playlist downloads
Paste a playlist link above to start processing.
How YouTube Playlist Extraction Works
When you submit a playlist URL (e.g., https://www.youtube.com/playlist?list=PLrEnWoR732-...), our system processes it through a dedicated pipeline designed to be fast, memory-safe, and resilient:
- Flat Metadata Scraping: Instead of fetching heavy video players and comments, our backend invokes yt-dlp with the
extract_flat: Trueflag. This extracts video IDs, titles, durations, and thumbnail links in a single HTTP payload without downloading any media. - Batch Job Generation: Each video entry is registered as an individual record in our thread-safe SQLite database with state
QUEUEDand unique UUID. - Worker Dispatch: Our multi-threaded executor picks up jobs across 3 concurrent worker threads. As each video finishes, the next queued video starts automatically.
- Real-time UI Synchronization: The browser polls
/api/jobsto render real-time progress bars, download speeds (MB/s), and download buttons for each finished item.
The 50-Item Safety Cap Explained
Our playlist downloader caps extraction at 50 videos per playlist. This limit exists for three critical reasons:
- Rate Limiting & Anti-Bot Protection: YouTube strictly throttles IP addresses that request hundreds of video streams in rapid succession, resulting in temporary HTTP 429 Too Many Requests errors. A 50-item limit ensures clean, reliable completions.
- Local Disk & Memory Protection: A 100-video playlist in 1080p could easily exceed 40 gigabytes of disk space and exhaust server memory during parallel FFmpeg muxing.
- Session Reliability: Keeping batches at or below 50 items guarantees that all downloads finish well within typical network availability windows.
MAX_PLAYLIST_ITEMS in your local .env configuration file.
Public, Unlisted, and Private Playlist Behavior
Understanding playlist privacy rules on YouTube:
| Playlist Type | Supported? | Behavior |
|---|---|---|
| Public Playlist | ✅ Yes | Extracts all videos up to 50 items with metadata. |
| Unlisted Playlist | ✅ Yes | Works completely as long as the full shareable URL is provided. |
| Private Playlist | ❌ No | Fails with error. Requires account login cookies (not supported for security). |
| YouTube Mix / Radio (RD...) | ⚠️ Single Only | Mixes are algorithmic dynamic streams. System automatically queues the current video instead. |
Automatic Duplicate Filtration
It is common for playlists to contain duplicate videos or for users to accidentally paste a link that is already in the download queue. Our system inspects the normalized video ID of every incoming URL:
- If a video is already in the active batch or currently downloading, duplicate instances are skipped.
- Failed downloads can be retried individually using the 🔄 Retry button on the job card (supporting up to 3 automatic retries).
Step-by-Step Tutorial
Read our dedicated tutorial: How to Download a YouTube Playlist Step-by-Step for screenshots and advanced terminal tips.