01 Overview
LiftLab is a local-first workout tracking app. Your workout logs, training history, and personal settings are stored only on your device and are never uploaded to our servers.
02 Who We Are
LiftLab is an independently developed Android application. For privacy enquiries, contact us at [email protected].
03 Data Stored on Your Device
The following information is stored locally in the app's private storage on your device and is never transmitted to us:
| Category | Examples |
|---|---|
| Workout logs | Exercises, sets, reps, weights, and session dates |
| Training setup | Training plans and progression settings |
| App preferences | Weight unit, language, and theme |
| Update prompts | Google Play update prompt cooldown timestamp |
This data is not accessible by other apps. It is cleared when you uninstall the app or clear app data from your device settings.
04 Data Sent Off Your Device
LiftLab communicates with our backend server (liftlab-api.smallcatfactory.com; older app versions may use the previous address liftlab-api.myexzzy.uk) for the following app-managed purposes:
Anonymous install identifier
The first time the app needs to contact our backend, it generates a random UUID and stores it on your device. This identifier is used to authenticate requests to our backend. It is not linked to your name, email, Google account, or any other identifying information. It resets if you reinstall the app.
Play Integrity verification
We use the Google Play Integrity API to confirm that the app is genuine and unmodified. As part of this process, a token is generated by Google using device and app information and forwarded to our backend for verification. We do not store this token after verification. Google's handling of this data is governed by the Google Privacy Policy.
Bug reports and suggestions, user-initiated only
If you choose to submit a bug report or suggestion through the in-app form, the following information is sent:
- Your report or suggestion title and description
- Contact information you provide, if any
- App version and build number
- Device model and Android version
- Device locale, such as
en-GB
Bug reports and suggestions are submitted only when you explicitly tap "Send". No background telemetry or automatic reporting is performed.
Crash reports, automatic
If the app crashes, a crash report may be sent automatically. This report contains:
- Exception type and message
- Stack trace, limited to 8,000 characters
- App version and build number
- Device model and Android version
- Device locale
Crash reports do not include your workout data or any content you have entered. Automatic crash reporting can be turned off at any time under Settings > Legal & privacy > Crash reporting. When it is off, no crash reports are sent.
Google Play in-app updates
Separately, LiftLab uses Google Play's in-app update feature to check whether Google Play has an update available for your installed copy of the app. Google Play may process device metadata, the app version, and installed module or asset-pack information to determine update availability and expected download size. Google's handling of this data is governed by the Google Privacy Policy and Google Play terms.
Advertising in ads-enabled Android builds
LiftLab may use Google AdMob to show a single banner ad in Settings. Google may process identifiers such as the Advertising ID, device and app information, and ad interaction data to deliver ads, measure performance, and protect against abuse. We do not send your workout logs, training plans, exercise history, or other fitness data to AdMob. Google's handling of advertising data is governed by the Google Privacy Policy.
05 Data We Do Not Collect
- Name, email address, or any account credentials, except optional contact text you choose to include in a report or suggestion
- Location data
- Camera or microphone data
- Contacts or calendar data
- Workout logs, training history, or any fitness data you enter
06 Third-Party Services
LiftLab uses the following third-party services:
- Google Play Integrity API is used to verify app authenticity and is governed by the Google Privacy Policy.
- Google Play in-app updates is used to show Google Play's update prompt when a newer Play Store version is available and is governed by the Google Privacy Policy.
- Google AdMob may be used in ads-enabled Android builds to show a single banner ad in Settings and is governed by the Google Privacy Policy.
We do not use analytics SDKs, and we do not share workout logs or training history with advertising services.
07 Data Retention
Anonymous install identifiers and crash, bug report, and suggestion data are retained on our servers for up to 12 months and then deleted. We do not retain Play Integrity tokens after verification. Google Play in-app update data is handled by Google, not stored by our servers.
08 Your Rights
Your workout data, plans, and exercises are stored only on your device and never leave it, so you remain in full control of that information at all times.
For the limited data on our servers, we hold only anonymous identifiers and optional report or suggestion data, and we have no way to link it to a specific person without the install identifier from your device.
You can delete this data yourself at any time, directly from the app, under Settings > Legal & privacy > Delete my server data. This immediately removes all crash reports and bug reports linked to your install from our servers, with no email required. The request is authenticated by your app's anonymous session, so it can only ever delete your own data.
Alternatively, you can email us at [email protected] with your install identifier, visible and copyable in the app under Settings > Legal & privacy > Install ID, and we will delete it promptly.
09 Children
LiftLab is not directed at children under the age of 13. We do not knowingly collect data from children. If you believe a child has submitted data to us, contact us and we will delete it.
10 Changes to This Policy
We may update this policy when the app's data practices change. The effective date at the top of this page will reflect the most recent revision. Continued use of the app after a policy update constitutes acceptance of the revised policy.
11 Contact
For any privacy-related questions or requests, email us at [email protected].