Privacy policy
Last updated 25 September 2026 · applies to the DanceHR watch app, its DanceHR+ services and this website.
DanceHR is made by one dancer for other dancers. It keeps as little as it can: the default features keep everything on your watch, and the DanceHR+ services keep only the latest values, with no history of where you were or what your pulse was. We do not show ads, and we never sell or share your data with anyone for their purposes.
1. Who is responsible
DanceHR, an independent developer based in Singapore ("we"). Contact: support@dancehr.app.
2. The default features: nothing leaves your watch
Your heart rate, zones, alerts, vitamins, water breaks and dance history are computed and stored on your watch. Saved dances also go to your Garmin Connect account through Garmin's own app, under Garmin's privacy policy, exactly like any other Garmin activity. The partner link over ANT+ sends your heart rate by short-range radio directly to your partner's watch; it is not stored anywhere and does not touch the internet.
3. DanceHR+: what the relay receives
The + features work through a small service of ours (the "relay") that your watch reaches through the Garmin Connect app on your phone. While a + feature is switched on and sharing is running, your watch sends the relay every few seconds:
- your heart rate (only if you share it: Partner+ HR, or Share HR together with your location), your app state (idle / dancing / paused);
- your position (only while Partner+ Location or Group+ Location is on and sharing runs), how accurate it is and how old;
- your nickname: the watch gives itself a random one when the app is installed (punk88, for instance) so that no real name is needed; it is what your partner and your group see, and you can change it under Sharing Settings, My Nickname. Then your group's name and key, your DanceHR ID (My ID, shown under About → Support → Contact Us);
- your watch's device identifier and its licence token (see 4).
The relay keeps only the latest value of each: every message replaces the previous one. A position is dropped the moment your watch sends a message without one (Stop Sharing, switching the feature off) and is always handed out with its age, so your partner and your group see how old it is. A group member who has not been seen for a day is removed from the group. The last message of a watch stays until the next one replaces it, for as long as the service exists, or until a day after you deactivate DanceHR+ (see 7). There is no history of where you were or what your pulse was; the relay cannot answer that question, for you or for anyone else.
Support reports. When you press Send Report on the watch (About → Support), or when Automatic Crash Report is on (the default; switch it off under About → Support) and the app did not close normally, the watch sends us a report: why it was sent, the app version and build, the watch model, firmware and screen, the DanceHR+ state, which sharing switches were on, the relay region, the last ten screens you opened, the app's own log lines (link events, relay answers, errors), your nickname and My ID. A report never contains your position or a pulse history. At most five reports a day per watch.
Our own log. The relay writes a line for rare events only (a watch seen for the first time, an activation or a deactivation, a activation code bound or moved, a brake against abuse, a change made by us), with the device identifier concerned; never for a pulse or a position. To protect the service it also keeps, per watch and per address, a count of the last hour (new groups, wrong codes), deleted after a day.
Who can see it: your partner (the watch whose ID you entered as Partner ID, and only if it entered yours), and the members of your group (whoever knows its name and key). Choose a key others cannot guess; anyone who joins your group is visible to everyone in it.
4. DanceHR+ activation
DanceHR+ is free: you activate it once on the watch, and a coffee at dancehr.app/plus is welcome, never required. The relay keeps a record per watch, created the first time the app reaches the relay (at start, with the phone nearby, the app asks whether DanceHR+ is active) and kept for as long as the service exists: the watch's device identifier (a number Garmin assigns to the device; not your name, not your Garmin account), a random token, whether DanceHR+ was activated and, if a date was set, until when it runs, the watch model, firmware and app version, the nickname (random or typed under My Nickname), how many minutes and on how many days the watch used the relay, when it was first and last seen and through which relay region, and a activation code if you ever entered one. Summary counters (how many watches were seen per day, how many calls the relay answered) are kept to run the service; for each day the relay also keeps which watches (device identifiers) each relay copy served, so that a new relay version can be watched during its rollout; after a year only the count remains. On request we erase everything in the record except the device identifier and the date of the first activation, kept so that the free activation cannot be used twice (see "Delete my data" on the support page).
Donations go through Ko-fi (see 6). Ko-fi shows us that a donation happened, the name you entered, your e-mail address and its transaction number, under its own privacy policy; our only copy is Ko-fi's notification e-mail, kept for our accounts as the law requires. Should activation codes ever be sold, the same applies to a purchase, plus the code itself, kept as long as the licence can be used so we can help you when you lose it or change watches.
5. This website
The site counts its visits with Google Analytics, only if you press OK on the bar at the bottom of the page: it then sets Google's analytics cookies and tells Google which pages were opened, from which country and city, on which device and browser, and where the visit came from; the address is shortened before it is stored. We see totals, never a name or an address. "No thanks" sets nothing, and the choice is remembered in your browser; you can change it by clearing the site's data. No advertising scripts. Our hosting provider (see 6) keeps ordinary server logs (the address a request came from, the page, the time) for a short period for security and operation.
6. Who processes data for us
- Google Analytics (Google Ireland Ltd / Google LLC) counts the visits to this site when you allow it (see 5), under Google's own privacy policy.
- Google Cloud (Google Ireland Ltd / Google LLC) hosts the relay, the licence records and this site. The database is in the European Union (Belgium); relay servers run in Europe, Singapore and the United States so your watch can use the nearest one, and each of them reads and writes the same European database. Google processes the data only on our instructions.
- Garmin (Garmin Ltd) carries your watch's messages through the Garmin Connect app on your phone and stores your saved dances in your Garmin account, under Garmin's own privacy policy.
- Ko-fi (Ko-fi Labs Ltd) handles donations (and any future licence purchase) under its own privacy policy; we never see your card or bank details.
Nobody else receives your data. We do not sell it, we do not use it for advertising, and we do not combine it with other sources.
7. How long
What your watch sends us, with which DanceHR+ service, and how long we keep it. Everything with a period is deleted by the relay itself, once a day, without anyone asking. "After Deactivate" means you pressed Deactivate (Sharing Settings → DanceHR+ Config) or Setup → Reset to Defaults on the watch.
| What | Without DanceHR+ | DanceHR+ | ||||
|---|---|---|---|---|---|---|
| Partner+ HR | Partner+ Location | Group+ Location | Kept for | After Deactivate | ||
| Your last pulse | - | ✓ | ✓ (Share HR on) | ✓ (Share HR on) | overwritten every few seconds; the last one as long as the service exists | deleted within a day |
| Your last location | - | - | ✓ | ✓ | overwritten every few seconds; the last one as long as the service exists | deleted within a day |
| Your nickname | ✓ | ✓ | ✓ | ✓ | as long as the service exists | unchanged; deleted on request |
| Your watch details (model, firmware, app version, My ID, relay region) | ✓ | ✓ | ✓ | ✓ | as long as the service exists | unchanged; deleted on request |
| Your watch ID (the number Garmin gave the device; not your name, not your Garmin account) | ✓ | ✓ | ✓ | ✓ | as long as the service exists | unchanged |
| Support reports (only when you press Send Report, or a crash report goes out) | ✓ | ✓ | ✓ | ✓ | a year | deleted within a day |
| Our logs (rare events: first seen, activation, codes) | ✓ | ✓ | ✓ | ✓ | a year | deleted within a day |
| Hosting provider logs (address, page, time) | ✓ | ✓ | ✓ | ✓ | 30 days | unchanged |
| Activation codes (only when you type one in) | ✓ | ✓ | ✓ | ✓ | as long as the service exists | unchanged |
| Donation records (the name you entered, your e-mail, the transaction number) | - | - | - | - | kept by Ko-fi under its own privacy policy | unchanged |
✓ = your watch sends this to the relay with that service on. "Without DanceHR+" = sent at every app start with the phone nearby (the app checks its DanceHR+ status), nothing else.
After a Deactivate your watch record stays, marked deactivated. Delete my data (support page) removes everything we hold about your watch except its ID and the date of its first activation.
8. Your rights
You can end DanceHR+ and mark your watch's data for deletion yourself on the watch (Deactivate, see "Delete my data" on the support page). To have your watch erased (everything except its ID and the date of its first activation), to ask what we hold about your watch or donation, to have it corrected, or to object to how we use it: write to support@dancehr.app and tell us your My ID (About → Support → Contact Us on the watch) or the e-mail you used with Ko-fi. Erasing the record ends the + features on that watch until you activate them again. If you are in the EU/EEA or the UK you also have the right to complain to your data-protection authority. We answer within a month.
The legal ground for what we do (for readers in the EU/EEA/UK): performing the service you asked for by switching a + feature on (contract), and our legitimate interest in keeping the service running and safe (server logs, brakes against abuse). We do not make automated decisions about you.
9. Children
DanceHR is not directed at children under 16, and we do not knowingly keep data about them. If a child has used the + features, write to us and we delete the record.
10. Changes
When this policy changes, the new version appears here with a new date; a change that matters to you will also be announced in the app's store listing.