Last updated 2026-08-26
Privacy
The short version: Concentric keeps every set on your phone, works completely offline, and never asks you to make an account. Two things can leave your phone, both are switches you answer on first launch, and both can be turned off afterwards. With both off, nothing leaves the device at all.
Who is responsible for this
Concentric is written and operated by one independent developer, who is the data controller for anything described below. There is no company behind it, no analytics vendor, and no third party that receives your training data.
Questions, requests and complaints all go to the same person, at the address at the bottom of this page.
Not yet in place: The GDPR data controller is identified only as "the developer of Concentric" — no legal name and no postal address. (Decide what identity to publish (Art. 13(1)(a) requires the controller's identity and contact details) and record it in Vault/docs/concentric.md.)
What stays on your phone
Everything, by default. Your exercises, sessions, sets, weights, reps, effort ratings, notes, weigh-ins, routines and settings are stored in a SQLite database inside the app's own storage. That database is the original — anything on a server is a copy of it, never the other way round.
Deleting the app removes that database with it. Exporting first is one tap in Settings and writes a CSV you keep.
Backup — your log, if you turn it on
Backup is a switch you answer on the first screen and can change at any time in Settings. With it on, your training is copied to a server run by the same developer so that a lost phone does not cost you your history and so the log can follow you to a new device.
What is copied is the log, in full:
- Sessions and sets — date, time, exercise, weight, reps, set type, effort rating, and any note you wrote
- Exercises you created or renamed, and the ordinal levels attached to them
- Weigh-ins, including body-composition figures if you record them
- Heart-rate samples recorded during a workout, and daily readiness readings
- Routines, programs and their targets
- Your profile: sex, bodyweight, and — if you enter them — height and birth year
- Which equipment you have marked as available, and any pain entries or custom fields you use
What backup is not
It is not analysis. Nothing looks at your training data — not in aggregate, not anonymised, not to improve anything. An earlier draft of the consent screen offered that as a third reason to turn backup on; it was removed because nothing in the app, the API or the database ever did it, and a claim nobody acts on is still a claim.
It is not shared. Your data is not sold, rented, brokered, or handed to an advertising network, and there is no advertising in the app for one to be handed to.
Problem reports — what broke, if you turn them on
The second switch. When something fails — a sync, a Watch transfer, a database write — Concentric records what failed and why, and sends it. It never sends your sets, your notes or your exercise names, and that is enforced rather than promised: a problem report has no free-text field at all, and every value in one has to be a short code made of letters, digits, dots, dashes and commas. A string carrying an exercise name is refused whole rather than trimmed.
A report contains: which operation failed and in what category, how serious it was, a reason code, the error domain and numeric code, how many times it happened, when it was first and last seen, and your platform, app version, OS version and device model.
Feedback — only what you type
The request-or-issue button sends a report you have written. That message, and a contact detail if you choose to give one, are the one place in the whole app where free text is uploaded — deliberately, because it is the one place you are the author.
Which screen you were on is sent too, and it is filtered: the app is full of exercise names, so a screen label carrying one is dropped rather than cleaned up. Sending feedback uploads it even if backup is off, and the compose screen says so before you send.
Accounts, and why there is not one by default
You never need an account. Backup works without one: the copy is filed under a random identifier the app generates for your install, which identifies uploads and nothing else.
If you do sign in — with Apple, with Google, or with an email address and password — that account adopts the history already uploaded under that identifier. Signing in with Apple or Google stores the opaque subject identifier that provider gives us, plus a display name and avatar URL if the provider sends them. Signing in with an email address stores that address and a hashed password; the password itself is never stored and cannot be recovered from the hash.
Accounts from different providers are never linked to each other by email address. Two sign-ins carrying the same address produce two separate accounts — the shortcut in the other direction is an account-takeover route, and it stays closed.
There is no password reset, because sending one needs an email service this infrastructure does not have. The create-account screen says so up front. The stakes are lower than usual: your log lives on your phone, so a lost password loses the server copy rather than your training history.
What the network sees
The server sits behind Cloudflare, which terminates the connection and forwards it through a tunnel. Cloudflare therefore sees your IP address, as any network provider between you and a server does. Concentric itself does not store your IP address anywhere — there is no column for one, including on browser sessions, where a column was considered and left out because it buys a nicer session list and costs a piece of personal data.
The whole domain is on a top-level domain that browsers force onto HTTPS, so there is no unencrypted version of any of this to fall back to.
Where the copy is kept
On a machine the developer owns and runs, not on rented cloud capacity. Backups of the database are encrypted before they leave that machine.
Not yet in place: The privacy policy does not say which country the backup server is in. (Record the fleet's country in Vault/docs/fleet-and-ssh.md and name it here. GDPR Art. 13(1)(f) needs it: a transfer outside the EEA has to be disclosed, and "a machine in a house" does not say which house.)
How long things are kept
Your training data is kept for as long as you keep using Concentric, because it is your log — it is not aged out from under you. Ask for it to be deleted and it goes.
Problem reports are kept for at most 90 days, feedback for at most a year, and a browser session for at most 30 days past its expiry.
Those limits are enforced nightly by a timer on the server, not by hand — and it runs after the backup rather than before, so a night’s dump still holds one more copy of anything it removes.
The legal basis, for those who need it named
A training log is health data and is treated as special-category data under Article 9 of the GDPR. The basis for uploading it is your explicit consent — Article 6(1)(a) together with Article 9(2)(a) — given by the backup switch, and withdrawable by turning that switch off. Problem reports rest on the same basis, given by their own switch. Feedback you send rests on your consent in sending it.
Withdrawing consent stops anything further being uploaded. It does not by itself remove what has already been copied — ask for erasure for that, which takes one message.
Your rights
You can ask for a copy of your data, ask for it to be corrected, ask for it to be deleted, object to it being processed, and complain to your data protection authority. Requests are answered within one month.
Two of those you do not need to ask for. A copy is the Export button in Settings, and it produces a CSV rather than a support ticket. Corrections are the app: every set is editable after the fact.
Children
Concentric is not directed at children and is not designed for them. If a child has used it and something has been uploaded, ask for erasure and it will be deleted.
Changes to this policy
The date at the top is when this last changed. A change that widens what is collected will be asked about in the app rather than announced here and assumed.
Asking about any of this
Everything above is answered by the same person who wrote the app. Requests about your own data — a copy, a correction, an erasure — go to the same address.
Erasure has its own page, because it is a different question from turning backup off — and turning backup off deletes nothing.