Legal
Privacy Policy
Last updated: 30 August 2026
In short:
Eutepio has no server, no account and no analytics. Your library lives on your device. Band sync sends songs only to the phones on your own WiFi — over an unencrypted connection, so read section 2.1 before you sync on a public network.
1. What Eutepio stores on your device
Everything below lives in the app's private storage on your device (the documents directory on Android and iOS, the app support directory on desktop) and is never uploaded to a server operated by us — no such server exists.
• Songs: title, artist, variant, key, tempo, time signature, capo, tags, ChordPro content, private notes, transposition, auto-scroll speed and other per-device settings.
• Attachments: PDFs, MusicXML and photos of sheet music you attach to a song. Stored as ordinary files next to the database.
• Setlists: name, event date, venue, start time, song order, per-song notes and breaks.
• Handwritten annotations: pen and highlighter strokes you draw over a song. Bound to a song and display mode, and never shared over sync.
• User profile: display name, instrument, chord notation, stage theme, language and other interface preferences.
• Automatic safety snapshots: before a destructive restore, the app writes a full backup of your library to the temporary directory as an .eutbackup file so you can undo the action. These snapshots are not deleted automatically; the operating system reclaims them.
• Error log: when an error occurs, it is written to a local log (Settings → Diagnostics). It contains a technical description of the fault, not your data. It is never uploaded and you can clear it at any time.
• Song MIDI commands and pedal mappings, if you set them up.
If you keep several libraries, each has its own storage for songs, setlists and attachments. The user profile and settings are shared across all of them.
You can export all of it at any time via Settings → Data backup as a single .eutbackup file, and delete all of it via Settings → About → Delete all data.
2. What leaves your device
Eutepio has six features that use the network or a connected device. None of them sends your data to a server operated by us.
2.1 Band sync (local network)
When you start or join a band session, a WebSocket connection is established directly between phones on the same local WiFi network. Data does not leave your network and does not pass through any server or relay.
What is exchanged with the phones of members you are connected to: your display name, the shared fields of songs and setlists (title, artist, variant, ChordPro content, key, tempo, tags, song order), scroll position and auto-scroll state. Attachments are transferred only when a member explicitly requests them, and only to that member. Personal fields — notes, transposition, attachment paths, auto-scroll speeds — are not transferred at all.
Encryption notice: the transport is an unencrypted WebSocket (ws://) with an http:// join endpoint. We do not use TLS. The reason is practical — sessions are ephemeral, established between phones on one trusted band WiFi, and setting up TLS on ad-hoc peer-to-peer connections would require a certificate authority, which is not sensible for an app aimed at musicians.
If you join a band on an untrusted network (public WiFi at a venue, hotel WiFi), assume another device on that network could read the songs and setlists you are sharing. Do not share sensitive material on untrusted networks.
mDNS advertising: while your device advertises as a band leader, it broadcasts an mDNS record on the local network with the service type _eutepio._tcp and your device name. This is standard practice for service discovery on a network.
2.2 Importing a song from a web address
The URL import downloads the address you enter over HTTPS. The server you download from will see your public IP address in its log, exactly as it would for any browser. We do not proxy the request and we do not log the addresses you enter.
2.3 On-device OCR (Google ML Kit)
Text recognition from a photo on Android and iOS uses Google ML Kit. According to Google's documentation the model runs entirely on your device and does not upload images or recognised text to Google's servers. We do not send OCR results anywhere.
The feature reads text and chord names from a photo of paper. It does not recognise musical notation. If we ever add cloud-based music recognition that uploads a photo to an external server, it will be an explicit opt-in in settings and this policy will be updated before that feature ships.
2.4 Automatic backup (Android only)
If you turn automatic backup on, the app writes a full library backup once a day into a folder you pick yourself through the system folder picker. The app writes only into that one folder and nowhere else.
A caveat: if you pick a folder that a cloud service syncs (Google Drive and the like), that service carries your data off the phone. Eutepio does not upload it, but the outcome is the same — the backup ends up on somebody else's server under that service's terms. Choose the destination accordingly.
2.5 MIDI
If you enable MIDI, the app talks to a music device connected over USB or Bluetooth. Only musical commands are sent (preset changes, parameter changes). No personal data or library content travels over MIDI, and the app collects nothing about you through it.
2.6 Exporting a setlist to PDF
The first setlist PDF export downloads the Noto Sans font from Google Fonts so diacritics typeset correctly. Only the font request goes out — none of your song or setlist content. The font is then cached and later exports work offline.
3. App permissions
Eutepio requests the following permissions:
• Camera — to take photos of sheet music you attach to a song.
• Local network and nearby devices — to discover band members on the local WiFi.
• Notifications (Android 13+) — to show an ongoing notification while a band session runs. Denying it does not break sync; you simply will not see the status notification.
• WiFi state — to keep the WiFi radio active for the duration of a session so the connection does not drop when the screen turns off during a performance.
On Android the app **does not request access to your photo library**. Both picking an image and picking a backup folder go through the system file picker, which grants access only to what you select.
We do not use location, contacts, SMS or advertising identifiers.
4. Third-party libraries in the app
The app embeds these libraries. None of them collect analytics about your use of Eutepio.
• Flutter (Google) — the user interface runtime.
• Isar — the local database.
• Google ML Kit Text Recognition — on-device OCR, see 2.3.
• flutter_inappwebview — the WebView that renders notation.
• flutter_midi_command — communication with MIDI devices.
• audioplayers — metronome sound playback.
• battery_plus — battery level for the pre-gig check (the value is sent only to other members of your session on your local network).
• OpenSheetMusicDisplay — MusicXML rendering. The library ships inside the installation package and loads locally, so opening a score sends no outbound request.
The app contains no analytics, no crash reporting and no telemetry.
5. The eutepio.com website
Different rules apply on the website than in the app, because the website has forms.
Beta signup: submitting it sends your name, the email address of your Google account, the platform you chose and an optional note to our internal Discord queue. We need the address in full — closed testing on Google Play can only be opened for a specific Google account. We use it solely for the beta invitation and related contact, we do not pass it on, and we do not use it for the newsletter. You can ask to be removed from the queue at any time at [email protected].
Feature request and bug report forms: submitting one sends your name, email address, description and the technical details you filled in (device, app version, severity) to the same queue. The email is used solely so we can reply to you, and is not shared further. Discord is a third-party processor; their policy is at discord.com/privacy.
Newsletter: only the domain of your address is sent to our queue, in the form *@example.com. We do not store the address itself.
localStorage: the site stores your light/dark mode choice and language preference in the browser. This is a technical setting that stays on your device. We use no advertising or tracking cookies and run no analytics on the site.
Payments: Eutepio is free and contains no purchases. If we introduce voluntary contributions in the future, they will run through a third-party payment provider, we will not have access to your card number, and this policy will be updated beforehand.
6. Data retention
All app data lives on your device. Uninstalling Eutepio makes the operating system remove the app's private storage, which erases everything the app stored. If you want to erase your data without uninstalling, use Settings → About → Delete all data.
Automatic .eutbackup safety snapshots in the temporary directory may survive an uninstall on some Android devices depending on the manufacturer. To be certain, clear the app's cache from Android system settings.
7. Children
Eutepio has no age gate; it is meant for musicians of any age. It does not knowingly collect personal information from any user, so no special provisions for children apply. If a parent has concerns they can uninstall the app at any time — no data remains on our side, because there is no our side.
8. Your rights under GDPR
Because no user database exists on our side, GDPR rights are effectively self-service:
• Access: your data is on your device.
• Portability: Settings → Data backup → Create backup produces an .eutbackup file with your whole library.
• Erasure: Settings → About → Delete all data, or uninstall.
• Rectification: edit songs directly in the app.
For anything you sent us through the website forms, contact us at [email protected] and we will remove it from our queue.
9. Changes to this policy
We may update this policy as Eutepio evolves. The revision date at the top of the document reflects the last change. Material changes will be called out in the release notes.
10. Contact
Data controller: Eutepio, Czech Republic.
Email: [email protected]