Privacy Policy
Last updated 31 October 2026
Wakeful is published by KODE SCHOOL (PTY) LTD ("we", "us"). Wakeful has no accounts. There is no sign-up, no email address and no password. This page describes exactly what leaves your phone, what is kept, for how long, and the choices you have about it.
What Wakeful sends
The app talks to exactly five places when every feature is on, and nothing else. Song search, below, is switched off in version 1.0.
| Where | What is sent | Why |
|---|---|---|
us.i.posthog.com (PostHog, in the United States) |
Anonymous counts of which setup and subscription screens get used, each with a new random ID that is never stored or reused, and the app version. On unless you switch them off. And, only if you choose to share usage data, a random identifier for this install and a small, fixed set of app events, with the app and iOS version | To see where setup and the subscription screen lose people, find confusing screens and make alarms more reliable. You can switch either off at any time — see Anonymous counts and Optional usage data |
api.open-meteo.com |
Your latitude and longitude, rounded to two decimal places (roughly 1.1 km) | The weather shown on the wake-up screen. Only if you grant location access |
| Apple's place-name service | The same rounded latitude and longitude as above | To show the name of your town or city next to the weather. Only if you grant location access. It is Apple's service, covered by Apple's own privacy policy, and we never receive the result on our servers |
itunes.apple.com |
The text you type when searching for a song | To find a song to wake up to. The search term is used for that one request and is never stored by us or sent to our servers. Song search is switched off in version 1.0, so nothing is sent here for now |
api.revenuecat.com (RevenueCat) |
An anonymous subscriber ID that RevenueCat creates for this install, your App Store purchase receipt, and a device identifier Apple gives to apps from the same developer | To confirm whether your subscription is active, and to bring it back on a new phone. See Purchases, in detail |
Anonymous counts, in detail
Anonymous counts are on by default, and you can switch them off in Settings → Help improve Wakeful → How it works → Anonymous counts. They answer two questions: which setup screens people finish or skip, and how the subscription screen is used. Wakeful works exactly the same with them off.
What a count is
- a setup screen being viewed, finished, skipped or gone back from, and setup being finished — never what you answered;
- the subscription screen being shown, and where it was opened from (setting an alarm, a nap, setup, Settings);
- which plan was picked (monthly or annual), a purchase being started, and whether it went through, started a free trial, was cancelled, is waiting for approval, failed, or was restored.
Each count carries the version of Wakeful you are running, that it is an iPhone, and whether it came from a test build (so our own testing can be left out of the numbers). Nothing else about your phone is sent: not its model, not its iOS version, and not any identifier of it.
No identifier
Every count is sent with a new random ID that is made for that one count, is never stored, and is never used again, so nothing in a count ties it to you or to your other counts. Counts made within the same few seconds travel together in one delivery, and PostHog notes when each delivery arrived. Nothing is kept on your phone either: counts wait in memory for a few seconds and are sent once; if sending fails, they are dropped.
No location
Like any server, PostHog sees the network address a count arrives from. No country is worked out from it, and it is not kept with the count. The app never reads or sends your location for this.
Counts go to PostHog in the United States, under PostHog's privacy policy, and their times are rounded to the hour. If you also share usage data, counts from then on go with your usage data instead, so nothing is counted twice, and the Share usage data switch decides those. Turning Anonymous counts off stops the anonymous ones.
Optional usage data, in detail
Sharing usage data is optional, and off until you choose to share. Wakeful offers it once during setup, and the same switch lives in Settings → Help improve Wakeful. Leaving it off changes nothing about how Wakeful works: every alarm, activity and sound runs the same either way. Nothing below is collected unless you turn on Share usage data.
When you do, the app sends it to PostHog, an analytics service, on its servers in the United States, under PostHog's privacy policy. Here is everything that is sent:
A random identifier
A random identifier created on your phone when you choose to share. It is not derived from your phone, your Apple ID, your advertising identifier or any hardware address. Because the same identifier is sent each time, it can link your usage across visits — so this is not an identifier-free stream, and we do not call it anonymous. Stopping sharing deletes it from your phone, and sharing again later starts a new one. Some events also carry a random ID for a single attempt, such as one go at setting up alarms, so its steps can be read together.
App events
A small, fixed list, built into the app:
- onboarding: which step you reached and whether you moved on, went back or skipped it — never what you answered;
- whether alarm and notification permissions were granted;
- alarms being saved and scheduled, whether an alarm repeats, and how many were accepted by iOS;
- a wake-up check being completed or escaped, and a snooze, with the activity, its difficulty and a snooze count;
- a fixed error code when something goes wrong in the app — never the error message or anything on screen;
- how long a few things took, in broad bands such as "under a second";
- that the app was used, and for what: setting up, managing alarms, or a wake-up;
- the subscription-screen counts described under Anonymous counts, sent here instead while that switch is on.
App and phone version
Every event carries the platform (iOS), the version and build of Wakeful you are running, whether it is a test or App Store build, and your iOS major version. These are shared by everyone on the same versions; they tell us whether an update changed anything.
Country
PostHog works out the country of your connection from its network address. The address is then discarded before the event is stored, and only the country name and code are kept — not your city or coordinates. The app itself never reads or sends your location for this.
Times are rounded to the hour. We do not receive the time you set your alarm for, the label you gave it, or the exact time you got up. Each event does carry its own time, rounded to the hour, so a wake-up event shows roughly when you got up. PostHog also records when each batch of events arrived.
What is left out
Your onboarding survey answers, alarm labels and times, photos, audio, precise location and anything you type are never part of usage data. Your survey answers stay on your phone.
Purchases, in detail
Wakeful is a subscription. Apple takes the payment; we never see your card or bank details. To know whether a subscription is active, the app uses a service called RevenueCat, which acts for us and checks your App Store purchase.
Anonymous subscriber ID
RevenueCat creates it. It is not your name, your email or your Apple ID, and we do not attach anything to it. It is kept separate from the usage-data identifier above: nothing links the two.
Purchase receipt
The record Apple gives the app when you subscribe, so RevenueCat can check it with Apple: what was bought, and when it expires.
Device identifier
The identifier Apple gives to apps from the same developer on your device, sent with RevenueCat's requests. It is not the advertising identifier, which the app never collects.
Your IP address
Like any server, RevenueCat's receives the IP address of the request.
These records are held by RevenueCat, not by us, under RevenueCat's privacy policy. If the subscription check cannot be reached, your alarms still ring; the app never needs it to wake you.
What Wakeful never collects
- Your name, email address or phone number — there are no accounts
- Photos taken for the wake-up check, or any audio
- Your alarm times, alarm labels, or the exact time you woke up
- Your onboarding survey answers — they stay on your phone
- Precise location — coordinates are rounded before every request that leaves the device
- Contacts, health data, payment card or bank details, or browsing history
- Crash reports — no crash reporting service is present
Tracking and advertising
Wakeful does not track you. There is no advertising identifier (IDFA), no App
Tracking Transparency prompt, no advertising or attribution SDK, and no data is
shared with data brokers or combined with data from other companies' apps. No
profile of you is built from usage data. The app's privacy manifest declares
tracking as false with no tracking domains.
How long anything is kept
| What | Retention |
|---|---|
| Anonymous counts, held by PostHog — see Anonymous counts | Up to one year |
| Optional usage data, held by PostHog — see Optional usage data | Up to one year |
| Usage data still waiting on your phone to be sent | Until it is sent, or until you stop sharing |
| This website's visitor counts, held by Cloudflare — see This website's visitor counts | Detailed for 7 days, then a summarised sample |
| Subscription records | Held by RevenueCat, not by us — see Purchases, in detail |
Being precise about this matters: if you share usage data, the events are kept against your random identifier. They are coarse by design — a fixed event name and an hour, never a time, a label or anything you typed — but they are retained, so this page says so.
Choosing, and changing your mind
You can change your choice whenever you like, in Settings → Help improve Wakeful: the Share usage data switch is on the card, and both switches are on its How it works screen. Turning Share usage data off stops collection on your phone straight away, clears anything still waiting to be sent, and deletes the random identifier from your phone. Turning Anonymous counts off stops them straight away and drops any count not yet sent; the two switches are separate, and neither moves the other.
Stopping does not erase records already sent. Those stay with PostHog for the period in the table above. Anonymous counts cannot be traced back to your phone at all, so there is nothing of them we could find to delete. To ask about them, or to have them deleted, write to us through our contact form.
If we ever change what usage data covers in a way that needs your say, your earlier choice no longer applies: sharing stays off until you choose again.
Children
Wakeful is not directed to children under 13, and we do not knowingly collect personal information from them. The onboarding survey asks for an age bracket, which includes "under 18". That answer stays on your phone and is never sent anywhere.
Your rights
We hold no name, email address or account for you, so we cannot look you up by who you are. Whether you share usage data is your choice, and you can change it at any time in Settings. To ask about usage data already sent, or to have it deleted, write to us through our contact form. Subscription records held by RevenueCat are tied to an anonymous ID and your App Store purchase, not to you by name. If you have a question about any of this, we are glad to help.
This website's contact form
This section is about the website, not the app. When you send a message through the contact form, your name, email address, the topic you pick and your message are delivered to our inbox so we can reply. Two services handle that for us:
- Cloudflare runs the form service and a quick check in your browser (Turnstile) that keeps spam out, and briefly limits how many messages one connection can send.
- Resend, an email delivery service, carries your message from the form service to our inbox. It is covered by Resend's privacy policy.
- Your message is not stored by the form service. It reaches us as an email, and Resend keeps its own delivery records under its policy.
- To apply the limit, your IP address is turned into a one-way code that is discarded after ten minutes. The address itself is never stored.
- To stop a message being delivered twice, a one-way fingerprint of it is kept for 24 hours, then deleted. It cannot be turned back into your message.
This website's visitor counts
This section is about the website, not the app. To see how many people visit and how quickly pages load, this site uses Cloudflare Web Analytics. When a page loads, a small script from Cloudflare reports:
- the full address of the page you viewed, and the page or site that linked you here, if any;
- your country, browser, operating system and kind of device;
- page-speed readings from your browser: load timings, how quickly the page responded, which part of it was slowest to appear or moved as it loaded, and how much memory the page used.
- It sets no cookies and stores nothing on your device. It cannot recognise you on a later visit or on other sites.
- Cloudflare states that its analytics service discards your IP address at the nearest data centre and does not keep it in its databases or logs.
- Cloudflare keeps the detailed readings for seven days; after that only a summarised sample remains.
- Separately, as for any site served through Cloudflare, Cloudflare counts the requests made to this site, such as totals by country, as part of delivering it.
- These counts are kept apart from the app's analytics and never combined with them.
- If your browser or a content blocker stops the script, the site works exactly the same.
Cloudflare's handling is covered by Cloudflare's privacy policy.
Changes to this policy
If what the app sends changes, this page changes with it, and the date at the top is updated. Material changes will also be described in the app's release notes.
Contact
Questions about privacy: write to us through our contact form.