Privacy policy
Last updated 18 October 2026
This policy explains what GymIsLife does with information when you use the app or this website. It is written to be read, not to be survived.
The short version. Your training data — your sessions, weights, records, habits and diary entries — is stored on your own device and is not sent to us. We cannot see it, and we do not have a copy. The exceptions are listed below. Most of them are about how the app works and how we fix it — but one is not: if you send us something, whatever you put in it comes with it — a bug report, or an email. A screenshot carries whatever was on the screen, and what you type carries whatever you type. Either can include your training. We say so again where bug reports are covered.
Who we are
GymIsLife is operated by GYMISLIFE LTD, a company registered at Companies House in England and Wales (company number 17438520). Our registered office is in our company information. For anything in this policy, contact info@gymislife.app.
What stays on your device
The app stores the following in your device's local browser or app storage. Three of these
leave your device on their own, and all three are named here. The gilinit cookie described under
Cookies and first-run markers is attached automatically by your browser to
requests to the app, and our servers ignore it. The subscription identifier is sent to RevenueCat,
as set out under Subscriptions below. And when the app needs a demonstration
video it asks our server which video belongs to an exercise, so that exercise's name and its equipment
category go to our server in the moment — not your own equipment list, and set out under Exercise
demonstration videos below. Nothing else on this list leaves your device on its own, is
read by our servers for any purpose of ours, or is backed up to any server we control. Anything else here
reaches us only if you send it to us yourself, in a bug report or an email — a screenshot or what
you type can carry any of it, as set out under Bug reports below.
- Your gym equipment selection, training goal, training days and plan
- Every session you log — exercises, weights, reps, sets, duration and volume
- Your personal records and badge progress
- Daily habits and habit history
- Diary notes — and meal-planner entries from older versions of the app, if you restore a backup that contains them
- A cache of exercise information (names, the written how-to instructions, and which demonstration video belongs to which exercise), so the app does not have to ask for the same thing twice
- In the web version, a copy of each exercise picture you have opened, so it does not have to be fetched again
- Three small markers recording that you have used the app before, so it can tell a genuine first run from data that has gone missing — set out in full under Cookies and first-run markers below
- Whether your subscription is active, when it expires, and when the app last asked — cached so it still works when it cannot reach the App Store or Google Play
- A random identifier for this installation, kept by the subscription check so that it asks about the same installation each time — this one is sent to RevenueCat, and is described under Subscriptions below
Because it lives on your device, deleting the app or clearing its storage deletes this data permanently. We cannot recover it for you. The app includes an export function so you can keep your own copy — see Support.
What leaves your device
Exercise pictures
The exercise pictures are part of the app itself. On iPhone and Android they are installed with the app, so showing one makes no request at all. In the web version they are served from the same place as the app. Your browser keeps a copy of each picture you have opened, so it is there again without another request; that cache is cleared when we release a new version and rebuilds as you use the app. Either way no other company's servers are involved in showing you an exercise picture — on the web, only our own host, described below. That is not the same as saying the app contacts nobody: demonstration videos do, as described next.
Exercise demonstration videos
When the app shows you a set of exercises — today's session, or the swap sheet — it asks our own server which demonstration video belongs to each one, so a demo is ready if you tap it. That request carries the exercise name and its equipment category. It carries nothing else that we have put in it — though, like any request your device makes, it arrives with your IP address attached, which our host sees. The answer is stored on your device, so the app does not have to ask about the same exercise every time. Our server also issues a short-lived playback token for the video you actually play.
The video itself then streams directly from MuscleWiki to your device, carrying that token, so your IP address and device user-agent reach that provider directly and the provider can see the stream came from GymIsLife. We receive nothing back from it. None of this includes your training data or your records.
Exercise data and videos provided by MuscleWiki.com. The written exercise instructions shown in the app come from the same source. MuscleWiki is a Cayman Islands company, and we do not control where it processes the request.
Product analytics and session replay
There are none. GymIsLife contains no product analytics, no session replay and no advertising SDKs — nothing that watches you move around the app or builds a profile of you.
One thing sits close enough to the line that we would rather name it than let you find it on a store listing. RevenueCat, described under Subscriptions below, charts subscriptions and renewals for us, and its own guidance requires us to declare that as an analytics purpose on the app stores. It is counting purchases, not watching how you use the app. The app counts plenty for you — sets, volume, records, streaks — but that stays on your device, and nothing else in GymIsLife reports a count to anybody.
Earlier pre-release builds included Microsoft Clarity, which recorded app sessions. Clarity was removed on 6 September 2026 and the project deleted. Nothing that records how you use the app has replaced it. If we ever add anything that does, it will be behind a consent control and this policy will be updated before it ships.
Bug reports
If you use the in-app bug reporting feature, we receive: what you write in the description, the "where it happened" and "what you expected" fields, the app build number, the screen you were on, the date and time, your device user-agent string, and up to three screenshots, if you choose to attach them.
Bug reports are submitted through Netlify Forms, on the same terms as the launch-list form below — including that your IP address is stored with the submission and that the submission is screened for spam by Akismet (Automattic Inc., United States). Bug reports do not go to our mailing provider and are not added to any list. See the launch list section for the detail.
Your weights, reps, records, habits and diary entries reach us only if you send them to us. The one thing the app tells our own server by itself is which exercise it needs a video for and that exercise's equipment category, described above; nothing else about your training leaves the device unprompted. A screenshot of a workout screen can contain your bodyweight, your training history, your habits or a diary entry — and so can what you type in the description, if you describe your session in it. Everything else in this policy keeps that data on your device; what you send us does not. The same is true if you email us instead — your message sits in our mailbox, and whatever you have put in it sits there too. Please check what is on screen before attaching, and do not put anything in a report or an email that you would not want us to hold.
Website hosting
This website and the app are served by Netlify. Like all web hosts, Netlify processes standard server request data — including IP address — to deliver pages and protect against abuse. Netlify acts as our processor.
Subscriptions
When the paid subscription launches, payment is taken by Apple through the App Store, or by Google through Google Play, depending on where you got the app. We never receive or store your card details.
Checking your subscription involves a third party. The app asks the App Store or Google Play what you have bought, and passes that answer to RevenueCat (RevenueCat, Inc., United States), which checks it is genuine and tells the app whether your subscription is active. The app keeps that answer on your phone so it still works without a network. We use RevenueCat so that the same subscription works across both stores and so that we are not migrating live subscribers' receipts to it later, which is the expensive direction.
What RevenueCat receives. A random identifier generated for your installation — not your name, your email, or anything you have typed — together with what you bought, when, and whether it renewed, expired or was refunded; the store receipt or purchase token that proves it; and ordinary technical details: your device type and operating system version, your language and currency settings, the store country, how much you have spent with us in total, and when the app last contacted it. On iPhone and iPad it also receives the identifier Apple gives our apps for your device — the same across any app of ours you install, and lasting as long as one of them is installed. Your IP address arrives with the request, as it does with any request your device makes. The store country normally comes from the purchase itself; where there is no purchase yet, RevenueCat works the country out from that IP address instead. Either way it does not keep the IP address — it keeps the country and drops the address.
Deleting the app does not always break the link. The installation identifier is cleared when you delete the app, and a fresh one is made if you install it again. But if you then restore or re-buy the subscription, the store receipt is the same one, so RevenueCat joins the new installation to the record it already had. That is how you get your subscription back, and it means a reinstall is not a clean break.
What RevenueCat does not receive: your training. Your sessions, weights, records, habits and diary entries stay on your device exactly as the rest of this policy describes. No training data and no health or fitness information reaches RevenueCat. Your card details do not reach it either — Apple and Google take the payment.
RevenueCat is our processor. It handles your subscription record on GYMISLIFE LTD's instructions and for no purpose we have chosen beyond that, under RevenueCat's Data Processing Addendum. We have enabled none of the integrations that would pass this data on to anyone else. It would be wrong to tell you it does nothing of its own with it. Its own terms reserve the right to use technical and usage data about its service — including data derived from what we send it — to improve that service, and to share or publish that in aggregated or de-identified form, which it then owns. We would rather tell you that than claim a restriction its contract does not contain.
It is in the United States, so this data leaves the UK. RevenueCat does not claim Data Privacy Framework participation, and relies on the EU Standard Contractual Clauses with the UK International Data Transfer Addendum. Email us and we will tell you where to read it, or send you a copy.
Apple and Google are each separate controllers for the purchase itself — not our processors. Whichever one you bought through is the seller of record, it takes the payment, and its handling of your payment information is governed by that company's own privacy policy rather than by this one.
Our lawful basis here is two things, not one. RevenueCat creates a record for an installation the first time the app starts — before anyone has bought anything, so there is no contract yet. That first record rests on our legitimate interests in running a paid app: we cannot show or withhold the paid features without knowing whether this installation has paid for them. Once you subscribe, handling your purchase is performance of a contract.
How long it is kept, and how to have it deleted. We keep subscription records for as long as you subscribe and for six years after that, which is the period in which a claim about a contract can normally be brought in England and Wales. Ask us sooner and we will delete yours — email info@gymislife.app. There is one honest difficulty: the identifier is random and we hold no name or email beside it, so we cannot always tell which record is yours. Tell us which store you bought through and roughly when, and we will find it if we can and tell you plainly if we cannot.
If you never subscribe there is no contract for those six years to run from, so they do not apply. That record holds the same things as any other — the identifier, the technical and country details above, and the date the app last checked — with nothing bought against it. It is deleted 24 months after the app last checked.
The launch list
This is separate from the app, and entirely optional. If you enter your email address in the sign-up form on the home page and submit it under the consent statement shown there above the sign-up button, we collect and process:
| What | Why |
|---|---|
| Your email address | To email you about GymIsLife — a handful of updates and training tips between sign-up and launch, a note when the app goes live, and a follow-up shortly after. |
| The date and time you signed up, and the exact wording of the consent statement shown to you at the time | To evidence your consent, which we are required to be able to demonstrate. |
| Your IP address | Used for spam screening: it is one of the things the spam check looks at, alongside the rest of what you submitted. We do not ask for it and do not want it — Netlify records it with every form submission and we are not aware of a way to turn that off. The copy we hold is stored with the submission and deleted with it; the spam check took its own copy of the submission, the address in it included, which sits on Akismet's own retention and is not ours to delete. |
Controller: GYMISLIFE LTD, registered in England and Wales, company number 17438520. Contact info@gymislife.app; our registered office address is in our company information.
Lawful basis: your consent, under Article 6(1)(a) UK GDPR and regulation 22 of the Privacy and Electronic Communications Regulations 2003. We do not rely on the “soft opt-in”. You are never added to this list by using the app, and nothing else on this site or in the app signs you up — you consent by choosing to submit the form under a statement that says what you will receive, and we store that statement alongside your address so we can show what you agreed to.
If you signed up under an earlier version of that statement, it is the version that governs you, not the current one. The wording was widened on 16 September 2026. Anyone who joined before then agreed to launch updates and nothing else, and that is all they will get. When the list moves into our mailing provider, the version each person consented to goes across with their address and the list is divided on it, so that nobody is sent something their own statement did not cover. That division is being built as part of the move, and no marketing email will go out before it is. If you want to see the exact wording you agreed to, ask and we will send it to you.
Processors: two companies handle your address on our instructions — Netlify and EmailOctopus — and each of those uses others to do its own job. None of them, at either level, may use your address for anything of their own. At the second level that rests on their contracts with each other rather than on any of ours, because we hold none with them.
Netlify Forms (Netlify, Inc., United States) receives the form when you submit it and stores the submission on our behalf as our processor, under Netlify's Data Processing Agreement. Netlify stores data outside the UK; those transfers are covered by the UK International Data Transfer Addendum incorporated into that agreement.
EmailOctopus is the mailing provider we use to hold the list and send the emails. Your address reaches it by being copied out of Netlify — the addresses already collected in a single move, and every later sign-up as it comes in. This page was updated to say so before any address was copied. It is a product of Three Hearts Digital Ltd, registered at Companies House in England and Wales (company number 09897211). Your address is copied from Netlify into EmailOctopus, and from then on both systems hold a copy: the Netlify submission is the record of what you agreed to, and the EmailOctopus entry is the working list we send from. The retention table below says how long each one lasts and what unsubscribing does to each.
EmailOctopus stores lists in Ireland, inside the European Economic Area, on Amazon Web Services, and the sending itself is done on EU-based infrastructure. Its own privacy policy says that staff working outside the UK and EEA — its own, and its suppliers' — may access data it holds. We are not going to tell you your address never leaves the UK, because that would not be true.
Spam screening: Netlify screens every form submission through Akismet (Automattic Inc., United States) as its own sub-processor. To make that check Akismet receives the submission itself — which means your email address and your IP address, not the IP address alone. Automattic states that it transfers data outside the EU under Standard Contractual Clauses.
Transfers and the paperwork behind them. Where your address goes outside the UK it is covered by contract. We hold that contract directly with Netlify — the UK International Data Transfer Addendum incorporated into its Data Processing Agreement — and with EmailOctopus, whose agreement with us contains its data processing terms. Storing the list in Ireland needs no transfer mechanism, because Ireland is inside the EEA. The staff access described above does. We have asked EmailOctopus to confirm in writing which mechanism covers it, and we will name that mechanism here when we have the answer — we would rather say that than name one we have not seen. We have no contract with Automattic, because Akismet is Netlify's sub-processor rather than ours; what covers that leg is the arrangement between those two, which Automattic publishes. Email us and we will tell you which document covers which transfer and send you a copy, or point you at where it is published.
Netlify and EmailOctopus, and the companies those two use to do their own job, are where your address goes for the launch list. None of them may use it for their own purposes — at the second level on the strength of their contracts with each other rather than any of ours, as above — we do not sell it, and we do not use it for anything but the emails described above. Separately from all of that: if you email us, your message sits in our mailbox like any other email, and our mailbox has a provider like anybody's does.
We name the two companies we instruct directly, and we do not list every company each of them in turn relies on — that second list is theirs, it changes without reference to us, and the last time this page tried to hold a closed list of names it went out of date. Ask us and we will tell you what those lists say at the time you ask, and where to read them yourself.
The emails themselves carry no tracking, because we switch it off. Our mailing provider offers open tracking, click tracking and analytics link tagging. All three are on by default and each is set separately on every individual send. We turn all three off on every email we send — one-off campaigns and automated ones alike — before it goes out. So there is no invisible image telling us you opened a message, no link rewritten to route through a counting server, and no tag added to the links: we do not know who opened what, or who clicked. We are putting it that way — a setting we operate on every send, not a property of the software — because that is what it is, and because it means the promise is only as good as our doing it. We check it before each send.
What we cannot switch off is delivery itself. To send you an email the provider has to process your address, and it records whether the message was accepted, bounced, or was marked as spam. We use that only to stop emailing addresses that no longer work. Those delivery records sit with your list entry and go when it goes.
Withdrawing consent: every email carries a one-click unsubscribe link, and you can email info@gymislife.app at any time to be removed. Withdrawal is as easy as giving consent and costs you nothing. The link takes effect immediately; if you email us instead, a person has to act on it, and we will do that as soon as we see it, without undue delay, and we will not email you in the meantime. Withdrawing does not make anything we did before you withdrew unlawful — it stops things from that point on.
What unsubscribing does not do, and why. It stops the email at once, but it does not by itself wipe you from both systems. A minimal suppressed record stays on the mailing list so that a later import cannot add you back by mistake, and the original form submission stays where it is because it is our evidence of what you agreed to — evidence we are required to be able to produce, and which would be worth nothing if we deleted it the moment someone left. Neither record is used to contact you.
If you want both gone as well, say so and we will delete them both within one month, and confirm when it is done. We delete them together, and that is deliberate: once the form submission is gone there is nothing left for us to load into the mailing list, so there is no way back on except by signing up again yourself. The only reason we would keep the suppressed record is if you asked us to keep the form submission and remove only the mailing entry — in that case the suppressed record is what stops the next import putting you back, and we would keep it and tell you so. We do not keep a separate list of people who have left.
If the app never launches, the list is deleted and you will be told.
What we do not do
- We do not sell your data.
- We do not show advertising in the app.
- We do not require an account, an email address or a name to use the app. The launch list is opt-in and separate.
- We do not build advertising profiles. We do not give your training data to anyone to use for their own purposes — apart from the exercise names and equipment categories the video lookup needs, the only way any of it reaches us is if you send it to us yourself, in a bug report or an email. A bug report passes through the company that runs the form, on our instructions, and the spam check that company uses, and no one in that chain may use it for anything of their own, though at the second level that rests on their contract with each other and not on ours.
This website
This website — these pages you are reading — sets no cookies and loads no third-party scripts or trackers. There is nothing to consent to here and no cookie banner. If that changes, a consent banner will appear and this policy will be updated first.
The app is a separate thing, served from its own address, and it does set one cookie — set out in full under Cookies and first-run markers below.
Cookies and first-run markers
This website sets no cookies. The app sets one —
gilinit — and keeps two other markers alongside it, so that if your data goes
missing it can tell you rather than silently starting you from scratch. Noticing is all they
do: we hold no copy of your training data — other than anything you send us
yourself, in a bug report or an email — and we cannot get it back for you.
All three are named, with what each one does and, where it has one, how long it lasts, on our cookies page.
Legal basis
Where UK GDPR applies, we rely on four things, and this is the whole list. Legitimate interests for essential service delivery, bug fixing and security, and for the record the subscription check creates before anyone has bought anything. Your consent for the launch list described above. Performance of a contract once you subscribe, for handling that purchase. And a legal obligation for keeping the record of a consent you have since withdrawn, which is the first of the two things described next.
Two things can outlive that consent, and neither is held on the strength of it. The stored form submission is kept because Article 7(1) requires us to be able to demonstrate that you consented, which is a legal obligation; the suppressed record left behind after an unsubscribe is kept on legitimate interests, the interest being that you are not emailed again by accident. Neither is used to contact you, and both go if you ask for them to go. Once those two are deleted, nothing about the launch list is left — except the copy the spam filter took when you submitted the form, which sits with Netlify's sub-processor on its own retention and is not ours to delete. Anything else we hold about you comes from something else you did, such as sending us a bug report, and the table below covers it separately.
Storage on your device. Storing or reading information on your device is governed by regulation 6 of the Privacy and Electronic Communications Regulations, replaced in full on 5 February 2026. The app stores your training data and a cache of exercise information on your own device, because it cannot work without them. It also keeps the three first-run markers described under Cookies and first-run markers above, including one cookie, and your subscription status and the random installation identifier the subscription check uses, so the paid features work when the App Store or Google Play cannot be reached. In the web version it additionally keeps a copy of each exercise picture you have opened, so the app works offline and does not fetch the same picture twice. Paragraph 4 of Schedule A1 to those Regulations permits all of this without consent: each of these is needed to provide the app you asked for, including the identifier without which the subscription check cannot tell one installation from another. The device identifier the subscription check reads on iPhone and iPad is not something we store; it is supplied by the operating system, and it is read for the same purpose and on the same footing. Nothing is stored or read on your device to profile you, to advertise to you, or to record what you do inside it. Two things about your use of the app are recorded, and both are described under Subscriptions above: what you have bought, and the date the app last checked your subscription. Neither comes from anything extra placed on your device. Nothing builds a picture of how you move around the app. No record is kept of how long you stay, or of the screens you visit, beyond the single screen you were on if you send us a bug report yourself. Two further things do leave a trace elsewhere, and both are described in their own sections above — asking our server which demonstration video belongs to an exercise, which necessarily names that exercise and its equipment category, and the ordinary host logs every website and server keeps.
How long we keep things
| What | How long |
|---|---|
| Training data on your device | Until you delete it. We hold no copy, other than anything you send us yourself, in a bug report or an email — see the bug report and email rows below. |
| Launch list email address — the form submission (Netlify). The original submission, with its consent record and IP address, kept as our evidence of what you agreed to | Until 24 months after launch. Unsubscribing does not remove it. Ask us to delete it and we will, within one month. |
| Launch list email address — the mailing list (EmailOctopus). The working copy we send from | Until 24 months after launch. Using the unsubscribe link stops all email immediately and leaves a minimal suppressed record so you cannot be added back by mistake. Ask us to delete it and we will, within one month — and we will do the Netlify copy at the same time unless you say otherwise. |
| Delivery records for emails we send you — accepted, bounced, or marked as spam | Held by the mailing provider with your list entry, and deleted when that entry is deleted. |
| Bug reports | Up to 24 months, then deleted. |
| Bug report IP addresses and spam screening | IP addresses are held with the submission for the same period as the report. Akismet applies its own retention. |
| Emails you send us | Kept in our mailbox while they are useful and deleted when they are not, and in any event within 24 months. Ask us to delete yours and we will. |
| Server request logs | Per Netlify's retention period. |
| Subscription status | The copy on your device is cleared when you delete the app. The record RevenueCat holds for us — the random installation identifier, what you bought and when, and the connection details set out under Subscriptions above — is kept for as long as you subscribe and six years after that. If you never subscribe, it is kept until 24 months after the app last checked. Either way it goes sooner if you ask us to delete it — subject to the one difficulty described under Subscriptions above, which is that a random identifier is not always traceable to the person asking. |
Your rights
If you are in the UK or EEA you have the right to access, correct, delete, restrict and object to our processing of your personal data, and to data portability. Most of this you can exercise yourself: your training data is on your device, and you can export or delete it without asking us. For anything else, email info@gymislife.app and we will respond within one month.
You also have the right to complain to the Information Commissioner's Office (ico.org.uk).
Children
We do not ask your age and the app does not check it. Whatever your age, what we hold is the same and it is very little: your training data stays on your device and we do not profile you, advertise to you, or watch you move around the app. We collect nothing we do not need. What we do hold is set out above and it is short: a subscription record, which exists from the first time you open the app whether you ever subscribe or not, and a bug report or an email if you send us one — and whatever you put in either, what you type as much as a screenshot you attach, can contain your training, which is why we ask you to check before you send it.
We have taken the ICO's Age Appropriate Design Code into account in designing the app, and we keep that under review. Holding on our servers no training data other than what you send us yourself, doing no profiling, running no advertising and building no picture of what you do inside the app answers several of the things the Code is concerned with — data minimisation and profiling above all — and it answers them for everybody, rather than only for users we have worked out are children. On sharing, what answers the Code is not that we share nothing — the subscription check does send an identifier to another company, as set out above — but that the subscription check has nothing about your training to send. Apart from the exercise names and equipment categories the video lookup needs, your training reaches us only if you send it to us yourself, in a bug report or an email, both described above. We are not claiming that settles the whole Code. It also covers things like streaks, badges and other features designed to keep you coming back, which this app has and which we are still working through. We will say here what we conclude rather than leave the impression it is already done.
The app tells you what weight to lift and increases it over time. It is not a substitute for coaching. If you are new to lifting, or training without supervision, get someone qualified to check your technique before you load a bar.
Changes
If we change this policy we will update the date at the top, and set out what changed in the list below. For anything significant we will say so in the app — and if it affects the launch list, we will say so in an email to the list, because people on it do not have the app yet.
18 October 2026. We have removed the minimum age from the Children section. It previously said GymIsLife is for people aged 13 and over. We do not ask your age and the app does not check it, so that sentence named a floor we do not enforce, and we would rather say nothing than state one we do not operate. What we hold is unchanged. We have also made the summary sentences about the demonstration-video lookup agree with the full description of it above: the request carries the exercise name and its equipment category, and the short descriptions of it here and on the support page left the category out.
Still wrong, and left where it is: the entry below dated 28 September says the Children section “now says GymIsLife is for people aged 13 and over”, and adds that this says who the app is for rather than describing a gate we operate. It did say that, and it no longer does. We are not editing the old entry; this is the correction.
28 September 2026. Corrections, the things they dragged with them, a change of policy, and something logged late. The correction that matters most comes first, because it is the one that had this page describing the subscription check as something it was not.
Corrected, and it is the one that matters: this policy said the subscription check happened on your device, that “the answer is not sent to us, and no identifier for you reaches us as part of it”, and — in the retention table — that we held no copy of your subscription status and would “update this policy before” we ever used a third party to check entitlement. The entry below dated 11 September went further and said no identifier for you reached us “at all”. We are leaving that entry where it is, because deleting a record of what we said is worse than correcting it, but it is wrong and this is the correction. We have since built the subscription using RevenueCat, which is exactly the kind of third party those sentences were about. The Subscriptions section above now names it and sets out what it receives, why, on what legal basis, for how long, and that the data goes to the United States. The retention table row has been rewritten. We are publishing this before the app is in anyone else's hands — but the code went in before the page did, and we would rather say that than present it as having been done the other way round.
Also corrected, everything the RevenueCat disclosure showed was wrong: the list of what the app keeps on your device was introduced by a sentence saying that, with one exception, none of it is sent to us. There was more than one exception, and the list was missing the subscription identifier altogether. Everything on that list that leaves your device on its own is now named in the paragraph that introduces it, and the paragraph no longer speaks for what you choose to send us yourself. Four separate places on this site said we run no analytics at all — the section on product analytics, the storage paragraph under “Legal basis”, the Children section, and the cookies page. None of them could stand beside a purchase count and a record of when the app last checked in. Three of them now say what is and is not recorded; the cookies page instead narrows its claim to what that page actually covers, and points at this one for the rest. This page, our terms and our cookies page all said flatly that we hold no copy of your training data, and the terms said we “never had it”. That is true of everything except what you send us yourself, in a bug report or an email — which this page has always said of bug reports, in that section, while the flat denials elsewhere on these three pages did not, and said of neither channel in the same breath. That section, and everything correcting it here, used to say a screenshot was the only route; what you type in the description can carry your training too, and all of it now says so. Each of those now carries the exception, and the Children section, which said the same thing in a different way, has been rewritten around it. The list of what we do not do also said we do not share your training data with third parties; a bug report passes through the company that runs the form and the spam check that company uses, so that line now says what actually happens instead. Our support page already carried the bug-report exception, but not the email one, and its answer on deleting everything listed only bug reports and the launch list; it now names both channels, and also lists emails you have sent us and the subscription record. That same answer now sets out where a launch-list address ends up, the copy the spam check took when you submitted the form included, and says more than one place rather than a number, pointing here for which of them we can delete. The support page's answer on backups said your training history lives only on your device; it now says that it lives on your device and that we hold no copy we could restore it from, which is the part we can actually promise. The retention table here has gained a row for emails, which it never had. Our cookies page counted the third parties it points at in this policy and its count was short — RevenueCat appears here for the first time in this update; that page now flags four of them, and also covers the subscription marker, which is the one marker that goes to another company. And the section on product analytics promised that anything “of this kind” would sit behind a consent control, in words wide enough to cover the subscription check, which does not sit behind one and does not need to. That promise and the analytics claim above it now both distinguish counting purchases from recording how you use the app, which is the distinction that was doing the work all along.
Added: a paragraph under product analytics naming RevenueCat as the one thing here that reports a count to anybody, so that you do not first meet it on a store listing. The device identifier RevenueCat receives on iPhone and iPad, which the first draft of this update left out of the Subscriptions section altogether. And a plain statement that deleting and reinstalling the app does not reliably break the link to your old subscription record, because restoring a purchase re-joins them. The storage paragraph under “Legal basis” has also gained the subscription identifier and the reason it needs no consent, and the list of what we rely on in law now sets out all four bases, which it did not before.
Also corrected, found on a last read of the page: the launch-list collection table said your IP address “is stored with the submission and deleted with it”. The copy we hold is, but the spam check took its own copy of the submission with the address in it, and that one is not ours to delete — which this page says elsewhere, and which the equivalent row for bug reports already said. The launch-list IP row now says it too.
Logged late: the line in the list of what stays on your device about diary notes and meal-planner entries was reworded without being recorded here, which the paragraph opening this changelog says we will do. It now reads as it does above. We cannot now say which update it went in with, and we would rather log it late than not at all.
Still wrong, and left where it is: the entry below dated 11 September says we added “a line in the retention table confirming we hold no copy of subscription data”. We did, and that line is now gone, replaced by the rewritten subscription row described above. We are not editing the old entry; this is the correction.
Changed: the Children section. It previously said we set no minimum age and that children may use the app. It now says GymIsLife is for people aged 13 and over. We still do not ask your age and the app still does not check it, so this says who the app is for rather than describing a gate we operate. What we hold is unchanged. The paragraph on the ICO's Age Appropriate Design Code still concludes that what we hold answers several of the Code's concerns for everybody rather than only for children. What did change in it: its wording about what we hold on our servers and about analytics, for reasons given above, and its position on sharing. It used to count sharing among the concerns answered by our holding nothing; it now says plainly that the subscription check does send an identifier to another company, and that what answers the Code is that the check has nothing about your training to send.
20 September 2026. The launch-list section has been rewritten, and one thing outside it has been narrowed. This is a long entry because a lot of small statements were wrong, and we would rather list them than summarise them.
Corrected, the one that matters: this policy said “Beyond Netlify and Akismet we do not pass your address to anyone else.” That was true when it was written. It stopped being true when we set up a mailing provider, EmailOctopus, to hold the list and send the emails, and the section above now names it and the company behind it. Nothing about what we send you, or how often, has changed as a result of this — the same handful of updates you agreed to, on the wording you agreed to, from the same company, with the same one-click unsubscribe. We are telling you because we had named a closed list of companies and that list got longer, not because anything you agreed to has changed. This page was changed as the provider was set up and before any address was moved into it, rather than after the fact.
Also corrected, seven smaller things, all of which this page had wrong: it said unsubscribing ended our holding of your address, when it suppresses rather than deletes and does nothing at all to the original form submission. It said withdrawal “takes effect immediately” without distinguishing the unsubscribe link, which does, from emailing us, which needs a person. It said the spam filter received your IP address, when what it receives is the submission, your email address included. It said we linked to our provider's list of the companies it uses; there was no such link, and we have replaced the claim with an offer to tell you on request. It gave two different answers about how quickly we delete on request. It referred you to the consent statement “above the button” on a page that has no button. And it described your IP address in one place while leaving it out of the table that is supposed to list everything the form collects.
Narrowed: the Children section said that because we hold no training data on our servers, the protections the ICO's Age Appropriate Design Code is concerned with apply to every user by default. That claimed more than we had done. The Code also covers features designed to keep you coming back — this app has streaks and badges — and we have not finished working through that. The section now says what we have actually done and what we have not.
Added: what the emails themselves do and do not collect — open tracking, click tracking and link tagging are all turned off on every email we send, automated ones included; which document covers which transfer out of the UK, that we have no contract with Automattic and why, and an offer to send you the documents or show you where they are published; the fact that we have asked our mailing provider to confirm in writing what covers its staff access from outside the UK and EEA, which we will name here when we have it; what an unsubscribe does and does not remove, and the lawful basis for the two records that can outlive it; how we keep earlier versions of the consent statement separate, and an offer to send you the wording you personally agreed to; and retention rows for the second copy of your address and for delivery records.
16 September 2026. One correction and three clarifications.
Clarified: the launch-list consent statement has been widened, and new sign-ups are recorded against version 4 of it. It previously said “launch updates… nothing else”; it now says what we actually plan to send — occasional training tips alongside the updates, and one follow-up shortly after launch. Anyone who signed up under an earlier version keeps the wording they agreed to, and we have not changed what is stored against their address.
Clarified: the section on the ICO's Age Appropriate Design Code previously said we would set out here what we do about it before the app goes on sale. It now says what we do, rather than promising a future statement.
Corrected: the section on demonstration videos said that for about half of the exercises “nothing leaves your device”, because the app already knew which video to use. That was wrong, and it was wrong in our favour. The app asks our server about every exercise it prepares a demo for. What it already knows only changes what our own server has to do next — it does not change what leaves your phone. The section now describes the single request that actually happens.
Clarified: GymIsLife is coming to Google Play as well as the App Store, so the sections naming Apple now name Google alongside it where both apply.
11 September 2026. Three corrections and four additions.
Corrected: the Subscriptions section said we receive anonymous identifiers
from Apple to check whether you have a subscription. That described the wrong thing: the check runs
on your device, the answer stays there, and no identifier for you reaches us at all. The section now
says what actually happens instead of a tidier-sounding version of it. And the description of the app's first-run markers was too confident: there are three of them, not
one, and in the browser version clearing your own site data removes both of the two a browser has,
so the next visit can look like a first run. The installed iPhone app keeps a third that survives
it. And the list of what the app keeps on your device said "It is not transmitted to us and is
not backed up to any server we control." The
gilinit cookie is the exception: your browser attaches it automatically to requests to
the app. Nothing reads it or acts on it, but "none of it" was not true and now says so.
Added: four things. A separate cookies page naming all three
markers, including gilinit, the one cookie the app sets, which this policy had not
named, with a pointer to it from here — it also replaces a sentence under "This website" that claimed nothing
was stored on your device beyond what was needed to serve the pages. A line in the device-storage
list for your cached subscription status, which the app keeps and this policy had not mentioned.
A statement that Apple is a separate controller for the purchase itself rather than
our processor, and the lawful basis on which the app checks your entitlement. And a line in the retention table
confirming we hold no copy of subscription data.
10 September 2026. We have removed the statement that GymIsLife is only for over-18s. We do not ask your age and the app has never checked it, so it was not a rule we were keeping. The section on exercise pictures has been rewritten: they are part of the app rather than something fetched from anyone else, and the section now says so. We have also corrected how many exercises have their video details built in — it is about half, not most.
8 September 2026. The section describing how exercise pictures loaded, and the retention-table row covering them, were removed. The section is restored and rewritten in the 10 September entry above. No retention row is needed: the pictures are part of the app and hold nothing about you.
7 September 2026. The analytics and session-replay disclosures were replaced with a statement that there are none, following the removal of Microsoft Clarity from the app on 6 September 2026 and the deletion of its project. The description of how demonstration videos load was corrected — the video streams directly from the provider rather than through our server. MuscleWiki is named as the source of exercise data and videos. The IP address stored with form submissions, and Akismet spam screening, are now disclosed. The stated reason for the 18+ age floor then in force was changed: it had rested on Microsoft's guidance for Clarity, and was restated as resting on the app suggesting training weights. That floor was removed on 10 September — see the entry above.