Finamp
Jellyfin music player with offline downloads
Finamp is a free and open-source music client for Jellyfin built with Flutter for Android and iOS. It allows downloading albums and playlists for offline listening and supports gapless playback and transcoding.
Key features
- Offline music downloads
- Gapless playback
- Transcoded streaming
- Cross-platform mobile
Pros & cons
Strengths
- Reliable offline mode
- Active community
Trade-offs
- Mobile only
- Requires Jellyfin server
Finamp replaces
Last reviewed Sep 13, 2026 · 793 words
Finamp is the reason you might keep music in Jellyfin instead of running a separate Navidrome server. If you already have Jellyfin for films and television, adding a music library and installing Finamp gets you a proper phone music app with offline downloads, gapless playback and transcoded streaming, and it costs you nothing but a library scan. If you do not run Jellyfin, this app is not a reason to start; Navidrome plus any Subsonic client is a lighter path to the same result.
Finamp versus the Navidrome route
Both approaches end with a music library on your own disk and an app on your phone. The differences are practical. Navidrome is a single 100 MB-class binary purpose-built for music, with a dozen mature Subsonic clients on every platform. Jellyfin is a full media server that treats music as one library type among several, and Finamp is its one strong mobile music client.
Pick Finamp when Jellyfin is already running and you want one server, one user database and one set of backups. Pick Navidrome when music is the main event or when you want client choice, since Finamp is the only polished Jellyfin music app on iOS. The Jellyfin vs Navidrome comparison goes deeper, and the Navidrome guide covers the other side of the fork.
Downloads are the feature, and they work
Finamp is Flutter-based, MPL-2.0 licensed, 4,230 stars, and has been developed since 2021 for Android and iOS. Its defining feature is that you can mark an album, an artist, a playlist or a genre for download and the app will store the original files locally, then play them with no server connection at all. This is what separates it from most Subsonic-style clients, which cache opportunistically rather than sync deliberately.
Three settings determine whether downloads behave. First, transcoding: by default Finamp streams the original file, and you can set a transcode bitrate for streaming, with the server converting to AAC on the fly; downloads store the original unless you tell them otherwise, so a FLAC library downloads as FLAC at roughly 30 MB per track. Second, the download location on Android, which should be an SD card if you have one and a large library. Third, the "sync downloads on Wi-Fi only" style toggles, which keep a 20 GB collection from eating a mobile allowance.
A working iOS setup means the server must be reachable when you leave the house, or you must download before you go. Over Tailscale, the app behaves as if you were at home; without it, offline-marked content plays and everything else shows as unavailable, which is the correct behaviour rather than a bug.
The server side is where quality lives
Finamp is only as good as the Jellyfin library behind it, and Jellyfin's music handling is tag-driven. Time spent on tags is the whole game: consistent album artist tags, embedded cover art at 1000 by 1000 or larger, and correct disc and track numbers. Multi-disc albums with missing disc numbers become shuffled messes, and compilations without an album artist of "Various Artists" scatter across dozens of artist entries. Run a tagger such as MusicBrainz Picard once before the first scan; it is the best hour you will spend on this setup.
Gapless playback works when the files themselves carry correct encoder padding information, which is normal for FLAC and modern AAC and MP3 encodes but not for old rips. If a live album has clicks between tracks, the fix is re-encoding, not a Finamp setting.
Rough edges to expect
The app has been through a long interface redesign, and depending on the release you install, you may find two visual generations coexisting, with a beta toggle for the newer player screen. Lyrics support exists for embedded and sidecar files but is newer than the rest. Android Auto and CarPlay work, with the usual caveat that car interfaces expose a simplified browse tree. The catalogue lists this as mobile only, which is accurate: there is no desktop build, so on a laptop you use the Jellyfin web player, which is a much weaker music experience.
What I'd do
If you run Jellyfin and want music on your phone, install Finamp, tag your library properly first, set a streaming transcode around 256 kbps AAC for mobile data, and mark your ten most-played albums for download. If you do not run Jellyfin, set up Navidrome instead and skip this whole branch of the tree. For a household with one server and mixed media, Finamp is the better answer; for a music-first collector who wants client choice, it is not.
Compare Finamp
23 head-to-head comparisons.
- Finamp vs Navidrome
- Finamp vs Koel
- Finamp vs Feishin
- Finamp vs Mopidy
- Finamp vs Lidarr
- Finamp vs musikcube
- Finamp vs Black Candy
- Finamp vs Ampache
- Finamp vs Polaris
- Finamp vs Funkwhale
- Finamp vs OwnTone
- Finamp vs Gonic
- Finamp vs mStream
- Finamp vs Supersonic
- Finamp vs Tempo
- Finamp vs Swing Music
- Finamp vs Airsonic
- Finamp vs Sonixd
- Finamp vs Lyrion Music Server
- Finamp vs Musicn
- Finamp vs Amperfy
- Finamp vs LMS
- Finamp vs Airsonic-Advanced
Similar media servers apps
Jellyfin
Media ServersFree software media system for streaming your library
Replaces Plex, Emby
qBittorrent
Media ServersBittorrent client that aims to be a good alternative to all other
Replaces µTorrent
SRS
Media ServersA simple, high efficiency and real-time video server, supports RTMP,
Navidrome
Media ServersModern music streaming server for your collection
Replaces Spotify
Kodi
Media ServersOpen-source home theater and media center
Replaces Plex
Koel
Media ServersPersonal music streaming server with an elegant interface
Replaces Spotify