Uphill Privacy Policy
Last updated: September 14, 2026
Uphill is a treadmill workout companion app. This policy explains what data Uphill handles and — more importantly — what it never does with that data.
The short version
Everything you enter into Uphill — your body profile and your workouts — stays on your phone. Uphill has no user accounts, no ads and no advertising trackers, and it never uploads your body profile.
What Uphill does send is anonymous diagnostics and usage events. If the app crashes, a report describing the error (plus your device model, OS version and app version) goes to Google Firebase Crashlytics so the bug can be fixed. Uphill also records anonymous usage events — which screens you open and which features you use, such as "a workout was saved" — so we can see where the app is confusing and fix it. These events record that something happened and, for workouts, a few coarse figures — the floors you climbed, the minutes elapsed and whether a landmark was reached. Your calories, distance and elevation are never sent. Neither is tied to your identity. Uphill also fetches configuration values (such as calculation settings) from Firebase Remote Config; that request sends no personal data.
What data Uphill stores
Uphill stores the following data only on your device:
- Body profile — your weight (required), and optionally your height, sex and age. These are health-related data you enter yourself.
- Workout records — for each workout you save: date and time, elapsed time, distance, calories, elevation gain and floors climbed.
- App settings — your unit preference (metric/imperial) and similar non-personal app options.
Uphill does not access your contacts, location, camera, microphone, photos, or any other data on your device. Uphill does not read from or write to Apple HealthKit or any health platform.
What Uphill sends off your device
Some data does leave your phone, and none of it is your health data:
- Crash diagnostics — when the app crashes or hits an unexpected error, Uphill sends a report to Google Firebase Crashlytics: the error and where in the code it happened, your device model, OS version, app version and a randomly generated installation identifier. This exists so crashes can be found and fixed. It is not linked to your identity, and it never contains your weight, height, sex, age or workout records.
- Usage events — Uphill sends anonymous events to Google Firebase Analytics describing what happened in the app: which screen you opened, that you finished onboarding, that you started or saved a workout, that you created, used or deleted a preset, that you created, started, finished or deleted a workout program, and that you changed units or opened support. Each event carries only the fact that it happened plus, in some cases, a fixed label chosen by the app (for example which preset was tapped, or whether a workout was your first). Alongside these, Firebase records your device model, OS and app version, and a randomly generated app-instance identifier.
What workout events do contain (since version 1.1.3): whole-number floors climbed and minutes elapsed, whether a landmark was reached, and — when the app asks you for a review or you share a card — the floors at that moment and how many workouts you have saved. What they never contain: your calories, distance, elevation gain, or any part of your body profile. The app is built so that other numbers cannot be attached to an event — event values are limited to yes/no flags, fixed labels and the whole-number figures listed here, and this restriction is enforced by automated tests.
Subscription events (since version 1.2.0): when the Uphill Pro screen opens, the app records that it was shown and what opened it (for example, having already used your free custom preset). When you subscribe, it records the result — completed, canceled, pending or failed — and whether you chose monthly or yearly. When you restore purchases, it records the outcome: restored, nothing to restore, or failed. Firebase Analytics may also record a completed subscription on its own, with the product, its price and currency. What they never contain: your payment method, card details, name or email address.
- Configuration fetch — Uphill asks Firebase Remote Config for settings values (for example calculation constants and display timings). This is a download; no personal data is uploaded with it.
All three are processed by Google as our service provider. See Google's privacy policy at https://policies.google.com/privacy. Uphill still has no servers of its own, no user accounts, no advertising and no advertising trackers, and it does not sell or share your data with anyone. Uphill does not collect advertising identifiers and does not use any of this data to track you across apps or websites.
Subscriptions. Uphill Pro is bought through Google Play or the App Store, which handle the payment under their own privacy policies. Uphill never receives your payment details — the store tells the app whether your subscription is active, and the app keeps that on your phone.
Why Uphill stores it
- Your body profile is used for exactly one thing: estimating the calories you burn during a workout (weight is required for this; height, sex and age only refine the estimate and are optional).
- Your workout records exist so you can review your history and cumulative progress.
Uphill collects the minimum needed for these features and nothing else.
Where the data lives
All data is saved in an encrypted database on your phone. The encryption key is generated on your device and kept in your device's secure storage (Keychain on iOS, Keystore on Android). No other app can read it.
What Uphill never does
- Uphill never uploads your profile or your workout records — they exist only on your phone.
- Uphill has no server of its own and no user accounts.
- Uphill never sends your calories, distance or elevation — they stay on your phone. The only workout figures in usage events are the coarse, anonymous ones described above (floors, elapsed minutes, landmark reached, saved-workout count).
- Uphill contains no ads and no advertising or behavioural trackers, and it does not build a profile of you. The only external services it uses are crash diagnostics, anonymous usage analytics and configuration fetch, described above, plus Google Play or App Store billing for Uphill Pro.
- Uphill works fully offline — every core feature (profile, workouts, calculations, history, statistics) works with no network connection.
You are in control
At any time, inside the app, you can:
- View and edit your profile (Settings → Your profile).
- Delete any single workout, or delete all workouts (Settings → Data).
- Reset your profile (Settings → Data).
Because your profile and workouts live only on your phone, uninstalling Uphill permanently removes all of them. (This also means Uphill cannot recover your data if you lose your phone — there is no copy anywhere else.)
Crash diagnostics are retained by Firebase Crashlytics for up to 90 days and are then deleted automatically. Usage events are retained by Firebase Analytics for up to 2 months and are then deleted automatically. Neither contains your body profile; usage events may carry the coarse workout figures described above.
Age
Uphill is intended for adults aged 18 and over.
Not medical advice
Uphill's numbers (calories, distance, elevation, floors) are estimates based on your manual input, with a typical margin of ±10–20%. Uphill is not a medical device and does not provide medical, diagnostic or health advice. For health decisions, consult a qualified professional.
Changes to this policy
If this policy changes, the updated version will be posted at this same address with a new "Last updated" date.
Change on July 31, 2026: Uphill added anonymous crash diagnostics, anonymous usage analytics and remote configuration (all described above). Your body profile and workout records — including calories, distance, elevation, floors and duration — are still never sent anywhere. That has not changed.
Change on September 8, 2026 (app version 1.1.3): usage events now include coarse, anonymous workout figures — floors climbed, elapsed minutes, whether a landmark was reached, and the saved-workout count when the app asks for a review or you share a card. Calories, distance, elevation and your body profile are still never sent.
Change on September 14, 2026 (app version 1.2.0): Uphill Pro subscriptions, custom presets and workout programs were added. Usage events now record when the Pro screen is shown and the result of a subscription (including monthly or yearly) or a restore, and Firebase Analytics may record completed subscriptions with product, price and currency. Uphill never receives your payment details.
Contact
Questions about this policy: android.kangzerg@gmail.com