flag
Print help text and exit
flag
Print program version and exit
flag
Update this program to the latest version
flag
default:"true"
Do not check for updates
string
Upgrade/downgrade to a specific version. Format:
[CHANNEL]@[TAG]CHANNEL can be a repository as well. CHANNEL and TAG default to “stable” and “latest” respectively if omitted.Supported channels: stable, nightly, masterExample:Error Handling
flag
Ignore download and postprocessing errors. The download will be considered successful even if the postprocessing fails
flag
default:"true"
Continue with next video on download errors; e.g. to skip unavailable videos in a playlist
flag
Abort downloading of further videos if an error occursAlias:
--no-ignore-errorsExtractors
flag
List all supported extractors and exit
flag
Output descriptions of all supported extractors and exit
string
Extractor names to use separated by commas. You can also use regexes, “all”, “default” and “end” (end URL matching)Prefix the name with a ”-” to exclude it. Use
--list-extractors for a list of extractor names.Alias: --iesExample:string
Use this prefix for unqualified URLsValues:
auto- Let yt-dlp guessauto_warning- Emit a warning when guessingerror- Throw an errorfixup_error(default) - Repair broken URLs, but emit an error if not possible
Configuration
flag
Don’t load any more configuration files except those given to
--config-locationsFor backward compatibility, if this option is found inside the system configuration file, the user configuration is not loaded.Alias: --no-configflag
default:"true"
Do not load any custom configuration files. When given inside a configuration file, ignore all previous
--config-locations defined in the current filestring
Location of the main configuration file; either the path to the config or its containing directory (”-” for stdin)Can be used multiple times and inside other configuration files
Plugins
string
Path to an additional directory to search for plugins. This option can be used multiple times to add multiple directories.Use “default” to search the default plugin directories
flag
Clear plugin directories to search, including defaults and those provided by previous
--plugin-dirsJavaScript Runtime
string
Additional JavaScript runtime to enable, with an optional location for the runtimeFormat:
RUNTIME[:PATH] where PATH is either the path to the binary or its containing directoryThis option can be used multiple times to enable multiple runtimes.Supported runtimes (in priority order): deno, node, quickjs, bunOnly “deno” is enabled by default. The highest priority runtime that is both enabled and available will be used.flag
Clear JavaScript runtimes to enable, including defaults and those provided by previous
--js-runtimesRemote Components
string
Remote components to allow yt-dlp to fetch when requiredThis option is currently not needed if you are using an official executable or have the requisite version of the yt-dlp-ejs package installed.Supported values:
ejs:npm- External JavaScript components from npmejs:github- External JavaScript components from yt-dlp-ejs GitHub
flag
Disallow fetching of all remote components, including any previously allowed by
--remote-components or defaultsPlaylist Options
flag
Do not extract a playlist’s URL result entries; some entry metadata may be missing and downloading may be bypassed
flag
default:"true"
Fully extract the videos of a playlist
Livestream Options
flag
Download livestreams from the startCurrently experimental and only supported for YouTube, Twitch, and TVer
flag
default:"true"
Download livestreams from the current time
string
Wait for scheduled streams to become availablePass the minimum number of seconds (or range) to wait between retriesFormat:
MIN[-MAX]flag
default:"true"
Do not wait for scheduled streams
flag
Mark videos watched (even with
--simulate)flag
default:"true"
Do not mark videos watched
Output Formatting
string
Whether to emit color codes in output, optionally prefixed by the STREAM (stdout or stderr) to apply the setting toFormat:
[STREAM:]POLICYValues:alwaysauto(default)neverno_color- Use non color terminal sequencesauto-tty- Decide based on terminal support onlyno_color-tty
Compatibility
string
Options that can help keep compatibility with youtube-dl or youtube-dlc configurations by reverting some of the changes made in yt-dlpSee “Differences in default behavior” for details
Aliases
string
Create aliases for an option stringUnless an alias starts with a dash ”-”, it is prefixed with ”—”. Arguments are parsed according to the Python string formatting mini-language.This option can be used multiple times. Each alias may be triggered a maximum of 100 times as a safety measure.Example:
string
Applies a predefined set of optionsAvailable presets:
mp3, aac, mp4, mkv, sleepSee the “Preset Aliases” section for more info. This option can be used multiple times.Example:Verbosity and Simulation
flag
Activate quiet modeIf used with
--verbose, print the log to stderrExample:flag
default:"true"
Deactivate quiet mode
flag
Ignore warnings
flag
Do not download the video and do not write anything to diskExample:
flag
default:"true"
Download the video even if printing/listing options are used
flag
Ignore “No video formats” errorUseful for extracting metadata even if the videos are not actually available for download (experimental)
flag
default:"true"
Throw error when no downloadable video formats are found
flag
Do not download the video but write all related filesAlias:
--no-downloadstring
Field name or output template to print to screen, optionally prefixed with when to print it, separated by a ”:”Format:
[WHEN:]TEMPLATESupported values of “WHEN” are the same as that of --use-postprocessor (default: video). Implies --quiet. Implies --simulate unless --no-simulate or later stages of WHEN are used.This option can be used multiple times.Example:string
Append given template to the fileFormat:
[WHEN:]TEMPLATE FILEThe values of WHEN and TEMPLATE are the same as that of --print. FILE uses the same syntax as the output template.This option can be used multiple times.Example:flag
Quiet, but print JSON information for each videoSimulate unless
--no-simulate is used. See “OUTPUT TEMPLATE” for a description of available keys.Example:flag
Quiet, but print JSON information for each URL or infojson passedSimulate unless
--no-simulate is used. If the URL refers to a playlist, the whole playlist information is dumped in a single line.flag
Force download archive entries to be written as far as no errors occur, even if -s or another simulation option is usedAlias:
--force-download-archiveflag
Output progress bar as new lines
flag
Do not print progress bar
flag
Show progress bar, even if in quiet mode
flag
Display progress in console titlebar
string
Template for progress outputs, optionally prefixed by the TYPESFormat:
[TYPES:]TEMPLATEExample:flag
Print various debugging informationExample:
flag
Print downloaded pages encoded using base64 to debug problems (very verbose)
flag
Write downloaded intermediary pages to files in the current directory to debug problems
flag
Display sent and read HTTP traffic
Workarounds
string
Force the specified encoding (experimental)
flag
Explicitly allow HTTPS connection to servers that do not support RFC 5746 secure renegotiation
flag
Suppress HTTPS certificate validation
flag
Use an unencrypted connection to retrieve information about the videoCurrently supported only for YouTube
string
Specify a custom HTTP header and its value, separated by a colon ”:”You can use this option multiple times.Example:
flag
Work around terminals that lack bidirectional text supportRequires bidiv or fribidi executable in PATH
number
Number of seconds to sleep between requests during data extractionExample:
number
Number of seconds to sleep before each downloadThis is the minimum time to sleep when used along with
--max-sleep-intervalAlias: --min-sleep-intervalExample:number
Maximum number of seconds to sleepCan only be used along with
--min-sleep-intervalExample:number
Number of seconds to sleep before each subtitle download