Fix: youtube-dl error ‘unable to extract uploader id’ (All Fixes)

YouTube-dl shows the ‘unable to extract uploader id’ error when it fails to analyze the provided video URL. Due to this, the uploader ID goes missing, which is essential to finding and downloading a particular video.

The reason for this error showing up can be that you’ve got an outdated version of youtube-dl. It doesn’t matter which operating system you’re using; make sure the youtube-dl version is 2021.12.17.

You can check the version by running the following command in the command prompt:

$ youtube-dl -version

If it’s an older version, make sure to upgrade it. I’ll mention the steps for that below.

Apart from this, there are three more ways to fix this error, and each of them requires you to execute some commands.

1. Update youtube-dl

As I mentioned above, updating youtube-dl is necessary to make it function properly. The latest version is 2021.12.17, and no new ‘official’ update has been released after that. Though there’s a patched v2023.02.17 as well.

Having said that, below are the commands to update youtube-dl on different platforms:

For Windows: You need to go to the location where youtube-dl was downloaded. Afterward, type cmd on the location bar and execute the following command.

youtube-dl -U

For macOS:

brew upgrade youtube-dl

For Self-Updating

youtube-dl --update

Using Python

pip install -U youtube-dl

2. Reinstall youtube-dl

If the update doesn’t work, then reinstall the youtube-dl download manager altogether. Again, I will list the commands and steps for each operating system. You don’t need any commands on Windows, but they will do on Linux and Mac.

On Windows

  1. Delete the youtube-dl.exe file and empty the recycle bin.
  2. Now go to the youtube-dl download page.
  3. Click on youtube-dl.exe to start the download.

  1. Copy the file to any folder you want or create a new one.

On macOS

  1. Find the path where youtube-dl is installed and run the following command in
    $rm -rf /usr/local/bin/youtube-dl
  2. Replace /usr/local/bin/youtube-dl with your path location.
  3. Now make sure you have Homebrew installed on Mac.
  4. If not, use this command to install it:
    /bin/bash -c "$(curl -fsSL "
  5. Otherwise, download the MacPorts.
  6. To install youtube-dl with brew, execute the following command:
    sudo brew install youtube-dl
  7. To install youtube-dl with MacPorts, execute the following command:
    sudo port install youtube-dl

On Linux

  1. Run the command below to uninstall youtube-dl:
    $ sudo apt remove youtube-dl
  2. Run the command below to install youtube-dl again:
    $ sudo apt install youtube-dl

Now try and download some videos and see if the ‘unable to extract uploader id’ error shows up or not.

3. Install the Master Branch of youtube-dl

Installing the master branch (youtube-dlp) and importing it as youtube-dl has worked for many users. This method will be completed by using just two commands, and the uploader id problem will be gone. But before that, make sure you have Python on your system.

Here’s what you need to do:

  1. Reinstall the library from Github by executing the following command:
    python3 -m pip install --force-reinstall
  2. Once the download completes, import the library as follows:
    import yt_dlp as youtube_dl
  3. You can also download a patched version of this library with the following command:
    python3 -m pip install yt-dlp==2023.02.17.334

4. Install and Use yt-dlp

yt-dlp is a fork of youtube-dl and is based on youtube-dlc which is now inactive. With yt-dlp, you get the combined features of youtube-dl and dlc. There are many new features in it, including support for clips, stories, filtered search, and more.

So, if youtube-dl keeps showing the ‘unable to extract uploader id’ error, it’s a good idea to start using yt-dlp.

Here’s how you can install it on different OSes:

  1. Go to the GitHub page of yt-dlp.
  2. Go to the Release Files section.

  1. Click on the file you want to download on your OS and it will start downloading.

Alternatively, you can use commands instead of these steps.

For UNIX-like OSes (Linux, BSD, MacOS)

Use either of the three ways:

sudo curl -L -o /usr/local/bin/yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp # Make executable
sudo wget -O /usr/local/bin/yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp # Make executable
sudo aria2c --dir /usr/local/bin -o yt-dlp
sudo chmod a+rx /usr/local/bin/yt-dlp # Make executable

Using pip (Python)

python3 -m pip install -U yt-dlp

To install without optional dependencies:

python3 -m pip install --no-deps -U yt-dlp

Using Homebrew

brew install yt-dlp

Using Pacman

sudo pacman -Syu yt-dlp

With APT

sudo add-apt-repository ppa:tomtomtom/yt-dlp # Add ppa repo to apt
sudo apt update # Update package list
sudo apt install yt-dlp # Install yt-dlp

With MacPorts

sudo port install yt-dlp

Abdullah Iqbal

Abdullah is a Google IT certified Help Desk Technician with extensive experience in providing technical support to system users. He has a proven track record of effectively resolving IT issues, and is adept at working with tools like Jira and ZenDesk to efficiently manage support tickets. Abdullah is committed to staying up-to-date with the latest technological advancements and constantly seeks to improve his skills and knowledge through professional development opportunities.