A command-line utility to download songs and playlists directly from Spotify
Find a file
2025-12-05 10:03:39 -03:00
.github/workflows Update create-release.yml 2025-07-07 23:12:26 +02:00
src Updated to include rate-limiting with new flags 2025-12-04 12:33:49 -03:00
.gitignore MP3 Support (#14) 2024-05-17 18:06:31 +02:00
.gitmodules Add files 2020-10-25 01:39:20 +02:00
Cargo.lock update deps 2025-12-04 12:32:02 -03:00
Cargo.toml update deps 2025-12-04 12:32:02 -03:00
CHANGELOG.md docs: update CHANGELOG.md for v0.9.2 [skip ci] 2025-07-12 23:39:56 +00:00
LICENSE Add files 2020-10-25 01:39:20 +02:00
README.md update README 2025-12-05 10:03:39 -03:00

🎵 spotify-dl

A command line utility to download songs, podcasts, playlists and albums directly from Spotify.

This is a fork of spotify-dl with additional features:

  • Autosync Mode
  • Rate Limiting
  • Track Numbers
  • Support librespot>=0.8.0
  • Fix for ".feat" songs

Important

A Spotify Premium account is required.

Caution

Usage of this software may infringe Spotify's terms of service or your local legislation. Use it under your own risk.

🚀 Features

  • Folder sync feature - no need to enter url after first use.
  • Download individual tracks, podcasts, playlists or full albums.
  • Built with Rust for speed and efficiency.
  • Supports metadata tagging and organized file output.

⚙️ Installation

You can install it using cargo, homebrew, from source or using a pre-built binary from the releases page.

From crates.io using cargo

cargo install spotify-dl

Using homebrew (macOs)

brew tap guillemcastro/spotify-dl
brew install spotify-dl

From source

cargo install --git https://github.com/GuillemCastro/spotify-dl.git

🧭 Usage

spotify-dl 0.9.0
A commandline utility to download music directly from Spotify

USAGE:
    spotify-dl.exe [FLAGS] [OPTIONS] <tracks>...

FLAGS:
    -F, --force      Force download even if the file already exists
    -h, --help       Prints help information
    -r, --reset      Reset last run cache
    -V, --version    Prints version information

OPTIONS:
    -d, --destination <destination>    The directory where the songs will be downloaded
    -f, --format <format>              The format to download the tracks in. Default is flac. [default: flac]
    -t, --parallel <parallel>          Number of parallel downloads. Default is 5. [default: 5]

ARGS:
    <tracks>...    A list of Spotify URIs or URLs (songs, podcasts, playlists or albums)

Songs, playlists and albums must be passed as Spotify URIs or URLs (e.g. spotify:track:123456789abcdefghABCDEF for songs and spotify:playlist:123456789abcdefghABCDEF for playlists or https://open.spotify.com/playlist/123456789abcdefghABCDEF?si=1234567890).

📄 License

spotify-dl is licensed under the MIT license. See LICENSE.