Skip to main content
Answers to the most common questions about using yt-dlp.

General Questions

yt-dlp is a feature-rich command-line audio/video downloader with support for thousands of sites. It’s a fork of youtube-dl with additional features and fixes.Key improvements over youtube-dl:
  • Faster and more frequently updated
  • Better format selection
  • More extractors and features
  • SponsorBlock integration
  • Better playlist handling
yt-dlp is a fork of youtube-dl with:
  • More frequent updates and active development
  • Additional features (SponsorBlock, better format selection, etc.)
  • More supported sites and extractors
  • Better performance
  • Bug fixes and improvements
yt-dlp maintains compatibility with youtube-dl while adding new capabilities.
  • Python 3.10+ (CPython)
  • Python 3.11+ (PyPy)
If you use standalone binaries, Python is already included.
While technically optional, ffmpeg is strongly recommended for:
  • Merging video and audio streams
  • Converting formats
  • Embedding thumbnails and metadata
  • Downloading HLS/DASH streams
  • Most post-processing tasks
Download from: yt-dlp/FFmpeg-Builds

Installation & Updates

Recommended methods:
See the Installation guide for more options.
For standalone binaries:
For pip installations:
Use nightly builds for regular use. They are:
  • Updated daily with latest fixes
  • More reliable for frequently-changing sites
  • The recommended version for bug reports
Stable builds are less frequent and may have older extractors.
yt-dlp-ejs is required for full YouTube support.Included in: Most standalone binariesFor pip installations:
  1. Install a JavaScript runtime (deno recommended):
  2. yt-dlp will automatically fetch yt-dlp-ejs when needed
See the EJS wiki for detailed setup.

Downloading

By default, if a URL contains both a video and playlist, only the video is downloaded.

Authentication

Use cookies from your logged-in browser:
Supported browsers: firefox, chrome, chromium, edge, opera, safari, brave
Many sites block programmatic login. Using cookies is more reliable.
A .netrc file stores login credentials.Location:
  • Linux/macOS: ~/.netrc
  • Windows: %HOME%\_netrc
Format:
Usage:

Format Selection

This shows all formats with IDs, resolutions, codecs, and file sizes.
Many sites (especially YouTube) serve high-quality video and audio as separate streams.yt-dlp automatically:
  1. Downloads both streams
  2. Merges them using ffmpeg
This is why ffmpeg is required for best quality downloads.

Output & File Naming

See Output Templates for all available fields.

Post-Processing

Requires mutagen (or AtomicParsley for M4A).

Advanced Usage

Create ~/.config/yt-dlp/config (Linux/macOS) or %APPDATA%/yt-dlp/config.txt (Windows):
Options in config file are used automatically.
Create a text file with one URL per line:
Yes! See the Embedding yt-dlp guide.

Troubleshooting

  1. Update to nightly:
  2. Check verbose output:
  3. Try with cookies:
See the Troubleshooting guide for more solutions.
  • Use external downloader: --downloader aria2c
  • Increase concurrent fragments: -N 10
  • Check your internet connection
  • Some sites have rate limiting

More Information

For more detailed information, see: