Skip to content
OnKey

Privacy & legal

OnKey runs on your Mac and never saves the music it listens to. Your recordings and learned songs stay on your Mac. This page lists everything it keeps and everything it sends.

Your MacEach song's notes and barsIts fingerprint and signatureThe lyrics and their timingTakes: your mic, scores, lyricsThe music's audio: analysed asit plays, never saved or sentLRCLIBartist, title, album,length: for lyricsiTunes Searchartist, title: coverShazama signature of themusic, never the mic;can be turned offOnKey never saves the music it listens to

What OnKey keeps on your Mac

Everything is in ~/Library/Application Support/audio.onkey.app/.

  • Learned songs (songs/): the singer's pitch line and note bars, a rhythm fingerprint and a Shazam signature of the music (to recognise the song and find your place), when each lyric line starts, and when each word was heard sung (times only, not the words).
  • Lyrics (lrclib/): LRCLIB's answers, kept up to 30 days (a day if there were none). A learned song keeps the lyrics its timings were made for, so the same words show every play. Lyrics are never uploaded. With Settings → “Show lyrics” off, kept lyrics are hidden (not deleted) and none are fetched.
  • Takes (takes/): a recording of your microphone (mic.m4a, about 0.5 MB a minute) so you can play it back, your scores, and the report, which includes the lyrics and their times. A take is only saved if you sang along with at least 10% of the singer's part. If the music was on speakers, some of it is in the recording too. Recordings are kept up to 2 GB in total. Past that the oldest go first, but never a favourite song's or a song's best take.
  • Records (records/), for diagnosing problems: a log file a day and a summary of each play (timings, CPU, memory, the build and the Mac). These are numbers and ids, with no audio or lyrics, though the log names the songs you played. Kept 30 days, at most 200 MB. They only leave your Mac if you attach a report to an issue yourself.
  • Your settings, any artist and title you typed for a YouTube video, the starter songs' covers, and a cache of the compiled models.

Forget a song in Library or delete a take in History and its files go to the Trash. To remove everything, quit OnKey and delete the folder above.

What OnKey never keeps

The music's audio, or the singer's voice separated from it. It's analysed in memory as it plays and never saved, uploaded, shared, or exported. (Your mic recording can contain it if you sang with the music on speakers.)

What leaves your Mac

Sent toWhat, and when
Shazam (Apple, via ShazamKit)A signature of up to 5 seconds of the music app's sound (never your microphone), not the audio itself. It's only sent to name a song OnKey hasn't learned when no music app says what's playing: YouTube, other apps, or Listen only. Spotify and Apple Music name their own songs, and songs you've sung before are recognised on your Mac with nothing sent. Settings → “Use Shazam to name new songs” turns it off, and then only songs already learned are recognised.
LRCLIBThe song's artist, title, album and length when a song starts, to fetch synced lyrics, then a search by name if that finds nothing. Answers are kept on your Mac for up to 30 days (a day if there were none), so a song played again isn't asked about again. LRCLIB is a free, community-run lyrics database. Nothing is sent with “Show lyrics” off.
iTunes Search and Lookup (Apple)The artist and title, to find an album cover (which links to its Apple Music page), also for older songs learned from Spotify. And the Apple Music id Shazam returned, for the song's length and album. The “Try these” starter covers are looked up once each, spaced out, and kept, so later visits send nothing.
Cover imagesOrdinary image requests to Spotify's, Apple's or YouTube's image servers when a cover is shown.
GitHubA check for a newer version of OnKey a minute after launch and then once a day, and the download if there is one. With Check for updates automatically off in Settings, it only checks when you press Check now.

Nothing else goes out: there's no account, no analytics, no crash reporting, and no server of mine. Your recordings are never uploaded. “Report a problem” shows you what's in its zip of numbers and logs, saves it on your Mac, and sends nothing. You choose whether to attach it to a GitHub issue. The models come inside the app, so it never downloads them.

This website (not the app) counts visits with Plausible. It uses no cookies and nothing that identifies you, and only keeps totals, such as how many people visited, where from, and how many clicked Download. The star count on the GitHub buttons comes straight from GitHub, so your browser asks GitHub for it.

Streaming services

OnKey doesn't provide, stream, or download music. Your own music app plays it, and OnKey listens through macOS's audio-capture permission. It doesn't use any streaming service's SDK or developer API, and doesn't touch any app's files, memory, or encryption.

By default it follows Spotify and Apple Music through macOS's Automation permission (asked in setup): it reads what's playing and where, and plays, pauses, seeks and starts songs. If you turn on “YouTube in your browser” in Settings (it's off at first), OnKey also reads and controls the YouTube tab in Chrome, Brave, Edge or Safari. Choose “Listen only” in setup, or turn them off under “Let OnKey control” in Settings, and OnKey never sends those apps anything.

OnKey never saves or exports the music it hears. Your music service's own terms still apply to how you use it.

Rights holders

If you represent a rights holder or a service and have a concern about OnKey, email [email protected]. I read every message and will reply quickly. Where a concern is valid, I'll change or remove the feature involved. See also LEGAL.md.

Trademarks

OnKey isn't affiliated with or endorsed by Spotify, Apple or Google. Their names are trademarks of their owners and are used only to say which apps OnKey works with.

Licence

OnKey is free and open source under the MIT licence.