How to Use YouTube-dl (yt-dlp) to Download Videos

Learning how to use YouTube-dl, or more accurately today, yt-dlp, is a little like discovering the secret drawer in a hotel room: suddenly, a lot more options appear. yt-dlp is a powerful command-line video downloader that lets you save videos, audio, subtitles, thumbnails, and metadata from supported sites when you have the right to do so. It is fast, flexible, and beloved by people who would rather type one clean command than wrestle with five suspicious “Download Now!!!” buttons blinking like a carnival ride.

Before we go any further, let’s keep the grown-up pants on: downloading videos can violate a platform’s terms of service or copyright law if you do not own the content, do not have permission, or are not using an authorized download feature. YouTube, for example, restricts downloading content except when the service expressly allows it or when permission has been granted. So use yt-dlp responsibly: for your own uploads, public-domain content, Creative Commons material, internal training videos, backups you are allowed to keep, or other videos where you have clear rights.

With that said, yt-dlp is one of the best tools for legitimate video archiving, offline review, research workflows, creator backups, podcast extraction, subtitle collection, and media organization. This guide explains how to install yt-dlp, run basic commands, choose video quality, download audio, save playlists, fix common errors, and build a simple workflow that does not turn your Downloads folder into a digital junk drawer.

What Is yt-dlp, and How Is It Different from youtube-dl?

yt-dlp is a feature-rich fork of youtube-dl. In plain English, that means it started from the older youtube-dl project, then continued moving forward with more active updates, extra features, and better support for modern video sites. Many users still say “youtube-dl” out of habit, the same way some people call every tissue a Kleenex, but the tool most people should install today is yt-dlp.

yt-dlp works from the command line. You open Terminal, PowerShell, Command Prompt, or another shell, type a command, paste a video URL, and let the tool do the work. It can download the best available format by default, list all available formats, merge separate video and audio streams, extract audio, write subtitles, embed metadata, and organize files with custom names.

Important Legal and Ethical Reminder

yt-dlp is a tool, not a permission slip. The safe rule is simple: only download videos you own, have permission to download, or are clearly allowed to save under the platform’s rules and applicable law. YouTube Premium, for instance, provides official offline viewing inside YouTube’s apps for eligible videos, but that is not the same thing as a permanent local file you can redistribute.

Fair use may apply in limited situations such as criticism, research, teaching, commentary, or news reporting, but fair use is fact-specific and not a magic cape. Giving credit to the creator does not automatically make a download or reuse legal. When in doubt, ask for permission, use official download options, or consult a qualified legal professional.

How to Install yt-dlp

The best installation method depends on your operating system and comfort level. If you are new to command-line tools, package managers such as Homebrew, Chocolatey, or WinGet can make installation easier. If you use Python regularly, pip or pipx may feel more natural. The official yt-dlp release binary is also available for users who prefer a standalone executable.

Install yt-dlp on Windows

On Windows, you have several practical choices. WinGet is built into modern Windows systems and can install command-line applications from PowerShell or Windows Terminal.

If you use Chocolatey, run:

After installation, open a new terminal window and check whether yt-dlp is working:

If Windows says the command is not recognized, the tool may not be in your PATH yet. Restart your terminal first. If that does not work, confirm where yt-dlp was installed and add that folder to your system PATH.

Install yt-dlp on macOS

For most Mac users, Homebrew is the easiest method:

To update it later:

If macOS blocks a downloaded binary because of security settings, install through Homebrew or Python instead of randomly clicking around Gatekeeper warnings like you are defusing a movie bomb.

Install yt-dlp on Linux

Linux users can install yt-dlp through a system package manager, Python, or the official binary. On many systems, Python installation is reliable:

To update:

Some distributions also provide yt-dlp through their own repositories, but repository versions may lag behind. Since video sites change often, keeping yt-dlp current is not optional; it is the difference between “download complete” and “why is my terminal yelling at me?”

Install FFmpeg for the Best Results

yt-dlp can download many files on its own, but FFmpeg unlocks important features. It helps merge separate video and audio streams, convert audio formats, embed thumbnails, embed subtitles, and create cleaner final media files. Without FFmpeg, you may still get a download, but not always the quality or format you expected.

On macOS:

On Windows with WinGet:

On many Debian-based Linux systems:

After installing FFmpeg, confirm it works:

Basic yt-dlp Commands

Download a Single Video

The simplest yt-dlp command is beautifully boring:

By default, yt-dlp tries to download the best suitable version. If separate video and audio streams are available, yt-dlp can merge them when FFmpeg is installed.

Save the File with a Custom Name

Use the -o option to control the output filename:

This saves the file using the video title and original extension. For better organization, include the channel name or upload date:

That command creates folders by uploader, which is much better than letting 93 mystery files named “video.mp4” form a tiny civilization on your desktop.

Choose Video Quality

To see all available formats, run:

yt-dlp will display a format table with video resolutions, audio options, file extensions, codecs, and format IDs. To choose a specific format, use -f:

For a practical “best video plus best audio” command, use:

This tells yt-dlp to download the best video format that may include video, add the best audio when needed, and fall back to the best combined file if separate streams are unavailable.

Limit Video Resolution

If you want a smaller file, limit the height. For example, to download no higher than 720p:

This is useful when you need offline access but do not want one lecture video to eat your laptop storage like a hungry raccoon.

How to Download Audio with yt-dlp

To extract audio, use -x. This requires FFmpeg and FFprobe:

To save audio as MP3:

To save audio as M4A, which is often a good choice for quality and compatibility:

Audio extraction is great for your own lectures, interviews, public-domain talks, permission-based podcasts, or creator content where downloading is allowed. It is not a free pass to build a music library from copyrighted videos.

How to Download Subtitles and Captions

Subtitles are extremely useful for research, accessibility, language learning, and searchable archives. To list available subtitles:

To download human-created subtitles:

To download automatically generated captions:

To choose English subtitles and embed them into the final media file:

If you are creating a study archive, subtitles may be more valuable than the video itself. A searchable transcript can save you from rewatching a 48-minute webinar just to find the one sentence where someone mentioned “budget approval.”

How to Download a Playlist

yt-dlp can download playlists when you provide a playlist URL:

To number files in playlist order:

To download only selected playlist items, use --playlist-items:

This downloads only the first five items. It is a lifesaver when a playlist contains 217 videos and you only need the beginner section, not the entire cinematic universe.

Useful yt-dlp Options for Cleaner Downloads

Embed Metadata and Thumbnails

For a polished media library, embed metadata and thumbnails:

This can make files look better in media players because title, creator, chapter, and cover-art information may travel with the file.

Download the Thumbnail Separately

Keep a Download Archive

If you download from a large playlist over time, avoid duplicates with:

yt-dlp records completed downloads in archive.txt. Next time you run the command, it skips files already listed there.

Use a Configuration File

If you repeatedly use the same options, create a yt-dlp configuration file. For example, a simple config might include:

A configuration file turns yt-dlp from a tool you command manually into a tiny, obedient media assistant. It will not bring coffee, but honestly, neither will most software.

Common yt-dlp Problems and Fixes

Problem: “yt-dlp: command not found”

This usually means yt-dlp is not installed or your terminal cannot find it. Restart your terminal, check the installation path, and make sure the directory is included in your PATH environment variable.

Problem: Download Fails on a Site That Used to Work

Video websites change constantly. Update yt-dlp first:

If you installed through pip, use:

If you installed through Homebrew:

Problem: Audio and Video Are Separate

Install FFmpeg. Many high-quality streams are delivered as separate video-only and audio-only formats. yt-dlp can merge them, but FFmpeg does the heavy lifting.

Problem: File Names Look Messy

Use an output template. Include title, uploader, date, and extension. For example:

Best Practices for Using yt-dlp Safely and Efficiently

First, keep yt-dlp updated. A stale version is the number one cause of weird failures. Second, install FFmpeg early instead of waiting until your first merge error. Third, use folders and output templates from the beginning. Your future self will thank you, perhaps with snacks.

Fourth, do not hammer websites with aggressive repeated downloads. Be respectful of server resources, creator rights, and platform rules. Fifth, keep a download archive for recurring playlists. Sixth, test commands on one video before pointing yt-dlp at a massive playlist. That one habit can prevent a long evening of deleting files named in a format only a spreadsheet could love.

Specific Example: Download a Permitted Training Video Archive

Imagine your company has published internal training videos on a platform where offline backups are allowed. You want the best available quality, English subtitles, embedded metadata, thumbnails, organized folders, and no duplicate downloads. A strong command might look like this:

This command is practical because it handles quality, organization, captions, and duplicate prevention in one workflow. It is not the shortest command, but neither is a good sandwich recipe. Sometimes the extra ingredients matter.

of Real-World Experience Using yt-dlp

The first experience most people have with yt-dlp is usually a mix of delight and mild panic. You run one command, the terminal fills with progress bars, file names, format codes, percentages, speeds, and estimated times, and suddenly you feel like you have entered the engine room of the internet. The good news is that yt-dlp is far less intimidating once you understand the basic pattern: command, options, URL. Everything else is seasoning.

In real use, the biggest lesson is that organization matters more than cleverness. Beginners often download a few files directly into the Downloads folder and think, “I’ll sort these later.” This is how chaos begins. A week later, they have twenty files with similar names, three different extensions, missing subtitles, and no idea which version is the final one. A simple output template from day one prevents that mess. Saving files by uploader, date, and title makes a huge difference, especially for research, lectures, creator backups, or project archives.

Another lesson: install FFmpeg before you need it. Many users wait until yt-dlp says it cannot merge formats or extract audio properly. That moment usually happens at the least convenient time, such as five minutes before a meeting or right when the Wi-Fi starts behaving like it has personal issues. With FFmpeg installed, yt-dlp becomes much more capable. It can merge the best video and audio, convert files, embed thumbnails, and produce cleaner media files.

Subtitles are also underrated. When saving permitted educational videos, subtitles can turn a pile of media into a searchable knowledge base. Even if auto-generated captions are imperfect, they are often good enough to help locate a topic quickly. For students, journalists, researchers, and content teams, downloading subtitles alongside videos can save hours.

Updates are another real-world habit worth building. yt-dlp works in a constantly changing environment. Streaming platforms adjust layouts, formats, and access patterns. A command that worked last month may fail today simply because the site changed. Before troubleshooting deeply, update yt-dlp. It is the command-line equivalent of asking, “Did you turn it off and on again?” except it actually feels smarter.

Finally, responsible use is not just a legal box to check. It is part of keeping the web healthy. Creators rely on views, memberships, ads, licensing, and platform rules. yt-dlp is excellent for legitimate tasks: backing up your own uploads, preserving permission-based content, saving open educational material, processing internal videos, or extracting audio from recordings you own. Used thoughtfully, it is a professional tool. Used carelessly, it becomes a headache with a progress bar.

Conclusion

yt-dlp is one of the most capable command-line tools for downloading and organizing permitted video content. It can save single videos, playlists, audio, subtitles, thumbnails, and metadata with impressive control. The key is to install it properly, keep it updated, add FFmpeg, and use clear output templates so your files stay organized.

For beginners, start with the basics: download one permitted video, list available formats, try a custom filename, and test audio extraction. Once you are comfortable, move into playlists, subtitle workflows, metadata embedding, and archive files. Like any powerful tool, yt-dlp rewards careful use. Treat rights and platform rules seriously, keep your commands tidy, and your offline media workflow will feel less like a messy garage and more like a well-labeled library.

This site uses cookies to offer you a better browsing experience. By browsing this website, you agree to our use of cookies.