yt-dlp/yt-dlp

A feature-rich command-line audio/video downloader

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 10 minutes ago
Added to GitGenius on March 3rd, 2026
Created on October 26th, 2020
Open Issues & Pull Requests: 2,608 (+0)
Number of forks: 16,091
Total Stargazers: 186,677 (+1)
Total Subscribers: 920 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1.3 hours
Mean response time: 79.6 days
90th percentile: 230.7 days
Tracked items: 6,354

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 98% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "question" is answered fastest, typically in under an hour, while "site-request" waits about 26 hours. 55% of tracked open issues have had no activity in three months. Only 4% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1,705
New in 7 days: 52
Closed in 7 days: 47
Avg open age: 630 days
Stale 30+ days: 1,454
Stale 90+ days: 1,304

Recent activity

Opened in 7 days: 48
Closed in 7 days: 38
Comments in 7 days: 370
Events in 7 days: 1,036

Top labels

  • site-bug (2,926)
  • question (2,261)
  • duplicate (1,503)
  • triage (883)
  • site-request (746)
  • incomplete (711)
  • enhancement (555)
  • bug (539)

Detailed Description

yt-dlp is a feature-rich command-line audio and video downloader written in Python that supports thousands of websites. The project originated as a fork of youtube-dl, building on the now-inactive youtube-dlc project. It provides comprehensive functionality for downloading and extracting media content from online sources through a command-line interface.

The tool offers extensive configuration options organized into multiple categories including general options, network settings, geo-restriction handling, video selection, download preferences, filesystem management, thumbnail handling, verbosity controls, and workarounds for site-specific issues. Users can configure video format selection with filtering and sorting capabilities, manage subtitle downloads, handle authentication, apply post-processing operations, and utilize SponsorBlock integration for sponsor segment removal. The repository includes support for extractor-specific arguments, preset aliases, and a plugin system that allows both installation and development of custom extensions.

Installation is available through multiple distribution channels. Platform-specific standalone binaries are provided for Windows (x64, x86, and ARM64 variants), macOS (universal executable), and Linux (supporting glibc and musl libc with x86_64 and aarch64 architectures). Users can also install via pip from PyPI or use the platform-independent zipimport binary. The project supports automatic updates through the yt-dlp -U command for release binaries, with three release channels available: stable, nightly, and master.

The codebase demonstrates significant community engagement.

The licensing structure varies by distribution format. The core git repository, source tarball, and PyPI distributions are licensed under the Unlicense. However, PyInstaller-bundled executables include GPLv3+ licensed code, making the combined work GPLv3+. The zipimport Unix executable incorporates ISC licensed code from meriyah and MIT licensed code from astring. Comprehensive third-party license information is documented in THIRD_PARTY_LICENSES.txt.

The project maintains extensive documentation including detailed installation instructions in the wiki, configuration file support with netrc authentication, output template customization, format selection examples, and metadata modification capabilities. Users can embed yt-dlp functionality in other applications, and the repository provides developer instructions for contributing.