Windows PowerShell / CMD  ·  Copy and paste  ·  Updated 2026

yt-dlp Commands Cheatsheet for Windows

Every common yt-dlp command in one place. Copy and paste directly into PowerShell or CMD. Replace URL with your video or playlist link.

Essential yt-dlp commands

Download a video — best available quality
yt-dlp "URL"
Force best video + best audio merge (requires FFmpeg)
yt-dlp -f "bestvideo+bestaudio/best" "URL"
Check installed version
yt-dlp --version
Update to the latest release
yt-dlp -U
List all available formats for a video
yt-dlp -F "URL"
Dry run — show what would be downloaded without downloading
yt-dlp --simulate "URL"

Format and resolution commands

Cap at 1080p
yt-dlp -f "bestvideo[height<=1080]+bestaudio/best" "URL"
Force 4K (2160p) if available
yt-dlp -f "bestvideo[height>=2160]+bestaudio/best" "URL"
Prefer H.264/MP4 — maximum compatibility
yt-dlp -f "bestvideo[ext=mp4][vcodec*=h264]+bestaudio[ext=m4a]/best[ext=mp4]" "URL"
Prefer AV1 → VP9 → fallback
yt-dlp -f "bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9]/bestvideo+bestaudio/best" "URL"

Audio extraction and conversion

Convert to MP3 — best quality with artwork and tags
yt-dlp -x --audio-format mp3 --audio-quality 0 --embed-thumbnail --embed-metadata "URL"
Keep original audio without re-encoding (best actual quality)
yt-dlp -f ba -x --audio-format best "URL"
Convert playlist to MP3
yt-dlp -x --audio-format mp3 --audio-quality 0 --embed-thumbnail --embed-metadata --yes-playlist -o "%(playlist_index)02d-%(title)s.%(ext)s" "PLAYLIST_URL"
Batch from text file (one URL per line)
yt-dlp -a links.txt -x --audio-format mp3 --audio-quality 0

Playlist and channel commands

Download entire playlist — keep order in filenames
yt-dlp --yes-playlist -o "%(playlist_index)02d-%(title)s.%(ext)s" "PLAYLIST_URL"
Download specific items only
yt-dlp --playlist-items 1,5,10-12 "PLAYLIST_URL"
Resume + skip already downloaded
yt-dlp --continue --download-archive downloaded.txt "PLAYLIST_URL"
Download entire channel
yt-dlp "https://www.youtube.com/@ChannelName/videos" -o "%(upload_date>%Y-%m-%d)s-%(title)s.%(ext)s"

Subtitle download commands

Download subtitles as separate SRT files
yt-dlp --write-sub --write-auto-sub --sub-langs en --sub-format srt "URL"
Embed subtitles into MKV
yt-dlp -f "bv+ba/best" --write-auto-sub --sub-langs "en,*" --embed-subs --merge-output-format mkv "URL"
Subtitles only — no video download
yt-dlp --write-sub --write-auto-sub --sub-langs en --skip-download "URL"

Filenames and folder organisation

Video title as filename
-o "C:/Videos/%(title)s.%(ext)s"
One folder per playlist, numbered files
-o "C:/Videos/%(playlist)s/%(playlist_index)02d-%(title)s.%(ext)s"
Music library — artist/channel subfolder
-o "C:/Music/%(artist,channel)s/%(title)s.%(ext)s"
Date-based naming for channels
-o "C:/Videos/%(channel)s/%(upload_date>%Y-%m-%d)s-%(title)s.%(ext)s"

Common template variables:

%(title)s
Video title
%(ext)s
File extension
%(id)s
Video ID
%(upload_date)s
Upload date (YYYYMMDD)
%(channel)s
Channel name
%(playlist_index)02d
Zero-padded track #

Performance, cookies and metadata

Parallel fragment downloads (faster on good connections)
-N 4
Rate limit (avoid throttling)
--limit-rate 5M
Retry on failures
--retries 10 --fragment-retries 10
Pass browser cookies (for private or age-restricted content)
--cookies-from-browser chrome
Embed thumbnail and metadata
--embed-thumbnail --embed-metadata
Only new videos from the last 30 days
--dateafter today-30days