Skip to content
Home About Services Portfolio Blog Contact Get Started

← All trending GitHub repos

yt-dlp/yt-dlp avatar

Trending GitHub Repo

yt-dlp

yt-dlp/yt-dlp on GitHub

★ 203,094 stars 17,809 forks Python Unlicense licence

The yt-dlp GitHub repository is the definitive command-line audio and video downloader: a feature-rich, actively maintained fork of youtube-dl that has become one of the most-starred Python projects in existence, with more than 203,000 stars. If you have ever needed a video from the web as an actual file — to edit, archive, transcribe or feed into a pipeline — this is the tool the professionals reach for. The yt-dlp GitHub project supports well over a thousand sites through its extractor system, and it ships fixes at the pace the web changes, which, for a downloader, is the whole game. The official home of the project is the yt-dlp/yt-dlp repository on GitHub, where you can browse the source code, releases and issue tracker.

yt-dlp github — yt-dlp open source repository overview

What it is

yt-dlp descends from youtube-dl through the yt-dlc fork, taking over in late 2020 just as the original’s development stalled. Where youtube-dl carried legacy compatibility baggage, yt-dlp modernised: a current Python codebase, a vastly larger extractor library — more than 1,700 supported sites, from YouTube’s clips, mixes and livestreams to broadcasters, social platforms and podcast hosts, plus a generic fallback — and a release cadence measured in days; when we checked for this listing, the repository had received commits the same day. It is released under the Unlicense, about as permissive as licensing gets. Under the hood, extractors are site-specific modules that find the real media files behind a page’s player, and that architecture is why the tool survives constant site redesigns.

Key features

  • Format control — list every stream with -F, select with -f, and rank preferences with -S; the default selector merges the best video and best audio automatically.
  • SponsorBlock integration — mark or remove sponsor segments when archiving long-form content.
  • Subtitles done properly — download, convert and embed subtitles, including auto-generated captions, in the languages you choose.
  • Post-processing — merge streams with FFmpeg, embed metadata and thumbnails, extract audio, split files by chapters.
  • Playlist and channel workflows — filtering, numbering, download-archive de-duplication and rate controls for bulk jobs.
  • Automation-friendly — output templates, JSON metadata and config files make it a pipeline component, not just a CLI toy.

Who it is for

Developers, content teams and agencies who move media files professionally: archiving your own published content, building transcription and analysis pipelines, preparing client media, assembling research collections. The responsible-use line is bright: download content you own, are licensed to use, or that is clearly permitted — yt-dlp’s power does not change the rights attached to other people’s work, and platform terms apply to your account, not to the tool. For a casual one-off save, a browser extension is simpler; yt-dlp earns its place the moment the job repeats, scales, or needs to be scripted.

Getting started

Install from the yt-dlp GitHub releases or with pip (pip install -U yt-dlp), add FFmpeg to your PATH for merging and post-processing, and learn three commands before anything else: -F to see what formats exist, -f to choose between them, and a plain URL download to get moving. Then set an output template and a download-archive file — those two habits turn scattered downloads into an organised library and prevent duplicated work in bulk jobs. Keep it updated: extractors break when sites change, and yt-dlp’s fix is usually already shipped by the time you notice the failure.

Our take

yt-dlp is infrastructure disguised as a utility — unglamorous in the best way, maintained with unusual discipline, and effectively without rivals at its depth of site support. The honest caveats: it is a command-line tool with a formidable option surface, so expect a learning curve; breakage is a fact of life in its category, so unattended pipelines need update discipline; and the legal and terms-of-service responsibility sits entirely with the operator. Within those lines, nothing else comes close. Our MTD blog guide covers the commands behind ninety percent of real-world jobs — read our full deep-dive — including the responsible-use workflows we recommend to clients. For media work at any scale, the yt-dlp GitHub repository is the standard.

Star history

Star history chart for yt-dlp

Frequently asked questions

What is yt-dlp?

A feature-rich command-line audio/video downloader.

Is yt-dlp open source?

Yes. yt-dlp is an open source project released under the Unlicense licence, and its full source code is publicly available on GitHub.

Who is yt-dlp for?

Developers and technical teams written in Python, working in Developer Tools. In short: A feature-rich command-line audio/video downloader.

Building something with open source?

MTD Technologies can help you evaluate, integrate and build on tools like yt-dlp — talk to us about your project.

Talk to us