yt-dlp Command Generator for Vimeo
Build a yt-dlp command for Vimeo videos, including private and embed-restricted ones.
Private and restricted videos
Vimeo allows uploaders to restrict playback to specific domains. When a video plays on a site but not from a bare yt-dlp command, a referer matching that page is usually what is missing.
Private videos need cookies from an account with access. Password-protected ones use a separate option that is deliberately not in this form — it is a secret, and share links would carry it.
Vimeo quality is the straightforward part: the ladder is honest, 1080p and 4K exist where they exist, and the height cap behaves exactly as documented. What varies is access. An embed-only video plays inside the player on its owner's site; yt-dlp needs a referer header matching that page, and this form supplies one — the failure mode is a referer for a different domain than the embed lives on, which Vimeo reads as unlicensed.
Vimeo hosts a lot of commercial content behind its own paywall — rented films, course platforms, portfolio sites built on Vimeo's white-label player. Those resolve only with the credentials that bought them, if at all: the course platform's player is not the public Vimeo player, and yt-dlp has no way through it. If the video plays inside a site you pay for, the download options are that site's own; a bare Vimeo URL will not exist for it.
For the files themselves, chapters and subtitles carry through like anywhere else — --write-subs saves what the uploader attached, and Vimeo creators are unusually diligent about subtitles, so it is worth trying. Text tracks on a 4K film are large; if you only want the picture, the height cap alone controls the size, and the audio track follows automatically in the merge.
One genuine dead end to name: private Showcase links and unlisted videos where the link itself is the secret — those need the --video-password option, which this form deliberately omits because a shareable URL carrying a password is a bad trade. Everything else that fails is access: cookies for private, referer for embeds, and update yt-dlp first — Vimeo's extractor has been reworked more than once.