ytdlp.org

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

Current section

Maintenance guide

How to update yt-dlp

When yt-dlp suddenly breaks, the first thing to check is your version. The right update command depends on how you installed it. If you use the wrong update path, you can waste time thinking yt-dlp is broken when really you just updated the wrong copy.

Quick answer

If you installed the standalone binary, start here.

yt-dlp -U
yt-dlp --version

If you installed with pip

python3 -m pip install -U yt-dlp

Use the same Python environment that owns your current yt-dlp install. A very common mistake is updating one Python environment while your terminal is still using a different copy.

If you installed with a package manager

Homebrew, winget, apt, and similar tools can work fine, but some package sources lag behind upstream releases. If a site changed recently, the newest upstream build often matters more than using your OS package manager out of habit.

How to tell whether the update worked

yt-dlp --version
yt-dlp -F "https://www.youtube.com/watch?v=BaW_jenozKc"

If the version changed and a simple format listing works, your update path is probably fine.

Most common update failures

  • • permission denied when trying to overwrite the binary
  • • updating with pip but using a different Python environment at runtime
  • • package manager version still behind upstream
  • • terminal still resolving an older yt-dlp binary on PATH

The mistake to avoid

Do not keep retrying broken downloads without confirming the update actually touched the copy of yt-dlp you are running. That is one of the easiest ways to burn time.

Later

Need a cleaner workflow after the fix?

Solve the issue first. If yt-dlp becomes part of a repeated process afterward, Importly is worth a look when you want the workflow to be more organized and less manual.