Skip to content
yt-dlp

yt-dlp Command Generator for YouTube

Build the exact yt-dlp command for a YouTube video, playlist or channel. Starts on 1080p MP4 with chapters, metadata and sponsors removed.

Optional. Leave it empty and the command ends with URL for you to fill in.

Your command

yt-dlp -f 'bv*[height<=1080]+ba/b[height<=1080]' --merge-output-format mp4 --embed-subs --sub-langs en --no-playlist --embed-thumbnail --embed-metadata --embed-chapters --sponsorblock-remove default 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'
Basics

Audio-only extracts the soundtrack and drops the video stream.

Video and quality

Caps the height. yt-dlp still picks the best stream at or below it.

The file type separate video and audio streams are merged into.

Advanced options (3)

Overrides the quality dropdown. For people who already know the format syntax.

Repackages the streams without re-encoding. Fast and lossless.

Re-encodes the video. Slow and lossy — only when remuxing will not do.

Audio

The file the audio is converted to.

VBR gives the best size-to-quality ratio; fixed bitrates are more predictable.

Subtitles

Embedding puts them inside the video; saving writes a separate .srt next to it.

Comma separated. Use all for every available language.

Playlists and channels

What to do when the URL belongs to both a video and a playlist.

Ranges and lists both work, for example 1-10,15 or -5::2 for every second item from the end.

Advanced options (1)

Records what has been downloaded so re-running skips it. The way to keep a channel in sync.

Sections and chapters
Advanced options (2)

A time range like *00:01:30-00:03:00, or a chapter name. The leading asterisk means it is a timestamp.

Metadata and artwork
Advanced options (3)
SponsorBlock

Cuts community-marked segments out of the file using SponsorBlock data.

Advanced options (1)

Keeps the segments but marks them, so you can skip them yourself.

Files and folders

Field names go in %(...)s. Slashes create folders.

Advanced options (4)

Where files are written. Combine with the template above for subfolders.

Maximum file name length in characters.

Filters
Advanced options (5)

YYYYMMDD, or a relative date like now-1month.

YYYYMMDD, or a relative date.

Skips anything smaller. Accepts 5M, 500K and similar.

Skips anything larger.

Number of files to download before stopping.

Network

For example 2M or 500K. Useful when you need the rest of your bandwidth.

Advanced options (5)

Speeds up fragmented streams. Four is a sensible starting point.

How many times to retry a failed piece. infinite is allowed.

HTTP, HTTPS or SOCKS proxy URL.

Makes requests look like a real browser. The usual fix for sudden 403 errors.

Login and cookies

Reads your logged-in session directly. Needed for private, age-restricted or members-only content.

Advanced options (1)

A Netscape-format cookies.txt exported from your browser.

Live streams
Advanced options (2)

Polls until a scheduled stream begins. MIN-MAX seconds between checks.

Workarounds
Advanced options (3)

Deprecated in favour of --add-headers. Kept because plenty of older guides still use it.

Deprecated in favour of --add-headers.

Site-specific switches, for example youtube:player_client=web.

Output and debugging
Advanced options (2)
Reset

What makes YouTube different

Above 720p, YouTube publishes video and audio as separate streams. Any command that asks for 1080p or 4K therefore has to request both and merge them, which is why ffmpeg is a hard requirement above 720p and not below it. The preset here already does that.

The other YouTube-specific thing worth knowing is the bot check. When it appears, browser impersonation clears it more often than anything else, and supplying your own cookies handles the rest — age-restricted, members-only and private videos all need a session.

Frequently asked questions

How do I download YouTube in 1080p or 4K?
Above 720p, YouTube serves video and audio as separate streams, so the command has to ask for both and merge them — which needs ffmpeg. Pick the resolution above and the generator writes the selector and the merge container for you.
YouTube asks me to confirm I am not a bot.
Add --impersonate chrome, or --cookies-from-browser chrome to reuse your logged-in session. Close the browser first — Chrome locks its cookie database while running.
How do I get just the audio as MP3?
Switch the output to Audio only and choose MP3. Add cover art and metadata and the file arrives ready for a music library. ffmpeg is required.
How do I download a whole playlist?
Set playlist handling to the whole playlist. For anything long, add an archive file so a re-run resumes instead of starting over, and keep-going-on-errors so one blocked video does not stop the rest.
Can I download YouTube subtitles?
Yes — embedded in the video or as a separate .srt. Turn on auto-generated subtitles too, otherwise videos without human captions produce nothing at all.