Contractions Privacy Policy
How Contractions, the contraction timer by TrainRBoost, handles your data. Your contractions stay on your phone; everything the app sends, the birth prediction game included, is listed below.
Last updated: 10 November 2026
1. What stays on your phone
Contractions works without an account, without ads and without an advertising ID. What you enter is stored on your phone, in the app's storage, and leaves it only for a birth prediction game, if you start one (section 6):
- your contractions: when each one started and ended, and the one in progress;
- your answer to the question of whether this is your first baby, the moment you mark the baby as born and, if you start a birth prediction game, its code and the secret key that lets you manage it;
- your settings and the app's state (welcome screens seen, rating request, what's-new messages).
Your contractions themselves never leave the phone. If you agree to share usage data (section 2), some events do carry your first-baby answer, though, and their time tells when a session started, when the guide was reached and when you marked the birth. "Erase data", in Settings, erases from this phone the contractions, the birth date and the rating-request history, erases your birth prediction game from our server if you have one, and gives the following events a new identifier; your first-baby answer, your settings and what PostHog has already received stay. Until the server has confirmed that the game is erased (when you are offline, for example), its code and key stay on the phone, and the app tries the erasure again at every launch. The History screen also lets you delete one contraction or the whole history. Uninstalling the app deletes all of this data from the phone. It is not part of Android's automatic backup and, on iPhone, the app excludes it from iCloud backup.
2. Usage analytics and error reports
Only if you agree, to improve the app and fix its errors, Contractions sends usage events and error reports to PostHog, in its EU cloud (eu.i.posthog.com). They carry a pseudonymous identifier, a random ID created by the app, and cover:
- the app being installed, its updates (with the previous version), every launch, its return to the foreground and its move to the background;
- the end of the welcome screens and the start of a contraction session (the first contraction after at least three hours without one), with your first-baby answer;
- the guide that shows when to call being reached, once per session, with the app's language and the guide applied, which depends on your first-baby answer;
- the breathing exercise being opened, and the birth you mark, with two yes-or-no answers: had contractions been timed, had the guide been reached;
- the "Discover Doudou" button shown or tapped, with where (Settings, the screen after the birth, the home screen after the birth), and whether your phone could open the link;
- the rating request (made or not, why, and whether the window could open), the store page opened from "Rate the app", and the what's-new messages when the app shows any (shown, and your answer);
- errors and crashes: the error's name, its message and its stack trace (where in the code it happened), whether it crashed the app, how many times it repeated, where in the app it came from, the version of the app's update, whether the app was in the foreground and, if the display crashed, the elements of the screen shown;
- technical checks, such as error reporting starting up, saved data that could not be read at launch (which, and why) or a phone language that could not be read;
- the birth prediction game, if you start one (section 6): its creation, with four yes-or-no answers (does the game ask for the time, for the weight, does it have a due date, a title), its link being shared, the guesses being closed (by hand, or automatically when you mark the birth), the reveal, with three yes-or-no answers (are the first name, the time and the weight published), the game being deleted, and the failure of one of these actions, of removing a guess, of reading the guesses back or of reporting abuse, with its error code; these events carry only yes-or-no answers and error codes, never the game's code, its dates, its weights, its nicknames or its title.
These events never contain your contractions: not their number, nor their duration, nor their time. But each one is dated: the time of the one that opens a session is that of its first contraction, and those of the guide being reached and of the birth being marked tell when they happened. They are pseudonymous: their identifier links them together until you erase the data. PostHog also receives the app's name and version, your phone's make and model, its system and version, the screen size, the phone's language and time zone, and whether it is an emulator; your IP address reaches its server, which derives an approximate location from it (country, region, city). The events are kept for 12 months. There is no account and no email address. Usage data sharing stays off until you agree: the app asks you on its last welcome screen and, on a phone where it was already installed, once on its timer screen, never during a contraction session; without an answer, nothing is shared. You can change your mind at any time in Settings, with "Share usage data" (sections 7 and 8). A version of the app that is not yet up to date still shares these events by default, until it is updated.
3. Connections at launch
Other connections happen when the app starts. They carry nothing you enter:
- PostHog (eu-assets.i.posthog.com, eu.i.posthog.com) — only once you have agreed to share usage data, PostHog's SDK reads our project's configuration at every launch, without any identifier; it can also read the project's feature flags, at launch and when you erase the data, sending the pseudonymous identifier from section 2, a device identifier specific to the SDK (the first pseudonymous identifier given after your agreement), which "Erase data" does not change while sharing is on, the app and system versions and the device type; your IP address reaches its server. Without your agreement, the app does not start PostHog's SDK at all.
- Expo (u.expo.dev) — at every launch, even with usage data sharing off, the app checks whether an update exists, which tells Expo your platform, the version of the app and of its update, a random installation identifier specific to Expo, which "Erase data" does not change, and your IP address.
- our server (trainrboost.com) — if you have started a birth prediction game, the app reads the game back from it at startup, when the app returns to the foreground (at most once every 10 minutes) and when you open the game screen, to show the number of guesses and the guesses, sending only the game's code. At startup, it sends the game's secret key (the server keeps only its fingerprint, section 6) solely to finish what had not gone through: closing the guesses after the birth you marked, or a data erasure left pending (section 1). Your IP address reaches the server, as with any request (section 6).
4. The link to Doudou
The "Discover Doudou" button, in Settings and on the screen shown after the birth, opens our site's address trainrboost.com/go/doudou/contractions in your browser. That address records the click on our server, then sends you to Doudou's page on the App Store or Google Play, depending on your phone. The recorded click contains:
- its time, the app suggested and the name of the link (doudou, contractions);
- the type of device (iPhone, Android or other) and the description your browser gives of itself (its user agent: browser, system and their versions, sometimes the phone model), from which we also work out whether it is a bot;
- the language of the address opened (English, for this link) and the page the click came from, without its parameters, when your browser sends it;
- the country of the connection, which Cloudflare, through which our site's requests pass, derives from your IP address.
Your IP address is not recorded with the click: our site only keeps it in memory, to limit how many clicks are recorded from the same address, and forgets it at the latest when it restarts. Like any request to our site, opening this address is also written to our server's technical logs, with the IP address it comes from; those logs are deleted after 14 days. The link to Google Play carries the name "contractions", which Google Play can pass on to Doudou once it is installed; the link to the App Store can carry it too, for Apple's campaign statistics. The app's other links (this policy, the terms of use) also open our site: its pages are covered by the site's privacy policy.
5. The rating request
After the birth, the app may ask you once to rate it, through Apple's or Google's own rating window; "Rate the app", in Settings, opens its page on the App Store or Google Play. Your rating and review are handled by Apple or Google, under their own privacy policies: the app never sees them. Its usage events (section 2) only say whether the request was made, why not, whether the window could open, and when the store page was opened from Settings.
6. Birth predictions
If you start a birth prediction game, the app records it on our server (trainrboost.com) and it is shown at heydoudou.com/b/<code>, an address you share yourself. Anyone with this link sees the title, the due date if you give it, the nicknames and the guesses, then the result you publish; the page appears in no search engine and sends nothing to our audience measurement tool. The server keeps:
- for the game: its code, the app's language, what your family and friends guess (the date, plus the time and the weight if you keep them), the title and the due date if you give them, and a fingerprint (sha256) of the secret key that lets you manage it; the key itself is stored only on your phone and the server keeps only this fingerprint; the app sends the key to the server, over an encrypted connection, solely to manage the game: to close the guesses, remove a guess, reveal the result, delete the game or finish an erasure left pending;
- for each guess: the nickname the person chooses, their date, plus their time and weight if the game asks for them, with the fingerprint of a token drawn by their browser and kept in that browser's local storage, which lets them change their guess; no email, no account and no IP address is recorded with the game or the guesses;
- when you reveal the result, what you choose to publish: the birth date and, if you switch them on, the time, the weight and the first name; what you leave off never leaves your phone;
- daily counters (games created, guesses, reveals, deletions), which contain no data about a game or a person.
The due date and the birth details are health data: they are published only with your explicit consent, given by ticking the box provided when you make them visible. A game and its guesses are erased 3 months after the reveal, and at the latest 12 months after the game was created. At any time, you can remove a guess or delete the game from the app: it then disappears from the server, guesses included, and the page says the game is over; “Erase data” deletes it too. Anyone who placed a guess can ask for its removal at privacy@trainrboost.com, through the “Report abuse” link on the page. As with any request to our site, opening the page and sending a guess are written to our server's technical logs, with the IP address they come from; these logs are erased after 14 days. Our site also keeps this address in memory to limit the number of requests, forgets it at the latest when it restarts, and writes it to the log when it refuses a request.
7. Legal basis, controller, transfers
- Controller: TrainRBoost — contact privacy@trainrboost.com.
- Legal basis: performance of the service for app updates and for the redirect to the store that you ask for by tapping the button (Art. 6(1)(b) GDPR); your explicit consent for usage analytics, error reports and the configuration read that comes with them, since their time and your first-baby answer are health data (Art. 6(1)(a) and 9(2)(a)), which you can withdraw at any time by turning off "Share usage data" in the app's Settings, without affecting what was sent before; our legitimate interest in knowing what Contractions brings to Doudou, for recording the click, and in the security of our server, for its logs (Art. 6(1)(f)).
- PostHog, Expo and Cloudflare process this data on our behalf, as processors; clicks, birth prediction games and technical logs are recorded on our own server (trainrboost.com), hosted in the European Union by Contabo. Apple and Google handle what goes through their stores under their own privacy policies. We do not sell, rent or trade your data.
- Transfers outside the EU: PostHog is in the European Union, with its servers in Frankfurt. Expo and Cloudflare are established in the United States; they cover those transfers with the EU–US Data Privacy Framework and the European Commission's standard contractual clauses.
- For birth predictions: the performance of the service you request by starting a game, and that your family and friends request by placing a guess (Art. 6(1)(b)); for the due date and the birth details, which are health data, your explicit consent (Art. 6(1)(a) and 9(2)(a)), which you can withdraw at any time by deleting the game; our legitimate interest in protecting the game from abuse, for the request limiter and its logs (Art. 6(1)(f)).
8. Your rights
Under the GDPR you can, at any time:
- ask to access your data, or to have it corrected or deleted, by writing to privacy@trainrboost.com;
- withdraw your consent to usage analytics and error reports, by turning off "Share usage data" in the app's Settings (off until you agree): the app then stops collecting events, from that moment and at every later launch, when it no longer starts PostHog; until the app is closed, an event already waiting to be sent may still go, and PostHog, already started, may still read our project's flags;
- erase your contractions and the birth date from your phone, and your birth prediction game from our server, with "Erase data" in Settings (until the server has confirmed it, when you are offline for example, the app keeps the game's code and key and tries the erasure again at every launch), or all of the app's data on your phone by uninstalling it;
- lodge a complaint with your data protection authority — in France, the CNIL (cnil.fr).
9. Contact
For any question about this policy or your data: