Need help with youtube-dl-webui?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

293 Stars 120 Forks GNU General Public License v2.0 303 Commits 18 Opened issues


Another webui for youtube-dl powered by Flask.

Services available


Need anything else?

Contributors list

# 149,342
247 commits
# 352,838
20 commits


Another webui for youtube-dl powered by Flask.

youtube-dl is a powerful command-line based tool aims to download videos from and a few more sites. However, it lacks a manager to control and schedule all downloading tasks separately. Also, for people who like me prefers to deploy downloading tasks on a home-server, the ability to manage tasks remotely comes essentially.

There has been a webui for youtube available on Github, Youtube-dl-WebUI. The drawbacks of this project is that it writes in PHP and youtube-dl writes in python. What makes things more worse is that, to use PHP, a web server is needly inevitably. This complexes service deployment and makes it not very 'light'.

issues are welcomed!




This project is writen under the python 3.6, I haven't test the codes in any other python versions. So, I hightly recommend you to use python 3.6 to avoid any troubles.

Also, we need ffmpeg for post processing. Lack of ffmpeg may case some funtions not working.


To install youtube-dl-webui, you have to firstly install youtube-dl and Flask, then simply execute the following command:

python install

How to use

Defaultly, youtube-dl-webui will find the configuration file in

directory named
. The configuration file, however, need not to be always placed in such a place. Instead, the
option is used to point out the configuration file.

Configuration file is json formatted. An example configuration file can be found in the root directory of project.

Currently, not to much options available, use

to find out all of them.

After everything is ready, simply execute:

youtube-dl-webui -c CONFIGURATION_FILE

A server will be started locally. The default port is 5000.

Note, you have to remove proxy configuration option in your config file. I write it here for illustrating all valid config options.

Docker image

There also exists a docker image to easy the deployment. Check HERE for more.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.