Sahini Privacy Policy
Last updated: 4 September 2026
Sahini is an alarm app that makes you do push-ups or squats, verified on-device, before it'll stop ringing. This page explains, plainly, what that requires us to know about you, and what it doesn't.
At a glance
Your camera never leaves your phone. Rep counting runs on-device. No video or photo is ever recorded, stored, or uploaded.
Alarms themselves live only on your device. Signing in with Apple is required to subscribe, but alarm data isn't stored on our servers.
We don't sell data or run ads. There's no advertising or analytics SDK in this app.
Apple handles your payment. Subscriptions run through the App Store. We never see your card details.
1. Camera & rep counting
When an alarm rings, Sahini opens your front camera to confirm you're actually doing the push-ups or squats it asked for. This runs entirely on your device using Apple's on-device Vision framework — the video frames are analyzed in memory, frame by frame, to track your body position, and are discarded immediately after. Nothing from the camera is ever recorded to a file, saved to your photo library, transmitted over the network, or seen by us. Only the resulting rep count reaches the app's own logic.
2. Account information
Sahini requires an active subscription to use, so every install is asked to Sign in with Apple before subscribing. Alarms themselves are scheduled with Apple's AlarmKit and stored only in local storage on your device — signing in is what unlocks the app, not what stores your alarm data.
Every install is also silently issued an anonymous identifier by Firebase Authentication before you sign in. This alone carries no name, email, or personal information, and is replaced by your real account once you sign in with Apple.
When you sign in with Apple, we receive:
A stable account identifier, from Apple via Sign in with Apple
Your name, only if you choose to share it during sign-in (Apple lets you decline or use a private relay name)
We never receive your Apple ID email or password.
3. Pairing data
Pair mode lets two people confirm each other's wake-up. To make that work, we store the following in our database (Firebase Firestore), tied to your account:
Display name — shown to the partner(s) you pair with, chosen by you, not your real name unless you enter it
Invite code — a random 6-character code you share to let someone pair with you
Partner list — the account identifiers of people you've paired with
Shared alarm details — wake time, exercise type, rep target, and confirmation timestamps for alarms you've paired on
This data is only ever visible to you and the specific partner(s) it's shared with, never to other users, and never used for advertising.
4. Notifications
If you use pair mode, we store a device push token so your partner's app can be notified when you've confirmed your reps (or haven't, once the grace period passes). This token is not used for any other purpose.
5. Subscription & payment
Sahini Pro subscriptions are billed and managed entirely by Apple through the App Store. We receive confirmation of your subscription status (active, expired, trial) via StoreKit, never your card number, billing address, or other payment details. To manage or cancel a subscription, use Settings → [your name] → Subscriptions on your iPhone.
What we don't do: no advertising network, no third-party analytics or tracking SDK, no selling or renting your data to anyone, no sharing pairing data with anyone outside the pairing itself.
6. Data retention & deletion
Solo alarm data lives only on your device and is removed the moment you delete an alarm or uninstall the app.
If you've created an account, you can permanently delete it at any time from Settings → Delete Account inside the app. This removes your profile, invite code, and pairing history from our systems immediately, and clears every alarm on that device tied to your account. It does not cancel an active subscription. Manage or cancel that separately in Settings → [your name] → Subscriptions on your iPhone.
7. Children's privacy
Sahini isn't directed at children under 13, and we don't knowingly collect information from them. If you believe a child has created an account, contact us using the details below and we'll delete it.
8. Changes to this policy
If this policy changes in a way that affects what we collect or how we use it, we'll update the date at the top of this page. Continued use of Sahini after a change means you accept the update.
9. Contact
Questions about this policy or your data: hello@apurplecloud.com