Anyone who has built a music collection over the years, perhaps by ripping their own CDs or buying DRM-free digital albums, often faces a dilemma: the collection lives on a disk, but listening happens mostly on the phone. Navidrome is a free, lightweight and fast music server that turns that folder into a personal streaming service, playable from any device. Unlike a general-purpose media server, it is designed only for music, and it shows.
Why a server dedicated to music
A media server for films and series can also handle music, but the needs are different. A music collection has tens of thousands of tracks, artists appearing on compilations, multi-disc releases, remastered versions and overlapping genres. Navidrome is written in Go, uses very few resources even with large libraries, and reads metadata directly from the files' tags, without trying to guess it from folder names.
Tags are everything
Navidrome relies on the tags embedded in audio files. If the tags are messy, the library will be too. The most important fields to look after:
| Tag | What it is for |
|---|---|
| Album Artist | Correctly groups compilations and collaborations |
| Album | The title of the record |
| Track and disc number | Correct order, even in box sets |
| Year or date | Chronological ordering of the discography |
| Genre | Browsing and playlists |
| Cover art | Embedded image or a cover.jpg file in the folder |
The most common mistake concerns compilations: if each track has a different artist and the album artist is missing, the record splits into many separate albums. Setting «Various Artists» as the album artist fixes the problem. Tagging tools such as MusicBrainz Picard help tidy large collections by matching them against a public database.
Installation
Navidrome installs from a container image or a single binary. Two paths are enough: the music folder, mounted read-only, and a data folder holding the database and cache. On first access you create the administrator and the library scan starts on its own; later scans pick up added or modified files.
Mounting the music read-only is a good habit: the server has no reason to modify the files, and a mistake can never damage them.
Listening on the phone
Navidrome has a modern web interface, but its real strength is compatibility with the Subsonic API, a de facto standard supported by many applications. There are clients for Android, iOS, desktop computers and even for some car systems through the phone. Features to look for in a client:
- Offline playback: download albums and playlists to the phone before a trip.
- Smart caching: keep the most frequently played tracks locally.
- Gapless playback between tracks, important for live albums and classical music.
- Volume normalisation based on ReplayGain tags, if present in the files.
Transcoding and mobile data
A collection in a lossless format such as FLAC is ideal at home but weighs heavily on mobile data. Navidrome can convert tracks on the fly to a compressed format, such as Opus or MP3, using ffmpeg. You can set different profiles for each client: full quality on the home Wi-Fi, a reduced bitrate when you are out. Opus in particular offers good quality at modest bitrates and is supported by many modern clients.
Playlists and discovery
Besides manual playlists, Navidrome supports smart playlists: files with the .nsp extension that describe rules, for example «highly rated tracks from the nineties» or «recently played». They update themselves when the library changes. Star ratings and favourites, synchronised across all clients, help you build a map of your tastes over time.
If you wish, you can send your listens to scrobbling services such as ListenBrainz or Last.fm to keep a history. It is a choice: anyone who prefers their listening to stay at home can simply leave it off.
Several people, one library
In a family everyone has different tastes. Navidrome lets you create separate users: the library is shared, but favourites, playlists, ratings and listening history are personal. That way each person's statistics and smart playlists remain meaningful.
In short
- Navidrome is a lightweight music server that reads metadata from file tags.
- Well-kept tags, especially the album artist, make the library tidy.
- The music should be mounted read-only.
- The Subsonic API opens access to many clients, with offline playback.
- Opus transcoding and separate users adapt the service to different networks and people.