reckoner.fit

Privacy policy

Last updated 21 July 2026

Reckoner is a strength-training coach: a Garmin watch app, a website, and a server that adapts your programme from what you actually lifted. To do that it holds training and health data about you. This page says exactly what is kept, why, for how long, and how to get it back or have it deleted.

The short version.

Who is responsible

Reckoner, operated by Inner Skill Set, is the data controller for the personal data described here. The operator and the server are in the European Union, so the GDPR applies to all of it.

Contact for anything on this page: access, correction, export, deletion, or a complaint at hello@reckoner.fit.

What we collect, and why

Account

Your email address, and the date the account was created. Signing in mails you a 6-digit code; the code is stored only as a hash, expires after 10 minutes, is single-use, dies after 5 wrong attempts, and you can request at most 5 codes an hour. A successful sign-in creates a session token, stored only as a hash, and sets one cookie, rk_session, which is HttpOnly, SameSite=Lax, Secure over HTTPS, and lasts 90 days or until you log out. It exists to keep you signed in. It is not used for tracking or profiling.

The early-access waitlist

Reckoner is closed to new accounts right now. If you ask for a sign-in code and you haven't been invited, no account is created, but your email address is kept on a waitlist, with the date you asked and whether you have since been invited. It exists so we can let you in later, and it is used for nothing else. Ask us and we'll take you off it. Signing up does not remove the entry: it stays, marked as invited, alongside your new account. Deleting your account deletes it too.

Paired watches

When you pair a Garmin watch, the watch and the site exchange a short code and the watch receives its own long-lived token (again stored only as a hash). Against it we keep the label the watch sends (for example Garmin epix2), any name you give the device yourself, and the created and last-used timestamps. That is what the Devices page lists so you can recognise and revoke a watch. Device tokens do not expire on a timer; they stay valid until you revoke them on that page.

Athlete profile: health data

If you fill it in: bodyweight, sex, height, age, your goal (cut, maintain or gain) and your preferred unit. These feed two things and nothing else: the calorie and macro targets on the Fuel page, and the strength standards on the Where you stand page. Leave them blank and those pages simply tell you what is missing.

Training data

Every session you log, from the watch or the website, is stored:

From this the engine builds your history: per-exercise progressions, an estimated one-rep max per lift, and the weekly "what changed and why" log.

Kept only in your browser

The site uses localStorage (not cookies, and never sent to the server) for your light/dark theme choice, a local copy of the profile values above so pages render before the server answers, and, on the Fuel page, your diet preference, allergen filters (nut-free, gluten-free), meal picks and any dishes you build yourself. Meal and diet choices are only in your browser: the server never sees them, and clearing your browser data deletes them for good.

Server logs

The web server in front of the app keeps standard access logs (IP address, timestamp, the URL requested, and the browser's user-agent string) for security and troubleshooting. They rotate on the server's normal schedule and are not used to build any profile of you. The application itself writes no per-request log.

What we do not do

For completeness: the project also contains a developer-only prototype that can push workouts into the operator's own Garmin account from the operator's own machine, using credentials only they hold. It is not part of this service, it is not reachable from the website or the watch app, and it never touches another person's Garmin account.

Legal basis

DataWhyLegal basis
Email, session, device tokens To give you an account, keep you signed in, and let a watch you paired talk to the server Performance of a contract, Art. 6(1)(b)
Waitlist email To let you into early access when a place opens, after you asked for one Steps taken at your request before entering a contract, Art. 6(1)(b)
Training log, plan, history The service itself: storing what you lifted and adapting next week from it Performance of a contract, Art. 6(1)(b)
Bodyweight, sex, height, age, heart rate, pain and injury notes Health-related data you choose to enter so the coach can set loads, targets and standards for you Your explicit consent, Art. 9(2)(a), withdrawable at any time
Server access logs Keeping the service up and secure Legitimate interests, Art. 6(1)(f)

Withdrawing consent for the health data means clearing those profile fields, or asking us to delete the account. It does not affect processing already carried out.

Automated adaptation

Reckoner automatically changes next week's numbers based on the sets, RPE and flags you logged. That is the product, and every change is explained in the weekly log. It produces no legal or similarly significant effect. When you leave a note, or flag pain or an exercise swap, the day is deliberately not auto-progressed: it is held aside for a person to rewrite. Your data is not sent to any third-party service for that review.

Where it is stored, and who else touches it

All account, profile and training data lives in a single SQLite database on one server rented from OVH in the EU. Each account's state is isolated by user id. Deployments push code to that server and explicitly never transfer the database, so your data does not travel to a developer machine as part of shipping a release.

Two third parties are involved, both narrowly:

One more thing worth naming: pages of this site other than this one load an icon font from the public CDN cdn.jsdelivr.net, which means your browser's IP address is visible to that CDN when you use the app. It sets no cookies. This privacy page loads nothing from anywhere but reckoner.fit.

How long it is kept

Your rights

Under the GDPR you have the right to access your data, correct it, have it erased, restrict or object to processing, withdraw consent, and receive it in a portable format. You also have the right to complain to your national data protection authority.

Security

Sign-in codes, session tokens and device tokens are never stored in readable form, only as SHA-256 hashes, so a copy of the database does not hand someone your sessions. The site is served over HTTPS only, and the session cookie is HttpOnly, Secure and SameSite=Lax. Each account's state is isolated per user id, and every request must present a valid session cookie or device token before any of it is returned. No system is perfect; if you believe something is wrong, tell us at hello@reckoner.fit.

Children

Reckoner is not intended for anyone under 16, and we do not knowingly hold data about children. If you believe a child has an account, email us and we will remove it.

Not medical advice

Training loads, calorie targets and strength standards produced by Reckoner are approximate and evidence-informed, a starting point to adapt, not a medical or dietary prescription, and not a diagnosis.

Changes

If this policy changes, the date at the top changes with it, and material changes will be announced in the app. The current version is always at https://reckoner.fit/privacy.