
155 MB
Android 8.0+
86
arm64-v8a, armeabi-v7a, x86, x86_64
Verified safeScanned with ClamAV, APKiD, and Quark-Engine. No threats detected.
What's New
https://github.com/rawnaldclark/Stash/compare/v0.9.15...v0.9.16/
Description
Stash is an offline-first Android music player that syncs your liked songs, playlists, daily mixes, and discover mixes from both Spotify and YouTube Music into a single unified local library. Tracks are downloaded as high-quality FLAC audio.
Stash is not an online streaming service. It's a personal-library tool for people who already have Spotify or YouTube Music accounts and want their library available offline on their terms. Studio quality tracks, they're yours to keep.
Features
- Offline everything — tracks download as high-quality lossless audio
- Bulletproof matching — finds the right version of tracks 99% of the time
- Custom playlists — create your own playlists and save tracks to them from anywhere.
- Spotify & YT sync preferences — choose exactly which playlists, liked songs, daily mixes, and discovery mixes to sync. Individual toggles for each. Don't want Daily Mix 3? Turn it off.
- Expanded Spotify mix detection — Release Radar, Discover Weekly, On Repeat, Daylist, Repeat Rewind, Time Capsule, and Daily Mixes 1-6 are all automatically detected when available. Each gets its own toggle.
- Refresh vs Accumulate sync modes — mixes can either replace their contents each sync (Refresh) or stack new tracks on top of what's already there (Accumulate). Your call.
- Parallel downloads — 8 simultaneous tracks. Background sync runs as a foreground service so it actually finishes with the phone locked.
- High-res album art
- Automatic update notifications — checks GitHub for new releases daily and notifies you when one is available.
- Full equalizer — 5-band EQ with presets, bass boost, and virtualizer
- Spotify sign-in built in — just log into Spotify inside the app
- Private by design — credentials encrypted with AES-256-GCM, no servers, no telemetry, nothing leaves your phone
- Free and open source — no subscriptions, no ads, GPL-3.0
First-Time Setup
Stash doesn't use Spotify's or YouTube's official APIs (they don't offer what Stash needs). Instead, it uses your login cookies. This sounds scary but takes about two minutes per service. Your cookies live only on your phone, encrypted with AES-256-GCM, and are sent only to Spotify and YouTube themselves — never to a Stash server (there isn't one).
🎵 Connect Spotify
- A computer or another device with a desktop browser (Chrome, Firefox, Edge, or Safari)
- Spotify account logged in on that browser
Option A — Sign in via the app (easiest)
1. Open Stash → Settings → tap Spotify under Accounts → tap Connect.
2. A Spotify login page will appear inside the app.
3. Sign in with your email/password, Google, Apple, or Facebook — whatever you normally use.
4. Once login succeeds, Stash extracts the cookie automatically. Done.
If the in-app login doesn't work for you, use Option B below.
Option B — Paste the cookie manually
1. On your computer, open https://open.spotify.com and make sure you're logged in.
2. Press F12 on your keyboard to open Developer Tools. A panel will open on the right or bottom of your browser.
3. Find the Application tab at the top of the DevTools panel (on Firefox it's called Storage). If you don't see it, click the >> arrows to find it.
4. In the left sidebar of that tab, expand Cookies → click https://open.spotify.com.
5. You'll see a list of cookies. Find the one named sp_dc.
6. Double-click the value next to sp_dc and copy it (Ctrl+C / Cmd+C). It's a long string of random characters.
7. Open Stash on your phone → Settings → tap Spotify → tap Connect → tap "Paste cookie" in the top-right corner.
8. Paste the sp_dc cookie into the dialog and tap Connect.
Tip: Some users have reported that cookies from incognito/private browsing windows can fail to sync. If you run into issues, try using your regular (non-incognito) browser window instead.
Why a cookie and not a password? Spotify's mobile login API doesn't allow third-party apps. The cookie approach lets Stash authenticate as your browser session does. The cookie is session-scoped and can be revoked by logging out of Spotify on the web.
📺 Connect YouTube Music
What you need
- A computer or another device with a desktop browser
- Your YouTube Music account logged in on that browser
Steps
1. On your computer, open https://music.youtube.com and make sure you're logged in.
2. Press F12 to open Developer Tools.
3. Click the Network tab at the top of DevTools.
4. Refresh the YouTube Music page (F5 / Cmd+R).
5. In the Network tab's filter/search box, type browse and press Enter.
6. Click any of the requests in the list (they should all start with browse).
7. Scroll down in the right panel until you find Request Headers.
8. Find the line starting with cookie: and copy the entire value after cookie: — it will be a very long string with many = and ; characters.
9. Open Stash on your phone → Settings → tap YouTube Music under Accounts → tap Connect.
10. Paste the full cookie string and tap Connect.
Stash will start fetching your YouTube Music daily mixes, discover mix, replay mix, and liked music.
Tip: Some users have reported that cookies from incognito/private browsing windows can fail to sync. If you run into issues, try using your regular (non-incognito) browser window instead.
Why the whole cookie header? YouTube uses multiple cookies together to authenticate (SAPISID, __Secure-3PAPISID, and LOGIN_INFO). Grabbing all of them at once is easier than finding each individually.
After setup
Once you've connected a service, head to the Sync tab. Before you hit Sync Now, expand the Spotify Sync Preferences card to pick exactly what you want — liked songs, specific playlists, daily mixes, discovery mixes like Release Radar and Discover Weekly, or all of the above. Each one gets its own toggle. Uncheck anything you don't care about and it won't waste your time or storage.
For mix playlists, you can also choose between Refresh mode (replaces the mix contents each sync, cleaning up old tracks) and Accumulate mode (stacks new tracks on top of what's already there). Refresh is the default and works well for most people.
The first sync takes a while depending on how much you're pulling (a library of 1000+ songs might take an hour or so — downloads run 8 at a time now, so it's faster than it used to be). After that, daily syncs just grab whatever's new. You can set it to run automatically on a schedule so your library stays current without you thinking about it.
Privacy and Security
- Nothing leaves your device except the API calls to Spotify and YouTube themselves.
- No analytics, no telemetry, no crash reporting to third parties.
- Cookies are encrypted at rest with AES-256-GCM via Google's Tink library.
- No Stash servers exist. There's no account, no backend, no "cloud sync" of anything.
- All code is open source and auditable — see the repo.
If you find a security issue, please see the responsible disclosure guidelines here:
https://github.com/rawnaldclark/Stash/blob/master/SECURITY.md
Legal Disclaimer
Stash is an independent, unofficial project. It is not affiliated with, endorsed by, or sponsored by Spotify AB, YouTube LLC, Google LLC, or Alphabet Inc. All trademarks are the property of their respective owners.
Stash is provided for personal use only as a tool for managing your own library. You are responsible for complying with the Terms of Service of any music service you use Stash with. Downloading copyrighted content without a license may be illegal in your jurisdiction. The Stash project accepts no responsibility for misuse.
License
Copyright © 2026 Rawnald Clark
Stash is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Rate this app
Ratings & reviews
No reviews yet.