Privacy Policy
SwingLoop films your golf swing and plays it back on a second device you own. This policy explains what happens to that video, what little else the app touches, and who else is involved.
Last updated September 2, 2026The short version
Your swing video never reaches us. It is recorded on one of your devices, analysed on that same device, sent directly to your other device, and stored there. There is no SwingLoop account, no cloud library and no server of ours in the path. There is no SwingLoop account. The app sends a small set of pseudonymous app-use and subscription events to PostHog and RevenueCat so we can understand onboarding and subscription conversion; those events never contain your swing, name or contact details.
The rest of this page is the long version, written out properly because “we don’t collect anything” is a claim worth being specific about.
Your video and your swing
SwingLoop uses two devices: one films, and the other plays each swing back. Here is exactly what happens to the footage.
- Detection happens on the filming device. Camera frames are analysed in place using Apple’s Vision framework, which runs entirely on the device. Neither the frames nor the body landmarks derived from them are uploaded anywhere.
- Recording is local. When a swing is detected, the clip is written to the filming device’s own private app storage.
- Transfer is device to device. The clip is sent straight to your paired device over Apple’s encrypted nearby-device connection. It does not use range Wi-Fi, a Personal Hotspot, or any server operated by us or by anyone else.
- Storage is on the replay device. Clips are kept in that app’s private storage during the active replay session and pruned automatically to the recent-history count you choose. They are cleared when you leave the session. You can save a chosen clip to Photos or share it through the system share sheet before leaving.
- We never receive it. We have no ability to access, view, copy or recover your swing video. If you delete the app, the clips it was holding go with it.
To pair, the two devices exchange the information needed to find each other nearby — a cryptographically random pairing token, one-session identifier and non-personal device label. No IP address or TCP port is exchanged. That pairing stays between your two devices.
What we collect
There is no SwingLoop account. We do not ask for your name, email address, phone number, location or handicap, and there is nowhere in the app to give them to us.
Your settings — replay timing, playback, history size, mirroring, detection tuning, optional spoken cues and optional recording audio — are stored locally on your device so the app remembers them between sessions. They are also shared with the device you are currently paired with, so both screens agree, and they are not sent anywhere else.
For product analytics, the app records a randomly generated installation identifier, app and operating-system version, device model, locale and time zone, an app-open event, the onboarding cards reached, whether onboarding was completed or skipped, paywall availability, and the result of purchase or restore attempts. These events are described more fully below.
Subscriptions and payments
SwingLoop is a paid subscription, sold through the Apple App Store. Apple and RevenueCat handle the purchase:
- Apple. Your purchase is made with your Apple ID. Apple processes the payment and holds your billing details. We never see your card number or your Apple ID credentials. Apple’s handling of that data is governed by Apple’s Privacy Policy.
- RevenueCat. We use RevenueCat to check whether a subscription is active. RevenueCat generates an anonymous, randomly assigned identifier for the installation and stores the purchase receipt information Apple returns, along with basic technical details such as the platform, app version and country. We have configured the SDK so that it does not collect advertising or device identifiers. RevenueCat’s practices are described in its privacy policy.
That anonymous identifier is not linked to your name. It is used to check whether the installation is entitled to use SwingLoop and to connect subscription lifecycle events to the same pseudonymous analytics journey.
Permissions the app asks for
- Camera. Required on the filming device to see and record your swing. Nothing is recorded until you open the camera screen.
- Microphone. Optional. Swing clips are silent by default. iOS asks for microphone access only if you turn on Record swing audio.
- Photo library. Optional add-only access is requested only when you choose Save swing. It lets SwingLoop add that replay to Photos without reading the rest of your library.
- Local network. Required so the two devices can find each other and send clips over Apple’s direct peer-to-peer framework. It does not require joining the same Wi-Fi network. iOS asks for this the first time you pair.
You can review or withdraw any of these at any time in the iOS Settings app, under SwingLoop. Withdrawing camera or local network access will stop the corresponding half of the app from working.
Analytics, tracking and ads
SwingLoop uses PostHog for product analytics. PostHog receives the limited technical and product-interaction events listed above under a random installation identifier. RevenueCat receives that same random identifier so it can send trial starts, trial conversions, renewals, cancellations, billing issues and expirations to the same PostHog journey. PostHog's handling of this data is described in its privacy policy.
We have disabled screen recordings, touch and screen autocapture, UI-text capture, location enrichment, surveys and advertising identifiers. We do not send PostHog your swing video, camera frames, body-pose data, app settings, name, email address or Apple ID. SwingLoop contains no ads, does not use this data for advertising, does not combine it with activity from other companies' apps or websites, and does not sell it to data brokers.
Apple also provides developers with aggregated App Store statistics such as installs, crashes and subscription totals by country. Those statistics describe groups rather than individual users.
This website is a set of static pages. It sets no cookies and runs no analytics.
How long anything is kept
- Swing clips stay in private app storage for the active replay session and are cleared when you leave. Within a session, older clips are pruned when the recent-history limit is reached. A temporary delivery copy remains on the filming device only until the replay device confirms safe receipt. Clips you deliberately save to Photos follow your own Photos and iCloud settings.
- Settings stay on your device until you delete the app.
- Subscription records are retained by Apple and RevenueCat under their own policies, for as long as needed to administer the subscription and meet tax and accounting obligations.
- Product analytics events are retained in PostHog only while they remain useful for understanding onboarding and subscription conversion, after which we delete or aggregate them. Deleting the app stops future events from that installation.
Children
SwingLoop is a general-audience golf app and is not directed to children under 13. We do not knowingly collect personal information from children. The app does not ask for a child's name, age or contact information, and analytics never includes their swing or body-pose data. If you believe a child has provided us with personal information, contact us and we will delete whatever we hold.
Your rights
Depending on where you live — including under the GDPR in the EU and UK, and the CCPA/CPRA in California — you have rights to access, correct, delete, port and restrict the processing of your personal information, and to object to it. You also have the right not to be discriminated against for exercising them.
In practice these rights are easy to satisfy here, because we hold almost nothing:
- To delete your swing video, delete the clips on your replay screen or leave the session. Delete any copy you saved from Photos separately. We cannot do it for you, because we never had it.
- For anything to do with your purchase, contact Apple through your Apple ID, or write to us and we will pass the request to RevenueCat on your behalf.
- For product analytics, deleting the app stops future collection. You may also contact us to object to processing or request deletion of analytics associated with your installation.
- For anything else, write to privacy@golfswingloop.com and we will respond within 30 days.
Where the GDPR applies, our lawful bases are the performance of our contract with you (providing and billing the subscription) and our legitimate interests in improving onboarding, understanding subscription conversion, keeping the app functioning correctly and preventing fraudulent purchases. Apple, RevenueCat and PostHog may process data outside your country and use appropriate contractual and legal safeguards.Darwin Labs Inc. is the data controller for the limited information described in this policy.
Changes to this policy
If we change how SwingLoop handles information, we will update this page and change the date at the top. If a change is significant — for example, if a future version ever sent anything off your device — we will say so clearly in the app before it takes effect, rather than quietly editing this page.
Contact us
Questions about this policy, or about anything the app does, go to privacy@golfswingloop.com. General support is at support@golfswingloop.com.
SwingLoop is published by Darwin Labs Inc.. The app’s bundle identifier is com.golfswingloop.app.