yt-dlp is a feature-rich command-line audio/video downloader with support for thousands of sites. The project is a fork of youtube-dl based on the now inactive youtube-dlc.
README
Version
2025.07.21
Release Date
2025-07-21
SHA-256 checksum file*
Windows 64 bit
Alternative Download – Windows 64 bit
For additional platforms, please visit https://github.com/yt-dlp/yt-dlp/releases/tag/2025.07.21.

Core changes
- Allow extractors to designate formats/subtitles for impersonation (#13778) by bashonly (With fixes in 3e49bc8, 2ac3eb9)
- Don’t let format testing alter the return code (#13767) by bashonly
- Fix
--exec
placeholder expansion on Windows by Grub4K - No longer enable
--mtime
by default (#12781) by seproDev - Warn when skipping formats (#13090) by bashonly
- jsinterp
- Cache undefined variable names (#13639) by bashonly (With fixes in 805519b)
- Fix variable scoping (#13639) by bashonly, seproDev
- utils
mimetype2ext
: Always parseflac
fromaudio/flac
(#13748) by bashonlyunified_timestamp
: Returnint
values (#13796) by doe1080urlhandle_detect_ext
: Usex-amz-meta-file-type
headers (#13749) by bashonly
Extractor changes
- Add
_search_nextjs_v13_data
helper (#13398) by bashonly (With fixes in b5fea53) - Detect invalid m3u8 playlist data (#13601) by Grub4K
- 10play: Support new site domain (#13611) by Georift
- 9gag: Support browser impersonation (#13678) by bashonly
- aenetworks: Support new URL formats (#13747) by bashonly
- archive.org: Fix extractor (#13706) by rdamas
- bandaichannel: Remove extractor (#13152) by doe1080
- bandcamp: Extract tags (#13480) by WouterGordts
- bellmedia: Remove extractor (#13429) by doe1080
- bilibili: Pass newer user-agent with API requests (#13736) by c-basalt
- bilibilibangumi
- blackboardcollaborate: Support subtitles and authwalled videos (#12473) by flanter21
- btvplus: Add extractor (#13541) by bubo
- ctv: Remove extractor (#13429) by doe1080
- dangalplay: Support other login regions (#13768) by bashonly
- francetv: Improve error handling (#13726) by bashonly
- hotstar
- Fix support for free accounts (#13700) by chauhantirth
- Improve error handling (#13727) by bashonly (With fixes in ef103b2)
- joqrag: Remove extractor (#13152) by doe1080
- limelight: Remove extractors (#13267) by doe1080
- lrtradio: Fix extractor (#13717) by Pawka
- mir24.tv: Add extractor (#13651) by swayll
- mixlr: Add extractors (#13561) by seproDev, ShockedPlot7560
- mlbtv: Make formats downloadable with ffmpeg (#13761) by bashonly
- newspicks: Fix extractor (#13612) by doe1080
- nhkradiru: Fix metadata extraction (#12708) by garret1317
- noovo: Remove extractor (#13429) by doe1080
- patreon: campaign: Fix extractor (#13712) by bashonly
- playerfm: Add extractor (#13016) by R0hanW
- rai: Fix formats extraction (#13572) by moonshinerd, seproDev
- raisudtirol: Support alternative domain (#13718) by barsnick
- skeb: Rework extractor (#13593) by doe1080
- soundcloud: Always extract original format extension (#13746) by bashonly
- sproutvideo: Fix extractor (#13610) by bashonly
- thehighwire: Add extractor (#13505) by swayll
- twitch: Improve error handling (#13618) by bashonly
- unitednationswebtv: Add extractor (#13538) by averageFOSSenjoyer
- vimeo
- youtube
- Do not require PO Token for premium accounts (#13640) by coletdjnz
- Ensure context params are consistent for web clients (#13701) by coletdjnz
- Extract global nsig helper functions (#13639) by bashonly, seproDev
- Fix subtitles extraction (#13659) by bashonly
- Log bad playability statuses of player responses (#13647) by coletdjnz
- Use impersonation for downloading subtitles (#13786) by bashonly
- tab: Fix subscriptions feed extraction (#13665) by bashonly
Downloader changes
Networking changes
- Request Handler
- requests
- Refactor default headers (#13785) by bashonly
- Work around partial read dropping data (#13599) by Grub4K (With fixes in c316416)
- requests
Misc. changes
test: download: Support playlist_maxcount
(#13433) by InvalidUsernameException
cleanup
Bump ruff to 0.12.x (#13596) by seproDev
Miscellaneous: 9951fdd by adamralph, bashonly, doe1080, hseg, InvalidUsernameException, seproDev
devscripts: Fix filename/directory Bash completions (#13620) by barsnick