Privacy policy
Effective 28 October 2026. This policy covers the Rep iPhone app, made by Dap Works Pty Ltd in Australia (“the developer” below).
Rep has no servers, no accounts and no analytics. It cannot send your videos, or anything it works out from them, anywhere on its own: it contains no code that can send anything. The only way a video leaves is when you tap Share and choose where it goes.
The short version
- Rep reads the videos in your photo library and analyses them on your phone.
- Nothing is uploaded. There is no network code in the app at all.
- Rep itself never changes, adds to or deletes anything in your photo library.
- There is no account, no identifier, no analytics and no third-party SDK, library or service in the app.
- What Rep works out is kept in its own storage on the phone and is deleted with the app. A backup of the phone made by iOS can hold a copy; see Device backups.
- The app itself sends nothing to the developer. What can reach the developer is an email you choose to send to support, handled as set out below; a rating or review you choose to post on the App Store; and what Apple passes on — crash reports if you have chosen to share them, and TestFlight details if you test a beta.
What Rep reads
Videos in your photo library, and only videos: photos are never opened, screen recordings are skipped, and anything shorter than two seconds is skipped. Rep reads each video's pixels to look for someone upside down, together with the capture date and duration that Photos reports.
Rep asks for full access to your photo library rather than a selection of items, and it needs that access to do anything at all: the point of the app is to find handstands you filmed years ago, and a selection you pick by hand cannot contain the videos you had forgotten you filmed. So full access is required rather than merely preferred. If you refuse, or choose a selection instead, Rep scans nothing — it shows a screen saying it needs full library access, with a shortcut into Settings so you can change it there. Until you do, Rep reads no video and records nothing about your library.
Rep only ever reads. It contains none of the Photos framework's editing or deletion calls, so it cannot modify, replace or remove an original — not even the videos it cuts reps out of. A rep is stored as a start and end time, and the video is re-rendered on the spot in the moment you share it. If you then choose Save Video in the iOS share sheet, iOS saves that clip to your library as a new video, at your request; Rep's own code still writes nothing there.
If one of your videos lives only in iCloud Photos and not on the device, iOS downloads it so that it can be read. That is your own Photos sync, which you already have turned on, and the download is made by iOS; Rep receives the video locally, as it does any other.
What Rep works out, and where it is kept
All of the following is produced on your phone and written to Rep's own storage inside the app's container. Rep sends none of it anywhere.
- Which videos it has looked at
- The photo library's own identifier for each video, with its capture date, duration, and whether Rep has finished with it. This is how a rescan picks up where it left off instead of starting again.
- Each rep it found
- Which video it came from, the start and end time within that video, the classifiers' confidence scores, the seconds you were on your hands and where in the rep those seconds fall, the shape tags, and a straightness score (worked out and stored, but not shown in this version).
- A pose track for each rep
- The positions of seventeen body joints, ten times a second, as numbers, kept for a skeleton overlay that is switched off in this version. It is a set of coordinates derived from the video, not a copy of it, and it describes a body's geometry rather than who that body belongs to.
- What you did with it
- Whether you starred a rep, hid it, or confirmed one that Rep was unsure about.
- Your preferences and the app's bookkeeping
- Whether playback sound is on, when you first opened the app, how far the background scan has got, which reps it has already told you about, and which videos could not be read. A video that fails to decode twice is set aside, and tried again only after the app is updated.
- Thumbnails
- One still image per rep, taken from your own video, kept in the app's cache folder so the grid does not have to decode a video every time you scroll. iOS can clear this folder whenever it needs the space; Rep regenerates them.
- A diagnostic log
- A plain-text file,
rep.log, in Rep's Documents folder, recording what the scan and the app did. The main kinds of line: scan progress, stage timings and counts; for each video looked at, its photo library identifier, pixel size and duration, and whether it had to come down from iCloud; for each rep found, where it starts and ends, the classifiers' scores and its shape tags; app events such as opening or hiding a rep; how long the app took to launch and how much memory it was using; error messages; the text of any notification Rep sent and the notification settings at the time; and how the phone was doing — battery percentage, whether it was charging, the thermal state and whether Low Power Mode was on. All of it is worked out on the phone. No video and no image goes into it. It stays inside the app's own container: this version of Rep offers no way to export or send it, nothing sends it for you, and deleting the app deletes it. See “If something looks wrong” for what to do instead.
Two temporary files are written and then handed straight to iOS: the clip Rep renders when you tap share, and a still frame attached to a background-scan notification. Both go to the system temporary folder, which iOS clears.
What leaves your phone
Rep sends nothing automatically, and the app itself sends nothing to the developer. (A backup of your phone that iOS makes to iCloud does include Rep's data — see Device backups.)
The one way something leaves Rep is that you tap Share on a rep. Rep renders that rep as a new video file and passes it to the standard iOS share sheet; where it goes next — Messages, Save Video, another app, or nowhere — is your choice, made in Apple's own interface, and whatever you choose is then governed by that app or service rather than by Rep. The clip carries what you can see and hear in it: the rep itself with its sound, your time on hands in the templates that show it, a personal-best caption and a small Rep watermark if you leave those switched on, and a file name with the date and time it was filmed. It is built fresh rather than copied from your original, so it carries no location or other details from the original video. That tap is the only route out of Rep that exists; the diagnostic log has none at all.
If you email support
Writing to the support address is something you choose to do. What arrives is what any email carries — your address, and your name if your mail app includes it — plus whatever you put in it. The support page asks for your iPhone model, your iOS version, what happened, and a screenshot if there is one; a screenshot shows whatever was on screen, which may include frames from your own videos, so crop it or leave it out if you would rather.
That email is used to reply to you, to fix the problem you describe and to improve Rep. It is not added to a mailing list and not sold. It is shared only with the services that carry and store the developer's email, or where the law requires it. It is deleted within 12 months of your last message, or sooner if you ask at the same address. You can ask to see, correct or delete what you sent, and you can complain to your local data-protection authority.
What Apple passes on
Apple, not Rep, runs the channels that can bring the developer information about you or your phone, and the app itself plays no part in any of them.
- If you have turned on Share With App Developers (Settings → Privacy & Security → Analytics & Improvements), Apple passes on crash reports and app usage statistics for Rep.
- If you test a build of Rep through TestFlight, App Store Connect shows the developer your name and email address (unless you joined through a public link, which keeps you anonymous), whether you have installed the build, how many sessions and crashes it has had, its crash reports, and any feedback you send through TestFlight, such as a comment and a screenshot.
- A rating or review you post on the App Store is public. The developer can read it and reply to it, as anyone can read it.
Apple handles all of these under its own privacy policy and your settings.
No account, no tracking, no analytics
Rep asks you for no name, no email address and no password, and offers no way to sign in. There is no Rep account because there is nothing for an account to connect to.
Rep does not use the advertising identifier or the vendor identifier, does not ask for permission to track you, and contains no analytics, crash-reporting, attribution or advertising code. It bundles no third-party SDK, library or service of any kind: its code is Rep's own, running on Apple's frameworks. The one piece of outside work in the app is the weights of an open-source body-pose model, converted to run in Apple's Core ML. They are numbers that Core ML runs on the phone, like the rest of Rep's analysis, and they have no way to send anything anywhere.
Rep also does not try to work out who is in your videos. There is code towards identifying the phone's owner across reps, but it is switched off and produces nothing: every rep Rep finds is simply shown to you, whoever is in it.
Notifications
If you allow notifications, Rep tells you when a background scan has found new reps. The notification is composed on your phone — how many new reps, their time on hands, a line about the longest hold, a new best or the most time on hands in a session, and a still frame from your own video — and is delivered by iOS locally. Nothing is sent to a server to produce it, and Rep sends no notification if you decline.
Device backups
Rep's storage lives in its app container, and an iPhone backup — to iCloud or to a computer — includes app containers. So a backup of your phone may contain Rep's database, its log and its preferences, in the same way it contains any other app's data. That backup is Apple's, made under your Apple Account and your settings; Rep does not create it, cannot read it and has no access to it. If you would rather it were not in there, turn Rep off in Settings → your name → iCloud → Manage Account Storage → Backups.
How to delete everything
Delete the app. Removing Rep removes its container, and with it the database of reps, the thumbnails, the preferences and the log. There is nowhere else on the phone for any of it to be.
Outside the phone, a few things can exist: a support email, if you have sent one, which is deleted within 12 months of your last message or sooner if you ask; an App Store review, which you can delete in the App Store; and anything described in What Apple passes on, which Apple holds in its developer tools.
Your videos are untouched by this, because they were never Rep's — they stay in Photos exactly as they were. You can also withdraw Rep's access to them at any time in Settings → Privacy & Security → Photos, or Settings → Rep.
If a copy of your phone's backup still exists, Rep's data may remain in that backup until the backup itself is replaced or deleted. That is managed in iCloud settings, not in Rep.
Children
Rep is not aimed at children. The app collects nothing from anyone, of any age. The only information about a person that can reach the developer is what this page describes: a support email someone chooses to send, an App Store review, and what Apple passes on.
Changes to this policy
If Rep ever gains a feature that changes any of the above, this page changes with it in the same release, and the date at the top moves. The honest version of this policy is short because the app is built that way, not because detail has been left out.
Who makes Rep, and how to reach them
Rep is made by Dap Works Pty Ltd in Australia. For questions about this policy, or to ask to see, correct or delete anything you have sent, email hello@tryrep.fit.