Privacy Policy
Last updated October 2026
The short version: Chameleon doesn't collect anything. No analytics, no accounts on our end, no server of ours in the middle. The app runs on your device and talks directly to the Jellyfin server you point it at (and to YouTube, if you watch trailers from there).
This policy explains that in a bit more detail, in plain terms.
Data we don't collect
Chameleon does not collect, store, or transmit any personal data, usage statistics, or analytics to us or to any third party. We don't run a backend and there is no Chameleon server standing between you and your media — the app runs entirely on your device and talks directly to the Jellyfin server you point it at.
What stays on your device
Your server address, login session, and app preferences — theme, layout, playback settings — are stored locally on your device using standard platform storage. None of it is sent to us, because there's no "us" anywhere in that path: just your device and your server.
Your Jellyfin server
Chameleon is a client, not a service. Your library, watch history, user account, and any SyncPlay sessions live on the Jellyfin server you choose to connect to, governed by however that server's administrator — who might be you — has configured it. We have no access to it and no way to see it.
Casting and other platforms
Casting video to a Chromecast, or audio to AirPlay on iOS, uses the device discovery and streaming protocols built into Android and iOS by Google and Apple respectively. We don't add tracking on top of that, and no information about your casting session passes through us.
Third-party services
Chameleon doesn't embed analytics SDKs, crash reporters, or advertising libraries. The only network connections the app makes are ones you've effectively configured yourself: to your Jellyfin server, to a casting device on your own network, to YouTube for trailers (see below), and — if you choose a custom theme font — to Google Fonts to load the typeface.
YouTube trailers
Chameleon uses YouTube API Services to play trailers. When a movie or show has no trailer on your Jellyfin server, Chameleon can play its trailer from YouTube instead, in YouTube's own embedded player: as a preview when you rest on a title, in the featured banner, or when you select Trailer. Which video to play comes from your Jellyfin server's metadata for that title; Chameleon doesn't search YouTube or send it anything about you or your library.
When a YouTube trailer plays, your device connects to YouTube directly, and YouTube receives what any embedded YouTube player does, such as your IP address, device and browser information, and the video being watched, and may use cookies or similar technologies. Chameleon doesn't sign you in to YouTube, doesn't access your YouTube or Google account, and doesn't receive or store anything from YouTube about you. That data is handled by Google under the Google Privacy Policy, and by playing YouTube trailers you agree to the YouTube Terms of Service.
You can turn off YouTube trailers, or trailer previews altogether, in Settings › Playback › Previews. Trailers stored on your own Jellyfin server play from your server, as any other video does. You can manage what Google keeps about you at myaccount.google.com/data-and-privacy.
Your data
Since we don't collect or store anything, there's no personal information held by us to manage, export, or delete. What you'd want to manage — library data, watch history, account details — lives on your Jellyfin server, and is managed there.
Changes to this policy
If this policy changes, the update will be posted on this page with a new date above. We don't collect contact details, so we have no way to notify you directly — check back here if you want to be sure.
Contact
Questions about this policy or the app can go through the project's GitHub repository: github.com/jumpingfox-dev/chameleon/issues.