← Back

Privacy Policy

Last updated: 23 October 2026

1. Who we are

DreamCue is run by Iasgair B.V., the controller of your personal data under the GDPR.

  • Iasgair B.V., Prof. Meulenbergstraat 22, 6709 VL Wageningen, the Netherlands
  • Chamber of Commerce (KvK): 97270091
  • Privacy contact: [email protected]

This policy covers the DreamCue watch app for Garmin, the web app at dreamcue.app and the server behind both (api.dreamcue.app).

2. What we collect

We collect your account details, the data your paired watch sends us, and technical data needed to keep the service running. Several of these are health data, a special category under Article 9 GDPR.

CategoryWhat exactlySourceHealth data
AccountEmail address, password or login link, your confirmation that you are 16 or older, the date you gave consentYou, on dreamcue.appNo
Paired watchesA random device ID and secret, watch model, pairing dateWatch appNo
Heart and heart-rate variabilityHeart rate, resting heart rate, beat-to-beat intervals and values derived from them (SDNN, RMSSD, LF/HF)Watch sensorsYes
Sleep and night sessionsNight start and end, estimated sleep and REM phases, your set bedtime and wake timeWatch sensors and Garmin profileYes
Movement and activityAccelerometer summaries, movement, stepsWatch sensorsYes
Stress, breathing, Body BatteryGarmin's stress, respiration and Body Battery valuesWatchYes
Cues and sessionsWhen a reality-check cue fired and how you responded, nap, meditation and yoga sessions with their heart and breathing summariesWatch appYes
Dream reportsWhether you recalled a dream and whether it was lucid (yes, no or not sure)You, on the watch or on dreamcue.appYes
Dream journalWhat you dreamed, typed or spoken and then transcribed. Stored encrypted with a key only you can unlock; we cannot read it (section 6)You, on dreamcue.appYes
Voice recordingsA recording of you telling your dream, kept only until it has been transcribed, at most 24 hours (section 6)You, on dreamcue.appYes
Journal keyYour journal's public key, and its private key in encrypted form only, locked with your passphrase and with your recovery codeYour browserNo
TechnicalApp version, language, battery level, sync results, crash and error eventsWatch appNo

If you choose to connect Garmin Connect, we also import sleep data from Garmin; section 5 describes exactly what.

We do not collect your location, contacts or name, and until you pair the watch with an account it sends only its model, to get a pairing code.

3. Why we use it and on what legal basis

We use your data only to run DreamCue, and health data only with your explicit consent. We do not sell your data, use it for advertising, or build profiles for third parties.

PurposeDataLegal basis
Your account and loginAccountPerformance of a contract (Art. 6(1)(b))
Pairing and syncing your watchPaired watches, technicalPerformance of a contract (Art. 6(1)(b))
Timing cues, sleep timeline, statistics and insightsAll health dataExplicit consent (Art. 9(2)(a))
Your dream journal: storing, transcribing and showing your dreamsDream journal, voice recordings, dream reportsExplicit consent (Art. 9(2)(a))
Improving cue timing and the app, using pseudonymised dataHealth data, technicalExplicit consent (Art. 9(2)(a))
Fixing errors and keeping the service secureTechnicalLegitimate interest (Art. 6(1)(f))
Sending login and account emailsEmail addressPerformance of a contract (Art. 6(1)(b))

You give explicit consent with a separate, unticked checkbox when you create an account. DreamCue cannot work without health data, so without this consent we do not create an account. You withdraw your consent by deleting your account (section 8); processing stops at that moment.

4. How your data travels and where it is stored

All DreamCue data is stored on our own server in Hetzner's data centre in Nuremberg, Germany. We run the database (Supabase) ourselves; Hetzner provides the hardware and network.

Your watch has no internet connection of its own. It sends data over Bluetooth to the Garmin Connect app on your phone, which passes it on encrypted (HTTPS) to api.dreamcue.app, through Cloudflare (below). Garmin only transports this data and does not store it for us.

Connections to dreamcue.app and api.dreamcue.app, from your browser and from the Garmin Connect app, use HTTPS and run through Cloudflare, which delivers the web app and passes the connections on to our server. To do so, Cloudflare decrypts and re-encrypts the traffic in transit; it does not store it for us. Typed dreams and transcripts are encrypted before they travel, so Cloudflare cannot read them; voice recordings are not (section 6).

PartyRoleWhat they handleLocation
Hetzner Online GmbHProcessor (hosting)All stored data, encrypted at restNuremberg, Germany
SMTP2GOProcessor (email)Your email address and the content of login and account emailsEU region
Cloudflare, Inc.Processor (network)All traffic to dreamcue.app and api.dreamcue.app, from your browser and from the Garmin Connect app (so also the data your watch sends), in transit only, including voice recordings for the dream journalGlobal network
GarminIndependent controllerTransport from watch to our server (and Garmin Connect, if you connect it, section 5)Under Garmin's own privacy policy

We have a data processing agreement with every processor. Your data is stored in the EU. Cloudflare may route traffic through servers outside the EU; that transfer is covered by the EU standard contractual clauses in its data processing agreement.

5. Optional: importing sleep data from Garmin Connect

Connecting Garmin Connect is optional and off by default. DreamCue works fully without it; if you connect it, we import your Garmin sleep data so you can see it next to your cue data.

How it works. You sign in to Garmin from dreamcue.app. Your Garmin email, password and any two-factor code go straight to Garmin; we never store them. Garmin returns access tokens, which we store encrypted (AES-256-GCM) and use only to fetch your sleep data, the last 3 days at each sync.

What we importDetails
Sleep summary per nightStart and end, total sleep, deep, light, REM and awake time
Sleep phasesEach phase with its start and end
Measurements during sleepHeart rate, HRV, stress, Body Battery, respiration and blood oxygen (SpO2), with the averages, minimums and maximums we calculate from them

Legal basis. Your explicit consent (Art. 9(2)(a)), which you give when you connect Garmin Connect.

Stopping. Disconnect Garmin Connect in Account settings at any time. We then delete the access tokens and stop importing. Sleep data already imported stays in your history until you delete your account or ask us to remove it.

Garmin. Your Garmin Connect account and the data in it are Garmin's responsibility, under Garmin's privacy policy.

6. Optional: your dream journal

The dream journal is optional. When your watch asks "Did you dream?" and you answer yes, it can open a page on your phone where you speak or type the dream and say whether it was lucid. You can also add dreams on dreamcue.app. You set the journal up once on dreamcue.app, with a passphrase and a recovery code.

Only you can read your dreams. Your browser creates a key pair for your journal. We store the private key only in encrypted form, locked with your passphrase and, separately, with your recovery code. We never receive your passphrase, your recovery code or the unlocked key. What you type is encrypted in your browser before it is sent, and our server only ever stores it encrypted.

Spoken dreams. A recording travels over HTTPS through Cloudflare (section 4) to our server in Nuremberg. There a speech-recognition model (Whisper) that we run ourselves turns it into text, in memory, without any third party. The text is encrypted with your journal key straight away and the recording is deleted. A recording that cannot be transcribed is deleted after at most 24 hours. Because our server does hear the recording while transcribing it, "end-to-end encrypted" applies to typed dreams only. A backup made while a recording was waiting can still contain it until that backup is deleted (30 days, section 7).

What we can see. For each dream: when it was saved and last edited, which night it belongs to, whether it came from the watch or the web app, whether it was spoken or typed, the language of your watch, whether its transcription is still running or why it failed, roughly how long it is (from the size of the encrypted text), and your answer to "Was it lucid?". We use the lucid answer for your statistics. We cannot see what you dreamed.

Your watch and Garmin. To open the page, the watch receives a one-time code from us. Afterwards the page sends back only status values: whether the dream was saved or you chose "Not now", spoken or typed, your lucid answer, and whether your phone runs Android or iOS. What you dreamed never reaches the watch or Garmin.

If you lose your passphrase and your recovery code. Nobody can open your journal any more, including us. You can start a new journal; earlier dreams then stay locked for good.

Legal basis. Your explicit consent to the processing of your health data (Art. 9(2)(a)), which you give when you create your account. Dream reports and the dream journal fall under it.

7. How long we keep it

We keep your data for as long as your account is active, so you can look back at your history. When you delete your account, everything is removed, and after 30 days it is gone from our backups too.

DataKept for
Account, paired watches, watch data and imported Garmin dataUntil you delete your account
Dream journal entriesUntil you delete the entry or your account
Your journal keyUntil you delete your account
Voice recordingsUntil transcribed, at most 24 hours (in backups: 30 days)
Backups30 days, rolling
Login and admin logs1 year, then anonymised

Deletion is permanent: we remove the rows from the database, not just hide them. After the 30-day backup window, the data cannot be recovered.

8. Your rights

You can see, correct, export and delete your data, and withdraw your consent at any time. We answer every request within one month.

  • Access and export: see your data in the web app, or ask us for a copy in a machine-readable format (JSON). Your dream journal is encrypted with a key only you hold, so we cannot export it readably for you: unlock it in the web app to read and copy your dreams.
  • Correction: change your details in Account settings, or ask us.
  • Deletion: delete your account in Account settings. This removes your account, your paired watches and all their data, your dream journal and any recordings still waiting to be transcribed. To delete a single dream, use Delete on it in your journal; a recording still waiting to be transcribed goes with it. Either way, after 30 days it is gone from our backups too.
  • Withdraw consent: delete your account. Processing stops from that moment; it does not undo processing that already happened. For Garmin Connect alone, disconnect it (section 5).
  • Objection and restriction: object to processing based on our legitimate interest, or ask us to pause processing while a question is being settled.

Send requests to [email protected]. If you are not satisfied with our answer, you can complain to the Dutch Data Protection Authority (Autoriteit Persoonsgegevens, autoriteitpersoonsgegevens.nl) or the authority in your own EU country.

9. Security, age and other terms

Security. All connections use HTTPS (TLS). Data is encrypted at rest, every table is protected by row-level access rules, and admin accounts require two-factor login. Your dream journal is also encrypted with your own key (section 6). If a data breach puts your rights at risk, we report it to the Autoriteit Persoonsgegevens within 72 hours and inform you.

Age. You must be 16 or older to use DreamCue. Sign-up asks you to confirm this.

Not a medical device. DreamCue is a lucid-dreaming training tool. It does not diagnose, treat or monitor any medical condition, and its sleep and heart values are estimates.

Changes. We update this policy when the app changes what it collects. We tell you about important changes in the app or by email before they take effect. The date at the top shows the current version.

Contact. Iasgair B.V., Prof. Meulenbergstraat 22, 6709 VL Wageningen, the Netherlands · [email protected]