ytdlp.org

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

Current section

Command guide

Best yt-dlp commands for video, audio, playlists, and subtitles

Most people do not need a giant wall of flags. They need a short list of commands that solve common yt-dlp tasks reliably. The point of this page is practical coverage, not trying to turn the docs into a brain dump.

How to use this page

Start with the command closest to your actual task. If it works, stop there. If you need more control, follow the linked deeper guide instead of stacking random flags from different tutorials.

Download the best available quality

yt-dlp "URL"

Default yt-dlp behavior is already strong. Start simple before forcing formats you may not need.

Download audio only and convert to MP3

yt-dlp -x --audio-format mp3 "URL"

Requires ffmpeg. If conversion fails, check ffmpeg before touching anything else.

Download a playlist

yt-dlp "PLAYLIST_URL"

Fine for a first pass. Add output templates if you want cleaner filenames and folders.

List available formats

yt-dlp -F "URL"

Do this before choosing a specific format. Guessing format IDs is one of the easiest ways to waste time.

Download subtitles only

yt-dlp --write-subs --sub-langs "en.*" --skip-download "URL"

Useful when you need caption files without downloading the actual media.

Use a custom output filename

yt-dlp -o "%(title)s.%(ext)s" "URL"

This matters a lot once you start downloading more than one file at a time.

The biggest command mistake

People often combine a bunch of flags before confirming the simple version works. That usually makes debugging harder, not smarter. Get the base command working first, then add the minimum extra flag you actually need.

For builders

Using yt-dlp inside an app or script?

Paste a link to see what a managed media-import API returns — no install, no signup.

Related guides

Straightforward yt-dlp help for installs, commands, fixes, cookies, and repeatable workflows.

ytdlp.org is an independent, community-maintained documentation site. It is not affiliated with the yt-dlp project — the official source code lives at github.com/yt-dlp/yt-dlp.