ytdlp.org

Practical yt-dlp docs: install, commands, fixes, cookies, and workflows.

Current section

Platforms hub

Use the right platform-specific guide instead of treating every source like the same workflow.

yt-dlp is generic, but the jobs people actually run are often platform-specific. YouTube alone brings different needs around playlists, subtitles, age gates, signed-in access, and quality handling. This pillar exists to route that platform intent into the right next guide quickly.

Use yt-dlp for YouTube

Start with the YouTube guide when you need the most common platform-specific patterns, caveats, and adjacent workflows.

Download playlists

Use this when the real platform problem is bulk YouTube downloads and keeping playlist runs under control.

Download subtitles

Go here for YouTube subtitle workflows instead of treating captions like a generic afterthought.

Use cookies with yt-dlp

Move here when the platform issue is actually auth, age verification, or signed-in access state.

Use this pillar for

  • source-specific behavior like YouTube quirks and access rules
  • choosing the right adjacent guide for playlists, subtitles, or cookies
  • understanding when the problem is the platform itself versus a generic yt-dlp issue

Do not start here if

  • yt-dlp is not installed or ffmpeg is missing
  • the problem is clearly a stale version or broken extractor update
  • you really need generic command patterns rather than source-specific advice

Move deeper when

  • the source requires auth or cookies
  • you need format-selection detail for quality control
  • a repeated platform workflow needs cleaner organization and automation

What this pillar should do

Platform workflows

  • • YouTube-specific download patterns
  • • playlist and subtitle routing
  • • auth and age-gate edge cases
  • • source-specific adjacent guides

Decision routing

  • • when the issue is really cookies
  • • when the issue is format selection
  • • when the issue is just commands
  • • when the issue belongs in troubleshooting

The failure pattern to avoid

People often say “yt-dlp for YouTube” when the real problem is one layer below that: playlists, subtitles, cookies, format choices, or a stale extractor. Platform language is useful only if it helps route to the exact workflow underneath it.

Use the platform page to narrow the job, then move into the precise guide instead of stopping at the platform label.

Recurring source

Downloading from the same sources repeatedly?

Once this stops being a one-time command and starts becoming a repeated source workflow, it is usually worth moving beyond copy-pasting terminal commands every time. Importly is built for that step up.

Next places to go