Legal

Privacy Policy

Effective 26 October 2026

The short version: the camera never leaves your phone, an account is optional, and there are no third-party analytics or trackers in this app.

1. Who we are

repRaise is the fitness app described on this site, published by its developer, who is the controller of the data described here. For anything in this policy, write to pna.apps@gmail.com.

2. The camera

repRaise uses your camera to count repetitions. Frames are analysed on the device by an on-device pose model, in memory, and discarded as soon as the next frame arrives.

  • No photo or video is ever saved by the app.
  • No photo, video or image data is ever transmitted — not to us, not to anyone.
  • What the counter keeps is numbers: joint angles, distances and the verdict on a rep.

We ask for camera permission because the app cannot count without it. If you decline, everything except the exercise screens still works.

3. What is stored on your phone

  • Workout journals — exercise, repetitions, duration, experience, coins and timestamps, written as files in the app's own storage.
  • Settings — theme, sound, haptics.
  • An install identifier — a random value generated on first run. It is not your advertising ID, is not shared between apps, and does not survive reinstalling.
  • Diagnostic recordings, if you switch them on in Settings — numeric pose data for debugging the counters. These stay on your device; you decide whether to send one to us.

4. What leaves your phone

Signing in is optional. If you never sign in, the app sends us nothing — with one exception: if you buy a coin pack, its purchase confirmation reaches us through RevenueCat (section 6) together with this install's identifier, so the coins can follow you if you sign in later.

When you do sign in, these are uploaded to our server so your progress survives a lost or replaced phone:

DataWhy
Workout journal entries (exercise, reps, duration, XP, coins, time)To restore your progress and compute the leaderboard
Install identifier, platform, app versionTo merge entries from several devices and to diagnose faults
Email address and display name from Apple or GoogleTo identify your account; the name appears on the leaderboard, which anyone using the app can open, signed in or not. You can change the name or hide yourself from the leaderboard in Settings
App settings and device facts sent with each sync: theme, sound and haptics switches, whether diagnostic recording is on, OS version, your time-zone offset from UTC and the id of the installed updateTo read the day stamps in your journal correctly and to see, in faceless daily totals, how the app is used
Your display name as you edit it, reports you file about another player's name (who reported whom, and why), and notices we leave for you in the appTo keep the leaderboard's names decent: a name several people report is reset, and you are told why; reports are deleted with the accounts involved
A device-integrity attestation (Apple App Attest or Google Play Integrity) taken once per install, and the store build numberTo tell a genuine copy of the app from a tampered one, and to offer an update when your copy is too old — never to block your workouts

Sign-in uses Sign in with Apple or Google. We receive only what that provider hands over — an identifier, an email address and, on first authorisation, a name. We never see your password. If you use Apple's Hide My Email, we only ever see the relay address.

5. Advertising

repRaise shows one kind of ad: a full-screen rewarded video you start yourself, by tapping a button, to shorten a waiting timer. There are no banners, no interstitials, and no ad ever appears uninvited.

Ads are served by Google AdMob. To do that, Google receives your device's advertising identifier along with device and usage information, an approximate location derived from your IP address, and ad performance and diagnostic data, and may use them to choose which ad to show and to measure it. Google acts as an independent controller of that data under its own privacy terms.

  • In the EEA, the UK and Switzerland you are asked for consent before any ad is requested, through Google's consent form. You can reopen and change that choice at any time from the app's settings.
  • On iOS the system also asks whether repRaise may track you across other companies' apps and websites (App Tracking Transparency). Declining is fine — the rewarded video still works, the ads are simply less relevant.

We are paid per view. We do not sell your data, and we have no access to your advertising identifier ourselves.

6. Purchases

Coin packs can be bought through the App Store or Google Play. Payment is handled entirely by Apple or Google — we never see your card details. Purchase confirmations reach us through RevenueCat, a purchase-processing service acting on our instructions: it passes on the product bought, the store's transaction identifier, the time and the store's country, so the coins can be credited to your account — or, if you bought without signing in, kept under this install's identifier until you do — and a refund can be matched to its purchase. Coin packs are consumed on purchase and are not restorable; coins you bought never expire.

Coins are also earned by exercising. Bought or earned, they are an in-game currency with no monetary value: they cannot be transferred to another person, traded, or exchanged for anything outside the app.

7. RAISE token and your wallet

This section applies only to the Android version of repRaise that includes the RAISE token, and only after you choose to link a wallet. The iOS app has no such feature, and nothing described here is collected until you link a wallet or confirm a phone number. What RAISE is and how it is collected is explained on its own page and in the Terms of Use.

RAISE is a token on the public Solana blockchain, accrued on our server for the verified repetitions already in your workout journal (section 4) — no new data is collected for the accrual itself. To send it to you we need a wallet you have proved you control. Linking means your own wallet app (Phantom, Solflare or another, through Solana Mobile Wallet Adapter) signs a short message we propose; signing costs nothing and transfers nothing. We never see or hold your private keys and are not a custodian of your wallet. The RAISE balance the app shows is a record on our server of what has been accrued to you and not yet paid out; it becomes an asset on the blockchain only when a withdrawal is paid.

DataWhy
The public address of your wallet (base58), the signed message with its timestamp, and the install identifier of the phone that linked itTo send RAISE to the wallet you proved you control, and to show in the app which wallet is linked
The history of links and unlinks — addresses and timesTo keep one wallet to one account (the same address cannot be linked to several accounts) and to apply the cooldown on relinking
Your mobile phone number, if we ask you to confirm one before a withdrawal, and the fact and time of the confirmationTo keep one person to one account for payouts. The line type is checked through Twilio Lookup (virtual, VoIP and landline numbers are not accepted) and the code is sent by SMS through Twilio Verify; the number is stored with your account by Supabase and used for nothing else — not for marketing, not for sign-in
Payout records: amount, recipient address, time, status and the Solana transaction signatureTo carry out the withdrawal you requested, to show its status with a link to a public explorer, and to keep the accounting records we are required to keep

The blockchain is public and permanent. A withdrawal is a transfer on the Solana network. The recipient address, the amount, the time and the transaction signature are visible to anyone, forever, and cannot be deleted — not by us, not by anyone. Anyone who knows your wallet address can see every transfer to it. If that matters to you, link an address you use for nothing you want kept private, or do not link a wallet at all.

Who processes it. A withdrawal is signed by our own service on Google Cloud Run and handed to a Solana RPC provider — public test-network (devnet) nodes today, a commercial provider later — which passes it to the network. The provider sees the transaction (addresses and amount) and nothing about your account. The Solana network itself is a public system run by no single party: it is not our processor, and what reaches it is outside any agreement of ours.

How long we keep it. The wallet link, its history and the phone number, if you confirmed one, are deleted with your account. Payout records are kept for as long as accounting and tax rules require: they hold the amount, the wallet address, the time, the transaction signature and the internal account identifier, but no longer your name, e-mail or any other account data, which are deleted. Records on the blockchain cannot be deleted by anyone. Deleting your account also cancels withdrawals still in the requested state and forfeits RAISE not yet withdrawn — see the Terms of Use.

In Google Play's Data safety terms the wallet and payout data is Financial info — other financial info: optional, collected only if you link a wallet, used for app functionality, and never shared for advertising. The phone number is Personal info — phone number: optional, collected only when we ask for it before a withdrawal, used for app functionality, and shared with no one except Twilio, which processes it on our instructions.

8. What we do not do

  • No product-analytics or attribution SDKs. No Firebase, no advertising attribution network. The app does exactly three things over the network without an account: it fetches its own content updates (the catalogue of challenges and bosses) and, when you open the leaderboard, the public list of results — both from our server, carrying no identifier and nothing about you, not even your own result: the place you would take is worked out on your phone — and, only if the app crashes, it sends a crash report to Sentry: the stack trace, the app version, the device model and the OS version, never your name, email or account identifier.
  • We do not sell or rent personal data.
  • We do not build advertising profiles ourselves.
  • We do not use cookies on this website. It is static pages with no tracking.

9. Where the data is held

Account data and journals are stored with Supabase (PostgreSQL, EU region) and processed by our own service on Google Cloud Run (europe-west1, Belgium). 3D gear models are delivered from Cloudflare R2. Purchase confirmations pass through RevenueCat, crash reports go to Sentry (EU data region), and the phone check before a RAISE withdrawal, if we ask for one, uses Twilio (line-type lookup and the SMS code through Twilio Verify; United States). These providers act as processors on our instructions, except Google AdMob, which is an independent controller as described above.

  • If you link a Solana wallet (section 7), the RAISE transfer is handed to a Solana RPC provider, acting as a processor on our instructions; the Solana network itself is public and no one's processor.

10. How long we keep it

Journal entries are kept while your account exists, because they are your progress. Delete your account and they go with it (see below). Records of purchases are kept for as long as accounting and tax rules require, with your account identifier removed.

11. Your rights

If you are in the EEA or the UK, the GDPR gives you the rights below. We extend all of them to everyone, wherever you live.

  • Access and portability. The app can export everything we hold for you as a machine-readable file. Ask us and we will send it if you prefer.
  • Deletion. Settings → Account → Delete account, in the app. The account is erased 24 hours later — until then you can call it off; after that it is irreversible. See the deletion page for exactly what goes and what stays.
  • Correction of your display name, from the app or by writing to us.
  • Withdrawing ad consent at any time from the app's settings.
  • Complaint to your local data protection authority — in the EEA or the UK, your national regulator.

Our legal bases: performing our agreement with you (your account and progress), your consent (personalised ads), and our legitimate interest in an app that works and is not defrauded.

12. Children

repRaise is not directed to children under 13, and we do not knowingly collect their data. If you believe a child has created an account, write to us and we will remove it.

13. Changes

If this policy changes in a way that matters, the app will say so before the change takes effect. The date at the top always reflects the current version.