ytdlp.org

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

Current section

Commands guide

How to download YouTube Shorts with yt-dlp

A Short is a regular YouTube video in a vertical wrapper. There is no special format, no separate backend, and nothing to convert — yt-dlp accepts the /shorts/ URL directly and treats it like any other video. Every flag you already know keeps working.

Quick answer

yt-dlp "https://www.youtube.com/shorts/VIDEO_ID"

Paste the Shorts URL as-is. yt-dlp resolves it to the underlying video and downloads the best available quality by default. No URL rewriting to /watch?v= is needed.

Quality and format

yt-dlp -f "bv*[height<=1080]+ba/b" "https://www.youtube.com/shorts/VIDEO_ID"

Shorts are vertical (9:16), and height-based selectors work exactly as they do for normal videos — just remember that heightmeans literal pixel height, which is the long side here. A Short YouTube labels "1080p" is 1080x1920, so height<=1080 caps you at a mid-quality rendition; use height<=1920 or width<=1080 when you want the full-quality vertical stream. If you need MP4 output for compatibility, add --remux-video mp4 to rewrap the download without re-encoding.

Download all Shorts from a channel

yt-dlp --download-archive archive.txt "https://www.youtube.com/@handle/shorts"

Pointing yt-dlp at a channel's Shorts tab treats it as a playlist and grabs every Short on it. The --download-archive flag records each finished video ID in archive.txt, so re-running the same command only fetches Shorts published since the last run. Add an output template to keep the files organized per channel instead of dumped into one folder.

Common problems

  • Age or region restrictions behave exactly like they do on normal videos. If a Short needs a signed-in session, pass browser cookies — see the YouTube guide for the cookies setup.
  • Formats look missing or capped at low quality? Update yt-dlp first with yt-dlp -U. YouTube changes break old builds regularly, and Shorts hit the same extractor as everything else.

The mistake to avoid

Do not re-download an entire channel's Shorts tab on every run. Without --download-archive, each rerun re-fetches hundreds of videos you already have, wastes bandwidth, and looks like abusive traffic to YouTube. One archive file per channel makes reruns cheap and safe.

Recurring sources

Pulling from the same sources on repeat?

Paste a link to preview what a maintained import API returns for it — across 500+ platforms.

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.