Melyro Privacy Policy
Melyro is a media player for iPhone, iPad and Apple TV, with CarPlay video support. It plays sources you add yourself and includes no content. We run no server for the app, create no accounts, show no ads, and use no analytics, tracking or crash reporting of our own. We do not sell your personal data or share it for advertising.
Most of what Melyro handles stays on your device. Some data leaves it in these cases:
- to the provider or server you add, and to guide and artwork addresses named in your source;
- to your Chromecast or AirPlay receiver, and to Google when you cast;
- to Apple for purchases, and for iCloud sync and Handoff if you turn them on;
- to RevenueCat, which checks Melyro Pro purchases for us and keeps pseudonymous purchase records (not linked to your name, e-mail or Apple Account) that we can see.
This policy covers the Melyro apps on iPhone, iPad and Apple TV (including the Top Shelf extension and CarPlay), and the melyro.app website. It is also the information notice required by Articles 13 and 14 of the EU and UK General Data Protection Regulation (GDPR), Article 10 of Türkiye's Personal Data Protection Law No. 6698 (KVKK), and the notices that US state privacy laws, including the California Consumer Privacy Act as amended (CCPA), require where they apply. Melyro is not available on Android or Google Play. If that changes, we will update this policy first.
This policy is published in English, Turkish and German. If the versions differ, the Turkish version prevails for KVKK purposes.
Contents
- Who we are
- What Melyro is
- Data stored on your device
- Data sent to your provider and other hosts
- iCloud sync and Handoff
- Chromecast and the local relay
- AirPlay, CarPlay, Picture in Picture and Apple TV
- Purchases and RevenueCat
- Diagnostics and logs
- Our website
- Contacting us
- App Store privacy label
- Legal bases (GDPR and KVKK)
- Sharing and transfers abroad
- Retention and how to delete your data
- Security
- Your rights
- Notice for US residents
- Children
- Changes to this policy
- Contact
1. Who we are
The data controller (in Turkish law, "veri sorumlusu") is the developer of Melyro, an individual developer based in Türkiye, shown as the seller on the App Store listing at https://apps.apple.com/app/id6812315758 ("we", "us").
Contact: support@melyro.app
Melyro is an independent app. We are not affiliated with, endorsed by or sponsored by any content provider, IPTV or Xtream service, Jellyfin, Emby, Apple, Google (including Chromecast and Google Cast) or RevenueCat. Their names appear only to describe what Melyro works with and remain the trademarks of their owners.
2. What Melyro is
Melyro includes no channels, films, series, playlists or provider directory. You add one of these yourself:
- an M3U playlist, from a file or a URL;
- an Xtream-compatible login (server address, username and password);
- your own Jellyfin or Emby server (server address and username; the server then issues an access token).
Melyro plays only the sources you add. Your provider or server operator decides what data it collects about you. Its own privacy policy applies to that.
You are responsible for having the right to use every source you add. See our Terms of Use (https://melyro.app/terms.html) for content and copyright notices.
3. Data stored on your device
Melyro keeps the following on your device. We do not receive it.
In the Keychain, set to "this device only":
- source secrets: the Xtream password, the Jellyfin or Emby access token, and the playlist URL;
- a TV guide (XMLTV) address you type in;
- your parental-control PIN, stored only as a salted SHA-256 digest, never as the PIN itself;
- your Melyro Pro status: the last confirmed purchase, and an early-install ("founder") mark, if it applies.
In the app's own storage:
- the catalogue cache loaded from your source, and source snapshot files;
- favourites, watch history and playback positions, and your channel arrangement (hidden channels and categories, names you gave channels, order);
- external subtitle files you pick;
- preferences, layout and accent colour;
- RevenueCat's cache of your purchase status and its random App User ID (section 8).
Programme reminders. If you set a reminder, Melyro asks for notification permission and schedules a local notification on your device. Nothing goes to us or to Apple's push service.
4. Data sent to your provider and other hosts
To load the catalogue and play streams, Melyro connects directly to the provider or server you added. This traffic does not pass through us. Melyro sends:
- your credentials or token and the requests needed to load the catalogue, streams, TV guide, catch-up and artwork;
- the app identifier "Melyro/" plus the app version;
- for Jellyfin and Emby, the client and device name "Melyro" and a random device ID that Melyro creates for each source.
Your source can also name other hosts. Melyro fetches the TV guide from the XMLTV address in your playlist or the one you type in, and loads artwork from the image addresses in your catalogue. These hosts can belong to companies other than your provider. Like any web server, they receive your IP address and the request.
Melyro allows plain http:// addresses because many providers still use them. Data sent over http://, including credentials, travels unencrypted. Use https:// where your provider offers it.
5. iCloud sync and Handoff
iCloud sync is an optional Melyro Pro feature on iPhone, iPad and Apple TV. It is off until you turn it on. When it is on, Melyro writes data to your own iCloud account so your other devices signed in to the same Apple Account can use it. Apple stores this data. We have no access to it.
iCloud key-value storage (Apple encrypts it, but not end-to-end), for each source:
- the kind of source and when it was set up;
- favourites, playback positions and recently watched items, identified by your provider's item and channel IDs;
- hidden channels and categories, names you gave channels, and channel order;
- your Home, layout and player preferences.
iCloud Keychain (end-to-end encrypted by Apple):
- for Xtream: server address, username and password;
- for Jellyfin and Emby: server address and username (not the access token);
- for playlists: the playlist URL;
- the name you gave the source.
Not synced: the parental PIN, locked categories, the catalogue, stream addresses, and the contents of playlists added from a file.
Handoff. When you watch something, Melyro can pass it to your nearby Apple devices through Handoff. The Handoff message contains the sync key of the source, the kind of source, the item and parent IDs, and how far you got. It contains no credentials or addresses. Melyro does not make it available to search or Siri suggestions.
Turning it off and removing data. Turning sync off removes this device's sign-ins from iCloud Keychain. Your key-value data stays in iCloud. Removing a source in Melyro keeps its iCloud copy, so your other devices keep it. To delete a source's definition, favourites and sign-in from iCloud, use "Remove from iCloud" for that source.
6. Chromecast and the local relay
Melyro uses Google's Google Cast SDK on iPhone and iPad (not on Apple TV). Melyro uses Local Network access to find Cast devices and to run the local relay for Chromecast and AirPlay receivers (see below). It starts looking for Cast devices only after you first tap the Cast button.
What your Chromecast receives:
- the title and category of what you play, and the start position;
- an address to play from:
- for HLS and live streams, an address on your phone's local relay (see below) with a random access token;
- for progressive video files, your provider's own stream address. Xtream video-on-demand addresses contain your username and password, and Jellyfin or Emby addresses contain your server access token, so in those cases these reach the Chromecast and the receiver page.
The Chromecast runs Google's Default Media Receiver, which it loads from Google's servers. Google's privacy policy applies to the Chromecast and the receiver: https://policies.google.com/privacy.
Local relay. For some streams, Melyro runs a small server on your iPhone or iPad that passes the stream on to a Chromecast or AirPlay receiver on your local network. A random token protects each relay address. Your provider address and credentials stay on your device in this case. Others on your network who obtain the relay address and token could play the stream while the relay runs, so cast on a network you trust.
Google Cast SDK data. Melyro turns off the SDK's analytics logging and does not use SDK data for analytics. Google's disclosures for the SDK list device ID, coarse location, performance data and product interaction as data the SDK may collect, not linked to your identity and not used for tracking. Google says it collects device ID only when analytics logging is on. Google decides what the SDK collects and how it uses it, under its own privacy policy. We decide only whether the SDK is included, and we do not receive this data.
7. AirPlay, CarPlay, Picture in Picture and Apple TV
AirPlay, Picture in Picture, external displays and CarPlay are Apple features. Apple's privacy terms apply to them. Melyro supports CarPlay for video only, which works only while the car is parked. When AirPlay plays through the local relay, Melyro uses Local Network access and section 6 applies.
Apple TV Top Shelf. On Apple TV, Melyro writes a small file of what you are watching (titles, artwork addresses, progress and links back into the app) to storage shared with its Top Shelf extension. tvOS shows these items on the Apple TV Home screen, where anyone using that Apple TV can see them. The file contains no stream addresses or credentials.
8. Purchases and RevenueCat
Apple sells Melyro Pro (monthly and yearly subscriptions, and a lifetime purchase) through the App Store and processes all payments. We receive no card details, name, e-mail address or Apple Account from Apple.
Melyro reads your purchases on your device through Apple's StoreKit. It also reads Apple's record of the app version you first installed, to recognise early installs that receive Melyro Pro under our early-supporter offer. Melyro stores the result in the Keychain (section 3).
To confirm purchases and restore Melyro Pro after a reinstall or on another device, Melyro uses RevenueCat, Inc. (USA), which acts as our processor. RevenueCat receives:
- a random App User ID created on your device by the RevenueCat SDK, not linked to your name or Apple Account;
- your App Store transactions for Melyro Pro: product, dates, price, currency and App Store country;
- a device identifier Apple assigns to apps from the same developer (identifierForVendor), not the advertising ID;
- the device model and your preferred languages;
- the app's bundle ID, the app, operating system and SDK versions, and technical flags such as whether the app is a test build;
- your IP address, as part of the connection.
We do not send RevenueCat your name, e-mail address, advertising ID or any viewing data. We can see these pseudonymous purchase records in RevenueCat's dashboard and use them only to provide Melyro Pro and handle support requests. We do not try to find out who you are from them. RevenueCat's privacy policy: https://www.revenuecat.com/privacy.
Apple's privacy policy applies to your purchase: https://www.apple.com/legal/privacy/. Apple gives developers sales reports and, if you allow it in your device settings, aggregated app analytics and crash reports. These reports do not identify you to us.
9. Diagnostics and logs
The App Store version of Melyro keeps no diagnostics log and collects no MetricKit data.
Melyro writes short technical messages to the device's system log. It marks only codes, counts and kinds of events as visible. iOS and tvOS hide everything else, such as addresses and titles. The log stays on your device.
If you test Melyro through TestFlight, test builds keep a diagnostics record on the device made only of numbers and status codes, plus a summary of six performance numbers from Apple's MetricKit. It contains no addresses, usernames, passwords or titles. It leaves the device only if you export it. Apple's TestFlight terms apply to feedback and crash reports you send through TestFlight.
10. Our website
melyro.app is hosted on GitHub Pages and served through Cloudflare. GitHub and Cloudflare process your IP address and request details to deliver and protect the pages, and keep them under their own privacy policies. The site has no analytics, advertising or tracking scripts.
11. Contacting us
If you write to support@melyro.app, we receive your e-mail address, your message and anything you attach. We use them only to answer you and fix problems you report. Cloudflare Email Routing receives messages sent to this address and forwards them to our mailbox provider, Google LLC (Gmail), which stores them for us.
Do not send us passwords, playlist URLs, access tokens or stream addresses.
12. App Store privacy label
Our App Store privacy label lists:
- Purchases (purchase history), Identifiers (user ID) and Identifiers (device ID), for app functionality. These are the RevenueCat records in section 8. The device ID entry covers the identifierForVendor that RevenueCat receives.
- Device ID, coarse location, performance data and product interaction, for analytics and app functionality. These come from Google's disclosures for the Google Cast SDK (section 6). We list them as a precaution, even though Melyro turns off the SDK's analytics logging.
None of this data is linked to your identity, and none is used for tracking. Melyro does not use the advertising identifier (IDFA) and does not ask for App Tracking Transparency permission. It does not use your camera, microphone, photos, contacts or precise location.
13. Legal bases (GDPR and KVKK)
| Purpose | Data | GDPR legal basis | KVKK legal ground |
|---|---|---|---|
| Providing and restoring Melyro Pro | RevenueCat records (section 8) | Contract (Art. 6(1)(b)) | Art. 5(2)(c), needed for a contract with you |
| Casting at your request | Title, category, position and stream address sent to your Chromecast, which for some files includes credentials or an access token (section 6) | Contract (Art. 6(1)(b)) | Art. 5(2)(c) |
| Device discovery and casting sessions you start | What the Google Cast SDK needs to find Cast devices and run the session (section 6). Access to device information is strictly necessary for the casting you request, and Melyro turns off the SDK's analytics logging | Contract (Art. 6(1)(b)) | Art. 5(2)(c) |
| Answering you and fixing reported problems | Contact details, message, attachments | Legitimate interests (Art. 6(1)(f)); contract (Art. 6(1)(b)) where you ask about your purchase | Art. 5(2)(f); Art. 5(2)(c) |
| Delivering the website | IP address and request data handled by GitHub Pages and Cloudflare | Legitimate interests (Art. 6(1)(f)) in serving and protecting the site | Art. 5(2)(f) |
| Defending legal claims | Purchase records and relevant messages | Legitimate interests (Art. 6(1)(f)) | Art. 5(2)(e), establishing, using or defending a right |
Method of collection (KVKK Art. 10): electronically, through the app and its SDKs on your device, the App Store, the website, and e-mail you send us.
The data in sections 3 to 5 that stays on your device or in your iCloud account never reaches us. Melyro processes it on your device to give you the service you asked for. Data sent to your provider follows your own choice to use that provider.
We make no decisions about you by automated means and do not profile you.
14. Sharing and transfers abroad
We do not sell or rent personal data or disclose it for advertising. We disclose it only to:
- RevenueCat, Inc. (USA), our processor for purchase checks (section 8);
- Cloudflare, Inc. (USA) and Google LLC (Gmail), which receive and store support messages for us (section 11);
- authorities or courts, where the law requires it.
RevenueCat and our e-mail providers process data only on our instructions under data processing terms that require protection at least equal to this policy. Google and Apple process data under their own policies, linked above.
Google LLC (USA) receives data from the Google Cast SDK in Melyro when you cast (section 6). Apple (sections 5, 7 and 8) and your provider or server (section 4) receive data directly from your device, under their own privacy policies.
RevenueCat, Cloudflare and Google process data in the United States, and our mailbox provider may store messages outside Türkiye and outside the EEA or UK. For transfers from the EEA or UK, we rely on the EU-US Data Privacy Framework (and its UK extension) where the recipient is certified, or on the standard contractual clauses in the recipient's data processing terms. For transfers from Türkiye to these recipients, we rely on standard contracts under Article 9 of the Turkish Personal Data Protection Law No. 6698, notified to the Personal Data Protection Authority. You can ask us at support@melyro.app which safeguard covers a transfer.
15. Retention and how to delete your data
Data on your device stays until you delete it. Removing a source deletes its credentials, guide address, parental PIN digest, catalogue and saved state from this device. iOS and tvOS keep Keychain items after you delete an app, so the credentials of any source you did not remove first stay in the Keychain. Your Melyro Pro status (the last confirmed purchase and any founder mark) also stays in the Keychain after you delete the app, and returns if you reinstall Melyro on the same device. Melyro has no button to remove it. Erasing the device removes all of these: on iPhone and iPad, Settings > General > Transfer or Reset; on Apple TV, Settings > System > Reset.
Data in iCloud stays in your iCloud account until you remove it. Deleting the app or removing a source does not delete it. For each source, use "Remove from iCloud" (section 5).
RevenueCat records stay for as long as your Melyro Pro purchase can be restored. If you ask us to delete them, write to support@melyro.app and we delete them within 30 days of verifying the request. After deletion, Restore in Melyro may not work until it re-reads your purchases from Apple. The records are pseudonymous, so we can find yours only if you send details of the purchase: its date and time, the product, the App Store country, and Apple's transaction or Order ID from your receipt.
Support messages stay as long as we need them to deal with your request and any follow-up. We then delete them, unless we need them to establish or defend a legal claim.
Website request data is kept by GitHub and Cloudflare under their own policies.
16. Security
Melyro stores credentials and tokens in the Keychain, set to "this device only" unless you turn on iCloud sync, and stores the parental PIN only as a salted digest. The local relay protects each address with a random token. We run no server that stores your data.
Security depends on your provider, too. Use https:// sources where possible, and use casting and AirPlay on a network you trust. No system is fully secure, and we cannot guarantee the security of data sent over the internet.
17. Your rights
You do not have to give us any personal data. Without the RevenueCat records Melyro cannot confirm or restore Melyro Pro. Without an e-mail address we cannot reply to you.
EEA and UK. You have the right to access, correct and delete your personal data, to restrict its processing, to receive it in a portable format, and to object to processing based on legitimate interests. You can lodge a complaint with the data protection authority where you live or work, or where an infringement happened. EEA authorities: https://www.edpb.europa.eu/about-edpb/about-edpb/members_en. UK: the Information Commissioner's Office, https://ico.org.uk.
Türkiye (KVKK Article 11). You have the right to:
- learn whether we process your personal data, and request information about it;
- learn the purpose of processing and whether we use the data for that purpose;
- know the third parties in Türkiye or abroad who receive it;
- ask us to correct incomplete or wrong data, and to delete or destroy it under the conditions of Article 7;
- ask us to tell recipients about a correction or deletion;
- object to a result against you that comes only from automated analysis;
- claim compensation if unlawful processing causes you loss.
We answer free of charge within 30 days (KVKK Article 13). You must first apply to us. You can then complain to the Personal Data Protection Board (Kişisel Verileri Koruma Kurulu), https://www.kvkk.gov.tr, within 30 days of our answer, or within 60 days of your application if we do not answer.
How to use your rights. Write to support@melyro.app. We may ask for details to confirm the request is yours and to find your records (section 15). We hold only pseudonymous purchase records and support messages, so most requests about other data will mean following the steps in section 15 on your device. For data the Google Cast SDK collects, contact Google. For iCloud data, Apple also offers tools at https://privacy.apple.com.
18. Notice for US residents
This section applies to residents of California and other US states with consumer privacy laws. We provide it voluntarily.
- Personal information collected in the last 12 months:
- identifiers: the pseudonymous RevenueCat App User ID, the vendor device identifier (identifierForVendor) and IP address; your e-mail address if you contact us;
- commercial information: Melyro Pro purchase records;
- the content of messages you send us.
- Google Cast SDK: the SDK may collect the data listed in section 12 directly for Google. We do not receive it.
- Sources: your device, you, and Apple (for App Store transactions).
- Purposes: providing Melyro Pro, answering you, and defending legal claims.
- Disclosure: to RevenueCat, Cloudflare and our mailbox provider as service providers, and to authorities where the law requires it.
- Sale and sharing: we do not sell personal information and do not "share" it for cross-context behavioral advertising. We do not use it for targeted advertising or profiling. We have no actual knowledge of selling or sharing personal information of consumers under 16.
- Sensitive personal information: we do not collect it. Your provider credentials are sent only to your provider, to your Chromecast when you cast certain files (section 6), and to your own iCloud Keychain if you turn on sync.
- Your rights: depending on your state, you can ask to know, access, correct or delete your personal information, and to opt out of sale, sharing, targeted advertising and profiling. Since we do none of these, there is nothing to opt out of. We respond within 45 days. You can use an authorized agent, and we may ask the agent for proof of your permission. If we refuse a request, you can appeal by replying to our answer at support@melyro.app. We will not discriminate against you for using these rights.
19. Children
Melyro is rated for adults on the App Store because it plays streams that you add and that nobody rates. It is not directed at children under 13, or under the age of digital consent in your country, and we do not knowingly collect personal data from them. Parents can use Melyro's parental-control PIN and Apple's Screen Time. If you believe a child has sent us personal data, contact us and we will delete it.
20. Changes to this policy
If we change this policy, we will post the new version on this page and update the effective date. If a change affects how we handle your data in a significant way, we will also note it in the App Store release notes for the next version of Melyro.
21. Contact
The developer of Melyro, an individual developer based in Türkiye, shown as the seller on the App Store listing at https://apps.apple.com/app/id6812315758. Contact: support@melyro.app
Based on templates by General Legal (general.legal), CC0.