Last updated: 25 September 2026.
This is the policy Google Play requires a link to, and it is written to be read rather than survived. Loadstep sends details about your body to one place only — its coaching service, when you ask it to design a program — and it asks you first; saying no is a complete answer.
• Loadstep keeps your training on your phone. Your logged sets, your weights, your history and your programs live in a database on the device and are not uploaded anywhere.
• Designing a program sends your training details, and only after you agree. When you ask Loadstep to design a program, it asks first; if you agree, your details go to Loadstep's coaching service, which runs the language model on Cloudflare Workers AI. If you say no, your program comes from Loadstep's built-in programs, on your phone. Section 1 lists exactly what is sent.
• The only transfer Loadstep itself makes is one you start: a backup to your own Google Drive (section 2), or a CSV export you share. Android's own backup may also copy some app data to your Google account; section 3 lists what Loadstep keeps out of it.
• Loadstep never asks for, and never stores, your name, your email address, an account, or anything about injuries.
• Nothing you do in Loadstep is used for advertising. There is no advertising SDK, no analytics SDK and no tracking of any kind in this app.
All of it, unless a section below says otherwise:
• every set, rep and load you log, and the date you logged it;
• your body-weight entries and any weight goal;
• your programs, whether built in, designed for you, or built by you;
• your preferences: units, plates, rest times, equipment, training days;
• your subscription status, as a cached answer from Google Play.
You can take a copy of all of it at any time — Profile → Export CSV for your training history, and the backup file described below — and you can destroy all of it at any time by uninstalling the app or clearing its data from Android's own app settings. There is no server holding a copy, so there is nothing for you to ask us to delete.
This is the one time Loadstep sends anything about you, and it asks first. The first time you ask Loadstep to design a program, it shows a dialog that names the data and where it goes, and waits for your answer. If you agree, it sends the details listed below to Loadstep's coaching service, a small program the developer runs on Cloudflare Workers. The coaching service checks the request, adds its own fixed instructions for the model (nothing about you), and passes it to Cloudflare Workers AI, Cloudflare's service that runs the language model. The model returns a proposed program structure: training days, exercises, sets and rep ranges. Both the coaching service and the model run on Cloudflare; the request is not passed to any other company. If that provider ever changes, this policy will name the new one, with a new "Last updated" date, before the change is made.
The language model never sets a load, a calorie target or a weight-loss rate. Every weight on the bar is worked out on your phone by Loadstep's own engine, from the sets you log. A proposal that fails the app's own checks is never shown to you; if none passes, or the service cannot be reached, you get one of the built-in programs instead.
When it is sent. Only when you ask Loadstep to design a program, and only once you have agreed. Each time, Loadstep asks for up to three options, so the same details are sent in up to three requests, one after another. Nothing is sent while you log a workout, and nothing is sent to the coaching service at any other time.
What is in each request — the complete list:
• your training goal, how many days a week you train, and how long a session is;
• your experience level, the equipment you have, and movement patterns you have asked to avoid;
• your sex, age, height, current body weight and activity level;
• your weight goal, if you have set one (target weight, target date and the weekly pace Loadstep worked out for it);
• the best sets you have recently tested for the main lifts;
• whether you want cardio included, and any muscles you asked the program to focus on;
• your device's language tag (for example es-ES, never more than language, script and region), so the plan comes back in your language;
• the list of exercises Loadstep can choose from (each one's id, movement pattern, muscles and equipment — a catalogue of the app's library, nothing about you).
In front of those details the app puts a few plain sentences that repeat some of them (your language, cardio, the muscles to focus on) and say which of the three options it is asking for. They add nothing that is not in the list above.
Like any request over the internet, each one reaches the coaching service from your IP address. The service does not store your IP address and does not pass it to Cloudflare Workers AI. To enforce a daily usage limit it keeps a salted, one-way hash of it next to a counter, and that entry is deleted as soon as the service is next used on a new day.
If you subscribe, one more thing travels with each request: your Google Play purchase token. It is sent alongside the request, in a header, never in the text the model receives. It is a receipt for this app's subscription and nothing more — it names no person, no account and no device. It is never passed to Cloudflare Workers AI and never written to the service's log. The coaching service can check it with Google Play's Developer API to confirm the subscription is active before it does anything else; when it does, it keeps only a salted, one-way hash of the token next to the yes-or-no answer. That answer is trusted for at most six hours, and the entry is deleted at the service's next subscription check once it is six hours past that. While that check is turned off, the service does not read the token at all. If you are on the trial, no token exists and none is sent.
What is never in it, in any circumstance: your name, your email address, any account identifier, any device or advertising identifier, your location, your contacts, your photos, your full training history, and anything about injuries — Loadstep does not collect injury information at all, by design. (The purchase token described above is a receipt for a subscription; it identifies neither you nor your device, and nothing in the request does.)
Your agreement comes first. The first time a design would send anything, Loadstep shows a dialog that names the data, the recipient and — if you subscribe — the purchase receipt described above, and waits for your answer. Until you agree, nothing is sent. If you decline, Loadstep uses its built-in programs instead and the rest of the app is unchanged. You can change your answer at any time: Profile → Share details with the coaching service.
How long it is kept. The coaching service does not store requests, and does not store the programs that come back. It writes one log line per request — the time, the response status, how long it took, how many bytes went in and out, and a short reason code — and never the contents, a header value or your IP address. Cloudflare Workers AI processes the request to produce the answer. Cloudflare's terms for that service say that the content sent to it is not used to train the models or to improve Cloudflare's services; anything else about how Cloudflare handles it is governed by Cloudflare's own terms and privacy policy.
If you turn on backup, Loadstep signs you into your own Google account and writes a backup file into that account's private app-data folder. Nobody else can read that folder, including the developer — Loadstep asks for the drive.appdata scope and nothing wider. The file contains your training database and your preferences. Google's handling of your Drive is covered by Google's own privacy policy.
A few things are deliberately left out of that file: any coaching-service key stored on the device, the developer-facing note about the last coaching request this phone attempted, and half-finished editing drafts (a program or form you started and have not saved). Your subscription state is left out too, so a restore cannot carry an entitlement onto another device — the new device asks Google Play directly instead.
Everything else in your preferences is in the backup, including your answer to the sharing question and any coaching-service address typed into an earlier version of the app (no screen in this version sets one), because a backup that quietly dropped settings would restore you into a different app than the one you backed up. So a restored backup keeps the answer you gave before, and you can change it in Profile at any time. If a restored backup carries such an address, designing a program sends the details in section 1 to that address instead of Loadstep's own coaching service — and never your purchase token, which only ever goes to Loadstep's own service.
Android may back up app data to your Google account. Loadstep excludes from that backup: your preferences file (it can hold a personal API key), the record of whether this device has been asked about notifications, and your subscription and trial state.
Subscriptions are handled entirely by Google Play Billing. Loadstep never sees your payment details; it only asks Play whether this Google account has an active subscription, and caches the yes-or-no answer on the device. If you subscribe and agree to section 1, the purchase token travels with each design request so the coaching service can confirm the subscription with Google — see section 1 above. Otherwise it never leaves your phone.
Loadstep is not directed at children and is not designed for under-16s. The developer does not knowingly collect data from children.
• Internet: Designing a program, once you have agreed (section 1), and Drive backup, if you turn it on. Nothing else — logging a workout needs no connection at all.
• Vibrate: The rest-timer buzz.
• Post notifications: The "rest is over" notification, asked for once, at your first rest. Declining costs only that notification.
• Schedule exact alarm: Making the rest notification arrive on time even if the app has been killed. Loadstep degrades to an inexact alarm rather than nagging you for it.
1. From the app: Android Settings → Apps → Loadstep → Storage → Clear data. That destroys the local database and every preference, immediately and irreversibly.
2. Uninstalling does the same.
3. Your Drive backup (if you made one): Google account → Data & privacy → app data, or delete the app's data from your Google account's connected-apps settings.
4. There is no account to close and no server-side copy to request the deletion of, because there is none.
Material changes to this policy will be reflected in the "Last updated" date above and, when they affect what leaves your device, in the in-app disclosure itself.
Questions or requests about this policy: use the developer contact address on the app's Google Play listing.