Available OptionsΒΆ

This page contains a complete list of all available options with their description. For advanced usage of the program check out the advanced usage docs.

usage: spotdl [-h]
              (-s SONG [SONG ...] | -l LIST | -p PLAYLIST | -a ALBUM | -aa ALL_ALBUMS | -u USERNAME)
              [--write-m3u] [-m] [-nm] [-ne] [--overwrite {prompt,force,skip}]
              [-q {best,worst}] [-i {opus,automatic,m4a}]
              [-o {flac,mp3,ogg,opus,m4a}] [--write-to WRITE_TO]
              [-f OUTPUT_FILE] [--trim-silence] [-sf SEARCH_FORMAT] [-d] [-ns]
              [-sk SKIP_FILE] [-w WRITE_SUCCESSFUL_FILE]
              [-ll {INFO,WARNING,ERROR,DEBUG}] [-c CONFIG] [--remove-config]
              [-V]

Download and convert tracks from Spotify, Youtube, etc.

optional arguments:
  -h, --help            show this help message and exit
  -s SONG [SONG ...], --song SONG [SONG ...]
                        download track(s) by spotify link, name, or youtube
                        url. (default: None)
  -l LIST, --list LIST  download tracks from a file (WARNING: this file will
                        be modified!) (default: None)
  -p PLAYLIST, --playlist PLAYLIST
                        load tracks from playlist URL into <playlist_name>.txt
                        or if `--write-to=<path/to/file.txt>` has been passed
                        (default: None)
  -a ALBUM, --album ALBUM
                        load tracks from album URL into <album_name>.txt or if
                        `--write-to=<path/to/file.txt>` has been passed
                        (default: None)
  -aa ALL_ALBUMS, --all-albums ALL_ALBUMS
                        load all tracks from artist URL into <artist_name>.txt
                        or if `--write-to=<path/to/file.txt>` has been passed
                        (default: None)
  -u USERNAME, --username USERNAME
                        load tracks from user's playlist into
                        <playlist_name>.txt or if `--write-
                        to=<path/to/file.txt>` has been passed (default: None)
  --write-m3u           generate an .m3u playlist file with youtube links
                        given a text file containing tracks (default: False)
  -m, --manual          choose the track to download manually from a list of
                        matching tracks (default: False)
  -nm, --no-metadata    do not embed metadata in tracks (default: False)
  -ne, --no-encode      do not encode media using FFmpeg (default: False)
  --overwrite {prompt,force,skip}
                        change the overwrite policy (default: prompt)
  -q {best,worst}, --quality {best,worst}
                        preferred audio quality (default: best)
  -i {opus,automatic,m4a}, --input-ext {opus,automatic,m4a}
                        preferred input format (default: automatic)
  -o {flac,mp3,ogg,opus,m4a}, --output-ext {flac,mp3,ogg,opus,m4a}
                        preferred output format (default: mp3)
  --write-to WRITE_TO   write tracks from Spotify playlist, album, etc. to
                        this file (default: None)
  -f OUTPUT_FILE, --output-file OUTPUT_FILE
                        path where to write the downloaded track to, special
                        tags are to be surrounded by curly braces. Possible
                        tags: ('{track-name}', '{artist}', '{album}', '{album-
                        artist}', '{genre}', '{disc-number}', '{duration}',
                        '{year}', '{original-date}', '{track-number}',
                        '{total-tracks}', '{isrc}', '{track-id}', '{output-
                        ext}') (default: {artist} - {track-name}.{output-ext})
  --trim-silence        remove silence from the start of the audio (default:
                        False)
  -sf SEARCH_FORMAT, --search-format SEARCH_FORMAT
                        search format to search for on YouTube, special tags
                        are to be surrounded by curly braces. Possible tags:
                        ('{track-name}', '{artist}', '{album}', '{album-
                        artist}', '{genre}', '{disc-number}', '{duration}',
                        '{year}', '{original-date}', '{track-number}',
                        '{total-tracks}', '{isrc}', '{track-id}', '{output-
                        ext}') (default: {artist} - {track-name} lyrics)
  -d, --dry-run         show only track title and YouTube URL, and then skip
                        to the next track (if any) (default: False)
  -ns, --no-spaces      replace spaces in metadata values with underscores
                        when generating filenames (default: False)
  -sk SKIP_FILE, --skip-file SKIP_FILE
                        path to file containing tracks to skip (default: None)
  -w WRITE_SUCCESSFUL_FILE, --write-successful-file WRITE_SUCCESSFUL_FILE
                        path to file to write successful tracks to (default:
                        None)
  -ll {INFO,WARNING,ERROR,DEBUG}, --log-level {INFO,WARNING,ERROR,DEBUG}
                        set log verbosity (default: INFO)
  -c CONFIG, --config CONFIG
                        path to custom config.yml file (default:
                        /home/docs/.config/spotdl/config.yml)
  --remove-config       remove previously saved config (default: False)
  -V, --version         show program's version number and exit