# SimpMusic: a YouTube Music client for Android and desktop, built on a hidden API

> SimpMusic is a GPL-3.0 Compose Multiplatform client that pulls playback and browsing data from YouTube Music's hidden API, adds Spotify Canvas and lyrics, and ships as both a FOSS and a crash-reporting Full build. The README calls it beta and warns that player errors are expected.

**maxrave-dev/SimpMusic** — Project brief: A cross-platform music app using YouTube Music for backend. Use Spotify Web API and some tricks to get Spotify Canvas and Lyrics Thanks to InnerTune for the idea to get data from YouTube Music.

- Repository: https://github.com/maxrave-dev/SimpMusic
- Website: https://simpmusic.org/
- Stars: 11,304 · Forks: 599
- Language: Kotlin
- License: GPL-3.0
- Published: 2026-08-08 · Updated: 2026-08-18 · Language: en
- Canonical page: https://hysenlabs.com/projects/maxrave-dev-simpmusic

## The problem SimpMusic solves, and who it is aimed at

YouTube Music has no official desktop client, and the Android app carries ads and lacks the extras people expect from a modern player: word-by-word lyrics, crossfade, an equalizer, playlist import from other services. SimpMusic is an attempt to fill that gap with a free client that talks to YouTube Music directly. The README describes it as "a FOSS YouTube Music client for Android and Desktop with many features from Spotify, SponsorBlock, ReturnYouTubeDislike", built with Compose Multiplatform.

The target user is someone who already has a YouTube Music account or is willing to use YouTube Music data without paying for Premium. The feature list includes playing "from YouTube Music or YouTube for free, without ads and in the background", which is the core promise. Around that, the app layers Spotify Canvas, SponsorBlock segment skipping, Return YouTube Dislike vote data, Last.fm scrobbling, Android Auto, Discord Rich Presence, and a Listen Together mode that the README says is compatible with Metrolist.

It is not a general-purpose audio player. There is no local library scanner in the feature list, no podcast feed reader beyond YouTube Music's own Podcast tab, and no support for streaming services other than YouTube Music and YouTube. If your library lives in files on a disk, this is the wrong shape of tool.

## How SimpMusic gets its data: hidden APIs, tricks and fallbacks

The architecture is a client in front of other people's endpoints. The README states plainly: "This app uses hidden API from YouTube Music with some tricks to get data from YouTube Music." It credits InnerTune for the idea and SmartTube for help extracting the streaming URL of YouTube Music. That is the whole data path: no SimpMusic-operated catalog server sits in the middle for the FOSS build.

Lyrics come from several places. The README lists SimpMusic Lyrics as the main source, LRCLIB as an alternative, plus Spotify lyrics (which require login) and YouTube Transcript. Spotify Web API is also used for Spotify Canvas. The project maintains its own chart endpoint at chart.simpmusic.org.

Two consequences follow from this design. First, quality depends on how well the app matches a YouTube videoId to a lyric record. The README's own FAQ admits the matching uses "String Matcher" and "Duration", and that "sometimes, some songs or videos get the wrong lyrics". Second, because the app depends on YouTube Music, the README warns that "the player error will happen and it's normally, please don't ask me about the stable state of this app". That is an unusual sentence to find in a project's own README, and it should be read as a statement about the design, not modesty.

The repository layout reflects the multi-target build: androidApp/, desktopApp/, composeApp/, and a core/ directory holding service modules such as the kotlinYtmusicScraper package referenced in the privacy section. Gradle Kotlin DSL files sit at the top level alongside a build_and_sign_apk.sh script and a conveyor.conf.

## Installing SimpMusic on Android

The README's Download block points at four distribution channels: F-Droid, the IzzyOnDroid repository, OpenAPK, and GitHub releases. There is also a nightly build page at simpmusic.org/nightly-download. If you use F-Droid, the package id is com.maxrave.simpmusic, which is the identifier you search for in the client.

If you install from GitHub releases instead, you are downloading an APK directly. The repository contains a build_and_sign_apk.sh script and a Gradle wrapper, so building from source is possible, but the README does not present that as the normal path and does not document the Gradle task names for each target.

After installing, sign in to YouTube Music inside the app. The README links a desktop login guide, and for Discord login it points to an external gist. On Android, the README notes multi-YouTube-account support, so the account you sign in with determines your recommendations and library.

## Installing SimpMusic on Windows, macOS and Linux

The desktop build is separate from the Android one, and the README gives a per-platform file list. For Windows you download the .msix package and run install.bat. For macOS you download the .dmg. For Linux you download the .AppImage, which the README describes as suitable for all Linux distributions.

The README does not give shell commands for launching the desktop build, so there is nothing to quote here beyond the file names above. What it does document are two desktop limitations that matter more than the install mechanics. Some Linux distributions may have stability issues, which it attributes to an upstream JetBrains issue. And on ARM64 Windows and Linux, the README says to use the x64 build, so there is no native ARM desktop artifact.

Login on desktop is not the same as on Android. The README links a dedicated page at simpmusic.org/blogs/en/how-to-log-in-on-desktop-app and a separate Discord login guide hosted as a GitHub gist. Budget time for this step: it is the part of the desktop setup the README treats as needing its own documentation.

## Where SimpMusic breaks, and when it is the wrong tool

The README is unusually direct about failure. It carries a warning block: "This app is in the beta stage, so it may have many bugs and make it crash." It then adds that because the app depends on YouTube Music, player errors will happen and are normal. Anyone evaluating SimpMusic for a daily driver should take that at face value. A client built on a hidden API inherits every change the upstream makes, and there is no compatibility contract to appeal to.

Lyric mismatch is the second known failure mode. The README's FAQ explains that lyrics are matched to a YouTube videoId using string matching and duration, and that wrong lyrics therefore occur. Word-by-word lyrics, romanization for twelve languages and AI translation (which needs an OpenAI or Gemini API key) all sit downstream of that matching step.

There are also scope limits. AI lyrics translation is marked BETA and requires you to supply your own API key. Last.fm scrobbling is listed as a Full version feature, so it is not in the FOSS build. If you want a player with no network dependency at all, or one whose metadata source is a documented public API with a deprecation policy, SimpMusic is the wrong choice by construction.

## FOSS versus Full, and what that means for your data

SimpMusic ships in two flavours, and the difference is telemetry. The README states that the Full version uses Sentry crash reporting, and that "If you don't want to be collected crash data, you must use FOSS version." The repository layout confirms this is a build-flavour split rather than a runtime toggle: there are crashlytics/ and crashlytics-empty/ directories, and the same pattern appears for lastfm/ and lastfm-empty/, plus cast/ and cast-empty/.

On the FOSS side, the README says the app "doesn't have any tracker or third-party server for collecting user data". The one exception it names is the "Send back to Google" feature, which logged-in users can enable; when on, SimpMusic uses the YouTube Music Tracking API to send listening history and video records to Google so recommendations and artist support work. The README links the Ytmusic.kt source file as the API reference for that behaviour.

Note that the FOSS/Full split also gates features, not just telemetry. Last.fm scrobbling is described as a Full version feature, so choosing the privacy-preserving build costs you that integration. Check which build your download source serves before you install.

## How SimpMusic differs from a self-hosted or local-first player

The closest comparison in the same category is a client like InnerTune, which the README credits as its inspiration for pulling data from YouTube Music. Both are Android clients over the same upstream, but SimpMusic's stated differentiators are breadth: Compose Multiplatform targeting desktop as well as Android, Spotify Canvas, Listen Together rooms, home screen widgets, SimpMusic Wrapped and on-device listening analytics.

The more instructive contrast is with local-first players such as VLC or a self-hosted streaming setup. Those own their data: files on disk, a server you control, metadata from tags or a MusicBrainz-style database. SimpMusic owns none of it. Its catalog, its search results, its charts and its playback URLs all come from YouTube Music and YouTube through an undocumented interface. That trade buys you a catalog far larger than any personal library and features like SponsorBlock that only make sense on top of YouTube. It costs you any guarantee about tomorrow.

If your priority is that playback keeps working when an upstream endpoint changes shape, a local player is the safer architecture. If your priority is access to YouTube Music's catalog with a richer client than the official one, SimpMusic is aimed exactly at you.

## Conclusion

Adopt SimpMusic if you want YouTube Music browsing and playback on Android with a desktop build, and you accept the README's own beta warning that player errors are normal. Do not adopt it if you need a client whose data source is a documented, stable API, or if you object to an app that reads YouTube Music through a hidden API. Before installing, check which build you are getting: the Full version sends crash data to Sentry, and only the FOSS version avoids that. On desktop, verify your package first: Windows uses the .msix plus install.bat, macOS the .dmg, Linux the .AppImage, and the README notes some Linux distributions may have stability issues from an upstream JetBrains problem.

## FAQ

### Is SimpMusic free?

The README describes it as a FOSS YouTube Music client and lists free, ad-free background playback as the first feature. Some capabilities are tied to the Full build, such as Last.fm scrobbling, and high quality streams up to 256kbps are noted for YouTube Music Premium users.

### Is SimpMusic safe to use?

The README states the FOSS version has no tracker or third-party server collecting user data, while the Full version uses Sentry to collect crash data. The only data sent to Google is through the optional "Send back to Google" feature, which logged-in users can enable.

### How to install SimpMusic on Android?

The README's download section lists F-Droid, IzzyOnDroid, OpenAPK and GitHub releases, with the package id com.maxrave.simpmusic. Nightly builds are offered at simpmusic.org/nightly-download.

### How to install SimpMusic on Windows?

The README says to download the .msix package for Windows and run install.bat to install it. On ARM64 Windows it says to use the x64 build.

### How to install SimpMusic on PC?

The desktop section covers Windows, macOS and Linux: the .msix plus install.bat on Windows, the .dmg on macOS, and the .AppImage on Linux. The README notes some Linux distributions may have stability issues due to an upstream JetBrains problem.

### Is SimpMusic legal?

The README describes the app as using a hidden API from YouTube Music with tricks to get data, and credits InnerTune and SmartTube for the approach. It makes no statement about licensing or terms of service.

## Sources

- [Official documentation](https://simpmusic.org/)
- [Official README](https://github.com/maxrave-dev/SimpMusic#readme)
- [Project repository](https://github.com/maxrave-dev/SimpMusic)
- [Release notes](https://github.com/maxrave-dev/SimpMusic/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/maxrave-dev-simpmusic
