spotDL is a command-line music downloader that retrieves songs from Spotify playlists by finding matches on YouTube and downloading them with album art, lyrics, and metadata.
The tool solves the problem of obtaining local copies of Spotify playlists by automating the process of searching YouTube for matching tracks and downloading them as audio files. It accepts Spotify URLs as input, locates corresponding videos on YouTube, and downloads the audio while embedding metadata such as artist, album, and cover art. The approach relies on yt-dlp for YouTube downloads and optionally uses Deno to handle videos marked as "made for kids" that might otherwise fail.
Developers should choose this tool if they need to archive Spotify playlists locally or work with music offline. It suits projects requiring bulk music downloads with preserved metadata rather than streaming-based solutions. The tool supports multiple installation methods including pip, prebuilt executables, Docker, and system-specific package managers. Beyond the default download operation, it offers a save operation to extract metadata from Spotify without downloading audio files, and a sync operation to keep local collections in sync with Spotify playlists.
The project maintains active development with regular updates to handle YouTube's evolving download requirements. The codebase shows responsiveness to platform changes, particularly in addressing edge cases like videos restricted to certain audiences. Documentation is comprehensive and kept synchronized across multiple formats, indicating sustained attention to user guidance. The tool receives ongoing refinement in its core matching and download logic to improve accuracy and reliability across different content types.