Who is responsible
SetProof is operated by the developer identified in the applicable app-store listing, who acts as the data controller for the app. Privacy questions and requests can be sent to idosavion+setproof@gmail.com.
Eligibility
SetProof is intended only for people who are at least 18 years old. The app asks account holders to confirm this before use. If you believe a minor provided data, contact SetProof so it can be investigated and removed where appropriate.
What SetProof processes
- Account data: an account ID, email address, sign-in status, and authentication metadata managed through Amazon Cognito.
- Training data: routines, exercises, sets, repetitions, weight, RPE, workout history, progression choices, and sync status.
- Video and analysis data: a clip you record or select remains on your device; SetProof processes its on-device motion summary, selected frame times, private evidence frames, a bounded muted active-set analysis derivative at low resolution for optional cloud review, capture-quality signals, inferred exercise and repetition estimates, observations, confidence, limitations, and feedback.
- Optional companion and speech data: an installed Wear OS companion receives a minimized latest post-set card and can return RPE; default-off spoken feedback hands the rep count and one cue to your configured device speech service.
- Choice records: the version and time of Terms acceptance, informational Privacy Notice version, adult confirmation, and cloud-analysis permission or withdrawal.
- Operational data: request IDs, timestamps, errors, service latency, model-routing and usage details, and security events needed to operate and protect the service.
For troubleshooting, operational logs include the model's response text, including claims later rejected by validation, and the validation outcome. Request video, images, pose arrays, prompts, credentials, and hidden reasoning are excluded. Credential or encoded-media echoes are redacted and response capture is bounded.
Record only yourself unless every other visible person has agreed. Keep bystanders, documents, screens, and other sensitive details outside the camera view.
How video processing works
The native app keeps the original video and audio in SetProof's private storage on your device and runs pose extraction and repetition counting there. If you enable “Save recordings to Gallery,” SetProof also makes an add-only copy of future camera recordings in your device Gallery; it does not enumerate or read your Gallery. If you request optional form coaching, SetProof may process 6–16 selected JPEG still frames, compact pose/timestamp context, and a bounded muted active-set analysis derivative at low resolution in its AWS environment in eu-central-1 and through OpenRouter to the configured model provider. The derivative is an MP4 limited to the active-set window, no more than 60 seconds, 576 pixels on either side, 15 frames per second, and 8 MiB, with no audio track. SetProof may keep a private device copy with the durable retry until delivery completes or the analysis is removed. Its cloud copy is temporarily stored in an encrypted private S3 bucket in Frankfurt (eu-central-1). The API reads that copy for your requested review, forwards its bytes under provider zero-data-retention controls, and deletes the temporary copy after processing. The video is not stored in the database or made publicly accessible. The original recording bytes, audio, source filename, local URI, account email, and private storage locations do not cross this boundary.
Post-set speech and Wear OS companion
Spoken feedback is off by default. When enabled, SetProof asks your operating system's configured text-to-speech service to speak one concise local count and cue through your selected audio route; that speech engine follows your device settings and provider. On Android, SetProof publishes a result through Google Play services' Wear OS Data Layer only when the SetProof companion capability is installed on a paired watch. The card contains a generated event ID, exercise name and set number, detected rep count, confidence/review state, cue, rest deadline, next target, and timestamp. It excludes account IDs, workout/performance/set IDs, video, audio, evidence frames, landmarks, local paths, and authentication data. The watch stores its latest card privately, vibrates once per result, and can return an RPE from 6 through 10 only for the matching analyzed set.
Why the data is used
SetProof uses account and training data to provide the service you request; video data when you separately consent to automated analysis; operational data for security, abuse prevention, troubleshooting, and reliability; and any data necessary to comply with law or protect legal rights. SetProof does not sell personal data, show behavioral advertising, or use training videos for advertising.
Storage and retention
- The original video and audio remain in SetProof's app-owned storage on your device until you remove them.
- An optional Gallery copy remains there until you remove it through the device Gallery. Deleting a set, clearing SetProof, deleting the account, or uninstalling SetProof does not delete that separate user-owned copy.
- Selected JPEGs can remain with the local analysis until its video, workout, account, or local data is removed. The bounded muted derivative remains only while delivery can retry; acknowledgement or a terminal rejection journals that derivative for local deletion, and cancelling, deleting, or clearing the analysis also removes it.
- The Data Layer retains one latest post-set card plus bounded fixed-path RPE, acknowledgement, and clear-fence records; the Wear app retains one latest card and current RPE status in private storage. The phone attempts a timestamp-fenced clear on every cold start, owner change or sign-out, workout discard, set-video deletion, and local reset. A disconnected watch may receive a successfully published clear when it reconnects. If the phone cannot publish it, a later cold start retries; uninstalling the companion removes its private local state under normal operating-system behavior.
- Selected JPEG evidence is configured to expire from private AWS storage after 30 days.
- Temporary muted review videos use separate private storage. SetProof requests deletion after processing and schedules a cleanup check after 15 minutes for abandoned or interrupted uploads. A one-day expiry rule provides a further backstop. AWS expiry is rounded and asynchronous, so these are cleanup policies, not guaranteed deletion deadlines. OpenRouter requests require zero-data-retention routing.
- API operational logs are generally retained for up to one month.
- Account and training records, compact pose/timestamp context, and completed feedback remain until you delete the account or the service is ended, unless a shorter legal or operational retention rule applies.
- Media and workout deletion markers remain until account deletion so delayed requests cannot recreate removed data.
- After account deletion, a permanent pseudonymous guard containing only an opaque one-way owner namespace and creation time remains to reject delayed recreation attempts. It does not contain profile, workout, or video data.
- An encrypted deletion-cleanup message can remain in a dead-letter queue for up to 14 days after repeated cleanup failure; it contains deletion scope and service identifiers, not workout values, selected frames, or original video.
- Signed-out device data remains in that account's protected local area so offline work is not lost. Use “Remove data from this device,” delete individual videos, uninstall the app, or delete the account to remove SetProof's private copy.
Service providers and transfers
Amazon Web Services provides authentication, API, database, private selected-evidence and temporary review-video storage, and request-driven processing infrastructure. OpenRouter routes the selected JPEGs, compact pose/timestamp context, and bounded muted active-set analysis derivative to a configured model provider under zero-data-retention controls. For users who install the Wear OS companion, Google Play services provides paired-device Data Layer transport under their Android/Wear OS account and connectivity settings. The companion itself does not request the Android Internet permission, but Data Layer can use Bluetooth or, when Bluetooth is unavailable, route end-to-end encrypted data through Google-owned cloud servers over an available network. App distribution providers such as Apple or Google may process store, download, purchase, diagnostic, or review data under their own notices. Processing may occur outside your country.
Your choices and consent
Video analysis is optional. The startup Terms screen explains cloud processing in a prominent section with an initially unchecked, optional cloud-analysis checkbox. One continue action saves your Terms acceptance and cloud choice together. Both enabled and disabled choices persist; routine app updates do not require accepting again. This material change to temporary video storage requires existing cloud-enabled users to confirm disclosure version 3.0 once on that same screen. Existing Terms 1.0 acceptance remains valid, and a prior cloud opt-out remains off without a new prompt. You can reopen the same screen from Profile to change your choice. You can deny camera access, keep training without video, enable or disable future add-only Gallery copies, enable or disable spoken post-set feedback, install or remove the Wear OS companion, or withdraw permission for future video analysis in Profile. Once withdrawal is saved on the device, queued cloud reviews are cancelled and their derivative retry files are retired; withdrawal cannot recall processing or a signed upload already in flight or undo completed analysis. Upload permissions last at most five minutes, and temporary uploads remain subject to cleanup. An upload alone does not authorize analysis: the API checks current permission again before processing. You can remove individual private videos, export device and server data, export a media-free analysis diagnostic report, remove local device data, or permanently delete the account. Gallery copies remain under your control in the device Gallery. You can also use the account-deletion page. Contact SetProof to request access, correction, export, restriction, objection, or deletion where applicable.
Security and safety
SetProof uses authenticated access, per-user data boundaries, encrypted private storage, short-lived signed evidence links, request throttling, bounded evidence size and frequency, and deletion checks. No system is perfectly secure. Automated feedback can be wrong and is general fitness information, not medical advice or a substitute for professional care. SetProof is not a medical device and does not diagnose, treat, cure, or prevent any medical condition. Stop exercising and seek qualified care for pain, injury, or health concerns.
Changes
Material notice changes will be posted here with a new version and effective date. When appropriate, the app will ask you to acknowledge a new version before continuing.