Version of 28 October 2026
1. Who is responsible for your data
The data controller is Devlinker, 9 rue des Colonnes, 75002 Paris. For any question about your data: contact@kleo-app.com.
2. The data we handle
- Your sign-in. You sign in with Apple or Google; Google’s Firebase Authentication service verifies your identity. We receive a technical identifier from it. We store neither your e-mail address nor your name in our database. Firebase keeps what Google passes on from your account — your e-mail address, your name and your profile picture — and, with Apple, the e-mail address you agreed to share, if any (Apple’s relay address if you chose to hide yours).
- Your profile. Your username, your photo if you add one, your language, your time zone, your units, your theme and your visibility choices; the Instagram and TikTok usernames you choose to add — a username only, never a password or access to those accounts. Your ranking category (male or female) and your body weight, asked for at sign-up: your category decides which Arena ranking you appear in; your body weight is shown to you beside the weight you enter for a relative-strength performance, without being used for its score. Your body weight is also used, with your sessions, to work out your ranks: Kleo keeps the date of each weight you enter — or of each weighing received from Health or Health Connect, if you connect them —, to rate each session with the weight you had that day.
- Your training. Your workouts, your programs (the workouts they group and their days), your sessions (exercises, sets, loads, repetitions, durations, dates), your own exercises, your favourites, your descriptions, and the photos and videos you attach. The gym each session was done in: the one your Arena showed when the session reached us, or the one you choose among your gyms. The machine brands you give for yourself (one list for all your gyms) and when you gave it, the fact that you were asked about brands, and the brand machines you keep in your library, because you put them in a workout or a program, or trained on them in a session.
- Your life in the community. Your friends and friend requests, your likes, your comments (and the one they quote), the likes and emojis you give to comments, the friends you trained with, the workouts and programs you sent to your friends, the accounts you blocked and the reports you sent.
- Your life in the Arena. The gyms you joined, since when, and the one you chose to see; the fact that you are training, and since when, as long as a session started less than 6 hours ago is not finished; your discussions, your replies (and the one they quote), your likes and the likes and emojis you give to replies; the performances you send — what you measured, your video, the still image taken from it and its length (and those of a video you replaced with a new one), your category, the body weight you entered for a relative-strength performance and the score of that day — and the votes they receive, on each of their videos; the votes you give, their comment, and whether you chose to vote anonymously; the titles you hold or held, and the one you wear; the invitation link you create for your gym (one per gym) and the friends you send it to in the app; the fact that you saw the opening of your gym’s arena, so as not to show it to you again; if you chose, before 28 October 2026, the machine brands of a gym you opened, that choice, which is no longer used.
- Your device. An installation identifier created at random by the app, the system (iOS or Android), the app version and your open sign-in sessions. Once you are signed in, we note whether your phone allows or refuses notifications; if it allows them, the token that reaches it, encrypted in our database. If you set reminders: their days and their time. What you choose to receive on your phone: your friends’ sessions, titles and ranks, the activity around your sessions. The Google components used for sign-in and notifications create their own technical identifiers on your phone. If you use Kleo on a watch (Apple Watch or Wear OS watch): the link that ties your watch to your account.
- The measure of the first journey. To know where newcomers get lost, the app notes a few steps: first opening, sign-in attempted, abandoned, succeeded or failed, sign-up steps, arrival on the home screen, first session started and finished. Each step carries its date, the system (iOS or Android), the app version, and a digest of the installation identifier, computed with a secret of our server; your account is not in it, whether you are signed in or not. Depending on the step, it also carries the sign-in method (Apple or Google), an error code, whether the account is new or not, or how the first session began. No text, no load, no photo. This measure is made by us and for us alone: it stays in our database, we only draw overall figures from it, and it follows you in no other app. It does not ask for your prior agreement, but you can refuse it at any time, even before signing in: Privacy on the welcome screen, or Settings → Account → Privacy.
- Crash reports. If the app crashes — in released versions only, never in development —, Firebase Crashlytics, a Google service, receives a technical report: where in the code the crash happened (the stack trace), the model of the device, the versions of the system and of the app, the free memory and disk space, and an installation identifier of Crashlytics’ own. No account identifier, username, content or location. Refusing the measure of the first journey (Privacy) also stops these reports from being sent.
- Technical logs. Like any online service, our servers note the IP address, the date and the kind of each request, for security and to diagnose failures.
Your photos are reduced before they are sent and your videos rewritten without their side information: the place, the date and the device of the shot are no longer in them.
Kleo reads neither your contacts nor your advertising identifier. Your location, only in the two cases described below.
Your steps, from Health or Health Connect. Only if you connect Health (on iPhone) or Health Connect (on Android) from your profile, and your phone allows it, Kleo reads the number of steps of each day there — nothing else, and without steps entered by hand. When you open the app, at most once an hour, your phone sends us the total of each day that has data, over the last 32 days, with the app they come from (Health or Health Connect) and your time zone, which cuts the days as your phone does. From them we draw your daily average over the last thirty days, today left out, shown on your profile if it is public, and your total over the last thirty days, which ranks you in your gym if it is public; on the 1st of each month, your total of the month before can make you the holder of the title of Hermes or Artemis for the month, and it is then kept with the history of the title; a day without data counts as zero there. You disconnect your steps whenever you like, from your profile (“Disconnect my steps”): everything that was sent to us is then erased. The access itself is withdrawn in Health or Health Connect.
Your weight, from Health or Health Connect. Only if you connect it from “Edit my profile” (“Weight from Health” on iPhone, “Weight from Health Connect” on Android) and your phone allows it, Kleo reads your weighings there — those a scale wrote or you noted: the weight and the time of each weighing, nothing else. When you connect it, Kleo reads those of the last 30 days; then, each time you open the app, the new ones. Your phone sends us the last weighing of each day, with the app it comes from (Health or Health Connect). Each becomes a dated body weight of your profile, like those you enter: your profile shows the latest, and your ranks rate each session with the weight you had that day. Nobody else sees it. You disconnect it whenever you like, from the same place: everything we received from Health or Health Connect is then erased, and your weight goes back to the last one you entered in Kleo. The access itself is withdrawn in Health or Health Connect. Kleo writes nothing into Health or Health Connect.
What Kleo reads from Health or Health Connect is never used for advertising, sold to anyone or entrusted to any service other than our host.
Health, on Apple Watch. Only if you allow it on your watch, Kleo reads your heart rate and your calories there during a session, to show them to you, and saves the session to Health. Your heart rate and your calories stay on your watch and in Health, with one exception: your average heart rate for the session, if you agree to it being shared — the watch tells you when you allow Health, or asks you once if you had allowed it before. It is then sent to us with the session and shown with it, to whoever can see it (only you for a private session). You change your mind in your watch’s settings (“Average BPM shared”): the average heart rates already sent are then erased. Without this permission, Kleo works the same way.
Sensors, on a Wear OS watch. Only if you allow it on your watch (body sensors and physical activity), Kleo reads your heart rate and your calories there during a session, to show them to you. They stay on your watch, and Kleo writes them nowhere else, with one exception: your average heart rate for the session, if you agree to it being shared, as on Apple Watch — sent with the session, shown with it to whoever can see it, erased if you change your mind in your watch’s settings. You withdraw the permission in the settings of your watch. Without it, Kleo works the same way.
Your position, for the gyms around you. When you open « Choose my gym » in the Arena, Kleo asks for access to your approximate position. If you allow it, Kleo reads it each time you look for a gym, until you withdraw that access; if you refuse, the search works without it. Your phone rounds it to about a kilometre and sends it to us with the search, to put the nearest gyms first and say how far they are; we do not save it anywhere, neither with your account nor in our logs. Kleo never reads it in the background. Access is withdrawn in your phone’s settings.
Your position, to draw your activities. When you start a « GPS activity » (run, ride, walk…) on your phone or your watch, Kleo reads your precise position, with its altitude and its time, from « Start » to « Finish » — also with the screen off: iOS shows it with its blue pill, Android with a notification. Never before, never after, never outside an activity you started. These points make the route of your activity: it is sent to us with it, with your pulse if your watch measured it, and shown on its page to whoever can see the session — only you for a private session —, without its first and last 200 metres for others, so as not to show where you start from. The figures drawn from the route (distance, pace, climb, splits) are shown in full. Access is withdrawn in the settings of your phone or your watch.
Your activities from Health or Health Connect. Only if you tap « Import my activities », Kleo reads in Health (iPhone) or Health Connect (Android) your cardio sessions recorded by other apps or devices — Apple Watch, Strava, Garmin…: their sport, their times, their distance, their duration, the calories, your pulse during the session and their route. Each becomes a Kleo session, with the name of the app it comes from, then its route and your pulse are sent to us as for an activity drawn by Kleo. Kleo then reads the new activities again each time you come back to the app. You stop the import by withdrawing access in the settings of Health or Health Connect; the activities already imported stay in your sessions, and you delete them like any session.
3. Why we handle it
- To provide Kleo (performance of the contract): your account, saving and synchronising your sessions, your statistics, sharing with other members, the Arena — your gym, its feed, its rankings and the review of your performances —, exporting and deleting your account.
- To suggest the gyms around you (your consent): your approximate position, for the time of a search, only if you allowed it.
- To draw your activities (your consent): your precise position during an activity you started, only if you allowed it.
- To import your activities from Health or Health Connect (your explicit consent): the pulse of a session is health data. We only receive it if you tapped « Import my activities », after reading what Kleo does with it, and you withdraw this consent in the settings of Health or Health Connect.
- To send you reminders (your consent): only if you allow notifications and choose days.
- To tell you on your phone what happens around you (your consent, which you give by allowing notifications when your phone asks you): what moderation decided about you; what happens to your performances and your titles in the Arena, and replies to your discussions; when someone quotes your reply or your comment; what your friends send you; friend requests, likes and comments on your sessions, and comments that quote yours; the session a friend has just finished, with its name, its length, its volume, its sets and its records; a unique title taken by a member of your gym or by a friend; a friend’s new rank. Everything also stays in the app’s notifications. You choose what reaches your phone in Settings → Notifications — three switches: your friends’ sessions; titles and ranks; activity, that is likes, comments and friend requests —, or you turn everything off in your phone’s settings.
- To show and count your steps (your explicit consent): a step count that comes from a health app may be health data. We only receive it if you connected Health or Health Connect from your profile, after reading what Kleo does with it, and you withdraw this consent by disconnecting your steps.
- To share your average heart rate with your sessions (your explicit consent): a heart rate is health data. We only receive it if you agreed, on your watch, to it being shared, and you withdraw this consent in your watch’s settings: the average heart rates received are then erased.
- To take your weight from Health or Health Connect (your explicit consent): a weighing that comes from a health app is health data. We only receive it if you connected your weight from “Edit my profile”, after reading what Kleo does with it, and you withdraw this consent by disconnecting it.
- To fix crashes (our legitimate interest: that Kleo works): the crash reports described above, which you can object to in the same way as the measure of the first journey.
- To understand where the first journey gets stuck (our legitimate interest: making sign-up simpler): the measure described above, which you may object to at any time, without having to say why.
- To protect the community and the service (our legitimate interest: keeping Kleo safe; and our duties as a host, under the European Digital Services Act and the French law of 21 June 2004): handling reports, moderation, warnings, preventing abuse, security, technical logs.
- To answer the authorities (legal obligation): we hand data to a court or an administration only when the law requires us to.
We do not sell your data. Kleo shows no advertising and builds no advertising profile. Today, none of your data is sent to an artificial intelligence service. If that were to change, we would tell you beforehand, and ask for your agreement where the law requires it.
4. Who sees what
- Other members see your profile — username, photo, rank, joining date, Instagram and TikTok usernames if you added any, statistics, best marks, number of friends, history — and your finished sessions, with their photos, their videos, their description, your average heart rate if you agreed to share it, likes and comments, with the likes and emojis of those comments. Your profile is public to begin with. If you make it private, others only see your username, your photo, your rank and your joining date from your profile, so that they can ask to be your friend, nor your Instagram and TikTok usernames, and none of your sessions any more; you can still be found by your username, and your comments under other people’s sessions remain visible. You can also make a single session private. Tapping your Instagram or TikTok opens that network, outside Kleo: its own rules apply there. Kleo checks the form of a username, not that the account exists or is yours.
- The members of your gym see, in the Arena: your username, your photo and your rank in the list of its athletes; your place in the ranking of your category, and so your category; that you are training, and since when, if your profile is public — nothing of what the session holds; your finished public sessions, in the gym's feed, with their photos, their videos and their description; your discussions and your replies; the performances you send, with their video, their score, the body weight you entered for a relative-strength performance, and how many votes their current video received; the titles of the gym you hold, and, in its feed, each unique title you win there; in the feed of each of your gyms whose arena is open, each new rank you reach; if you connected your steps and your profile is public, your thirty-day total and your place in their leaderboard. If your profile is private, they see neither that you are training nor your sessions; the rest remains. When you leave a gym, what you posted there no longer appears in its feed. While your gym’s arena waits for its three members, its members see the first ones to have joined — username, photo and rank. The exercise library of your gym’s members offers the machines at least two of its members trained on there over the last 90 days: an overall count of the sessions its members did there, in which nobody sees who uses which machine.
- Your friends are told, in their notifications and on their phone, when you finish a session — its name, its length, its volume, its sets and its records —, only if your profile and that session are public, and when it ended less than a day ago; a session saved later tells nobody. They are also told when you reach a new rank, and when you take a unique title if your profile is public. The members of your gym are told of each unique title you take there. When you like or comment on a session, or ask someone to be your friend, they are told with your username — and, for a comment, its first words. When you quote someone’s comment or reply, they are told the same way; the quote shows their username and first words to whoever can read the conversation, as long as their comment exists and they can read it. A like or an emoji given to a comment or a reply tells nobody: it is counted under that comment, and whoever can read it sees who reacted and how. Nobody is told of what an account they blocked, or that blocked them, does.
- Rankings by exercise: on the sheet of an exercise and in « Gym records », each person's best set — drawn from their finished public sessions — is compared with those of the members of your gym in the same category, and with those of your friends. A private profile is not in them for others.
- Your body weight: the one you enter for a relative-strength performance is shown beside its score, in your gym, because the score depends on it. The one in your profile is shown to nobody.
- Votes. The members of your gym vote on the performances sent there: verify, ask for another video or refuse the attempt, the last two saying why. After a request for another video, its author may send a new one: voting starts again from zero on it. The author of a performance sees every vote it receives, on each of its videos, with its comment and the username of who gave it; the other members only see how many, on the current video. A member may vote anonymously: then nobody, the author included, sees who voted — the vote is signed "Anonymous reviewer" everywhere. We keep who voted, so that a vote can be answered for: only the people in charge of moderation can read it.
- Your invitation link to Kleo: a single link, the same each time, that you share wherever you like. Whoever opens it sees, even without a Kleo account, your username — not your photo. Once signed in, they see your profile as they would in the app; nothing of you if either of you blocked the other. Opening the link adds no friend: a friend request still has to be made. It is kept as long as your account exists.
- Your invitation link: whoever opens it sees, even without a Kleo account, the name of your gym, its city, its number of members and your username — not your photo. Once signed in, they also see your photo, your rank or the title you wear, and the gym’s first members, as in the Arena; nothing of you if either of you blocked the other. Opening the link joins nobody.
- Your profile shows the unique titles you hold and the one you wear, to whoever can see your profile.
- Your steps: if you connected them, your daily average over the last thirty days — with the days it counts and the app they come from — is shown on your profile to every member, as long as your profile is public; a private profile does not show it.
- A workout or a program you share by a link: whoever has the link sees, even without a Kleo account, its name, its exercises, their sets, targets and rests, the days of a program and your username — never your notes, nor what you did with it. Once signed in, they also see your photo and can add a copy of their own — with a copy of their own of the photo or video of your personal exercises it uses, which they keep even if you remove yours; nothing of you if either of you blocked the other. You turn the link off whenever you like: it then shows nothing, and the copies already added stay with those who made them. You can also send a workout or a program to a friend from the app: they are told in their notifications, with your username, your photo and its name, and open it by that same link. Only your friends can receive it, never an account you blocked or that blocked you.
- Nobody but you sees the body weight in your profile, your own exercises and their files, your workouts and your programs — except those you share by a link or send to a friend —, the accounts you blocked or your reports.
- An account you blocked, or that blocked you, no longer sees anything of yours, nor you anything of theirs.
- The people in charge of moderation see reported content, the sessions held back by the word filter, and what is needed to handle them. The person reported does not know who reported them.
- Authorities receive data only when the law requires us to hand it over.
5. Who helps us run Kleo
- Railway (Railway Corporation, San Francisco, United States) hosts our servers, our database and the files, in a data centre located in the Netherlands, in the European Union. Railway is a US company: its teams may access data from the United States to run the service.
- Google provides Firebase Authentication, which verifies your sign-in, Firebase Cloud Messaging, which carries notifications — their text, for instance a friend’s username and the name of their session, goes through it to reach your phone —, and Firebase Crashlytics, which receives the app’s crash reports. What Firebase Authentication keeps for your sign-in — identifier, e-mail address, name, account picture, IP address — is kept by Google in the United States.
- Apple is involved if you use an Apple account or an iPhone: Sign in with Apple, delivery of notifications.
Railway and Google run these services on our behalf. For your Apple account or your Google account itself, Apple and Google remain responsible for their own service.
So some data leaves the European Union: at least the data of your sign-in, kept in the United States. These transfers are covered by the safeguards of the European regulation (adequacy decision or standard contractual clauses). To know more about these safeguards, write to us at contact@kleo-app.com.
6. How long we keep it
- Your account, your profile, your training and your life in the community: as long as your account exists.
- What you delete yourself: removed from the app at once. The text of a comment, of an Arena discussion or reply, the name and the description of a session, the name of a workout, the name and the notes of a program are erased from our database at the same moment; only an empty row remains, which stops another of your devices from bringing them back. The name of a deleted exercise of your own stays until your account is deleted: your past sessions need it.
- After you delete your account: your profile and your sessions disappear from the app at once; your data and your files are erased from our systems within hours, 30 days at most. The identity Firebase kept for your sign-in is deleted at the same time; according to its documentation, Google may take up to 180 days to erase it from its own systems and backups. Our technical backups may hold your data for up to 30 more days, then they are overwritten. We keep for 30 days the technical record of the deletion itself: its date, the internal identifier of the account, that of your sign-in and the internal names of the erased files, without your username or your content. Reports and the moderation log follow their own periods, below.
- What you did in the Arena — gym, discussions, replies, performances, videos, votes, titles and invitation link —: as long as your account exists. A vote stays attached to the performance it concerns as long as that performance exists; if its author deletes their account, the vote stays, without their name. A video replaced with a new one is kept, with the votes it had received, as long as the performance exists: moderation can thus see what those votes were about. The history of a title — who held it, and when — is kept as long as the accounts concerned exist.
- Your steps, if you connected them: the last 35 days at most — the time to count the month before for Hermes and Artemis; an older day is erased, even if your phone sends nothing more —, and all of them as soon as you disconnect them or delete your account.
- The route of an activity and the pulse that comes with it: as long as the session exists; deleting the session deletes it.
- An export file: 24 hours.
- A file sent but never attached to a session or an exercise: 7 days.
- Crash reports: 90 days, at Google (Firebase Crashlytics).
- The measure of the first journey: 13 months. As your account is not in it, deleting the account changes nothing to it.
- Notifications shown in the app: 90 days.
- Closed sign-in sessions: 90 days. The link of a watch, once ended: 90 days too. A sign-in session nobody used for 180 days — neither your phone nor the watch it linked — is erased: that device then has to sign in again.
- The technical record of what your device sent (what stops a session sent twice from being saved twice): 180 days.
- Reports: 12 months after they are closed — and at the latest 24 months after they were filed for a report left without a decision —, with what the content said when it was reported (a username, the name and the description of a session, the text of a comment) — even if its author removed that content or deleted their account in the meantime. The log of moderation decisions: 3 years.
- Technical logs: 90 days at most.
7. Your rights, and how to use them
You may access your data, correct it, erase it, retrieve it in a reusable format and ask for a processing to be restricted.
You may also object to the processing we base on our legitimate interest: the measure of the first journey, crash reports and security. When a processing relies on your agreement — reminders, notifications on your phone — you can withdraw it at any time; what was done before remains valid. Finally, you can tell us what should become of your data after your death.
What you must give us to use Kleo: an Apple or Google account, a username, your ranking category and your body weight. Everything else is optional: photo, Instagram and TikTok usernames, descriptions, photos and videos, reminders.
No important decision about you is made by a program alone. The only automatic step is the word filter described in the terms of use, which can refuse a username or a comment, or hold a session back until a person reviews it.
Most of these rights are used directly in the app:
- correct your profile: Profile → Edit my profile;
- retrieve your data — your training, your life in the community and in the Arena, the history of your body weight, your reports, your reminders, what your phone may receive, your devices and the list of your photos and videos: Settings → Account → Export my data;
- delete your account and your data: Settings → Account → Delete my account;
- make your profile or a session private: Settings → Profile visibility, or the session’s menu;
- turn off the measure of the first journey and crash reports: Settings → Account → Privacy;
- turn off reminders: Settings → Reminders, or your phone’s settings;
- choose what reaches your phone — your friends’ sessions, titles and ranks, activity (likes, comments, friend requests): Settings → Notifications, or turn everything off in your phone’s settings.
For any other request, write to us at contact@kleo-app.com: we answer within one month. If you believe your rights are not respected, you may contact the French data protection authority (cnil.fr) or the authority of your country.
8. Minimum age
Kleo is meant for people aged 15 or over. If we learn that an account was created by a younger person, we close it and erase its data.
If you are under 18, or were when you created your account, you can have your data erased at any time: by deleting your account in the app, or by writing to us. A parent can also write to us at contact@kleo-app.com.
9. Security
Exchanges between the app and our servers are encrypted. Notification tokens are encrypted in our database, files can only be reached through signed, temporary links, and access to moderation is restricted to designated people. No system is infallible: if an incident affected your data, we would inform you as the law requires.
10. If this policy changes
The date at the top of the page shows the version in force. If a change is significant, we tell you in the app at least 30 days before it applies, unless the law or security requires us to move faster.