Privacy Policy
ShadowSwing is made by Hackem Software, Canada. This policy describes, plainly, what the app does and does not do with information. The short version: the app has no account system and no server of its own. Your motion data is processed on your iPhone and never leaves it. The only thing sent anywhere is anonymous usage counts (which features get used), and you can switch that off.
1. What the app collects
No personal data is sent to us. ShadowSwing does not operate a backend server, does not create an account for you, and never transmits your swings, your name or anything that identifies you. The exceptions are the anonymous usage counts and crash reports described below.
The app uses the following information locally on your device:
- Motion sensor data. While a training session is running, the app reads your iPhone's accelerometer and gyroscope through Apple's Core Motion framework in order to detect the swing, time the hit sound, estimate racket-head speed and build the 3D Shot Analysis replay. This data is held in memory during the session and is not uploaded.
- App settings and counters. Your preferences (units, sound and hit tuning, language) and gameplay counters (swing count, session timer, all-time best racket-head speed) are stored on the device.
- Anonymous usage counts. The app counts events such as "session started", "replay captured" or "shared an image", with a few coarse details (which sport, free or Pro, a rough swing-count range). These are sent to TelemetryDeck, a privacy-focused analytics service, without any account or anything about your actual swings. TelemetryDeck receives a salted, one-way hash derived from your device's app-specific identifier so it can count how many devices use a feature; it cannot be reversed to identify you, and the numbers we see are aggregated so no individual can be singled out. We use them only to see which features people use. You can turn this off at any time in Settings › Privacy › "Share anonymous usage stats".
- Crash and performance reports. If the app crashes, freezes, or is closed by iOS for using too much memory, Apple's own MetricKit framework may give the app a diagnostic report the next time it opens. Apple only does this if you have chosen to share analytics with app developers in your iPhone settings. The app sends a short summary through the same TelemetryDeck connection: the kind of problem, your device model, iOS version and app version, and the locations in the app's code where it happened. It contains nothing about you or your swings. We use it only to find and fix bugs, and the same "Share anonymous usage stats" switch turns it off.
- Practice reminders and streak. If you turn on reminders, the app schedules local notifications on your iPhone using iOS itself. The reminder time, cadence, your practice-day streak and the date of your last session are stored on the device only. Nothing is sent to us or anyone else, and there is no push-notification server. Turn reminders off in Settings at any time.
- Workouts. The workouts you build and your workout results (which blocks you finished, reps counted, best racket-head speed) are saved as files inside the app on your iPhone. They are never uploaded and are deleted with the app. The coach voice is a set of recorded audio clips shipped inside the app; nothing is streamed and no speech of yours is recorded — the app has no microphone access.
- Free allowance state. To apply the free daily swing allowance, the free Shot Analysis replay limit and the free daily workout fairly, the app records a small amount of state — such as the date of first launch and the current day's counts — in the iOS Keychain. The Keychain is used because it survives a reinstall; it contains no personal information and is not readable by us.
- Purchase status. Whether you own ShadowSwing Pro, as reported to the app by Apple.
2. What the app does not collect
- No name, email address, phone number or postal address.
- No account, login or password.
- No advertising identifier, and no advertising or attribution SDK.
- No crash-reporting SDK, no advertising identifier, no tracking. The only telemetry is the anonymous usage counts and crash reports described above, which you can switch off.
- No location data, contacts, photos, microphone or camera access.
- No health or fitness records, and no writing to Apple Health.
The only third-party software development kit in the app is the TelemetryDeck analytics SDK described above. There are no advertising, attribution or crash-reporting SDKs; crash reports come from Apple's built-in MetricKit framework.
3. Purchases
ShadowSwing Pro is sold through Apple's In-App Purchase system using StoreKit. We never see or handle your payment details. Apple processes the transaction, tells the app whether the purchase is valid, and keeps its own records of it. Apple's handling of that information is governed by Apple's Privacy Policy, not by this one.
Restoring purchases uses Apple's own restore mechanism and requires no information from us.
4. Sharing a replay or exporting data
ShadowSwing Pro can export a Shot Analysis replay as a video, and can export swing data as a CSV file. These exports happen only when you tap the share button yourself. The file is handed to the standard iOS share sheet, and you choose where it goes — Messages, Photos, Files, email, another app. We are not a party to that transfer and receive no copy of it. Once the file leaves the app, the privacy policy of the destination app or service applies.
5. This website
This site is a set of static pages. It uses Google Analytics to count visits, which pages are read and which buttons are tapped (for example, the App Store button). A small bar at the bottom of the page says so on your first visit. If your device is set to a European time zone, which covers the EU, the UK and Switzerland, nothing is loaded until you tap OK on that bar. Elsewhere it is on from the start, and No thanks turns it off. Google Analytics then sets its own cookies on this site; Google's privacy policy applies to what it receives. We have turned off Google's advertising features and IP-based location beyond country level, and we never see who you are. If you tap No thanks, analytics stops, Google's cookies on this site are deleted and nothing is loaded on later visits; your answer is kept in your browser's local storage so we do not ask again. If you arrive from a link that names where it was posted (for example ?utm_source=instagram), that one word is kept in your browser for the visit and added to the App Store link, so Apple can tell us how many installs each post led to. It says nothing about you. To change your mind, clear this site's data in your browser. There are no tracking pixels. It loads the Barlow and Barlow Condensed typefaces from Google Fonts; if that request is made, your IP address is visible to Google as the operator of that service, as with any request to any web server. If you email us using the address below, we receive whatever you put in the email.
Standard web server logs may be kept by our hosting provider for security and reliability purposes. We do not use them to build a profile of you.
6. Children
ShadowSwing is a general-audience sports app and is not directed at children under 13. Because the app collects no personal information from anyone, it collects none from children either.
7. Your rights
Canadian federal privacy law — the Personal Information Protection and Electronic Documents Act (PIPEDA) — gives you rights of access to and correction of personal information an organisation holds about you. In practice, we hold no personal information about you: there is nothing on our side to access, correct, export or delete.
Everything the app stores lives on your device. Deleting the app removes its settings and stored data from that device. Keychain items placed by the app can persist after deletion by design; if you want them removed, contact us at the address below and we will tell you how, or simply reinstall and use the in-app reset if one is available in your version.
If you have made a purchase, your purchase record is held by Apple, and you exercise your rights over it with Apple.
8. Security
Because the app keeps data on your device and sends none of it anywhere, the main protection is iOS itself: device passcode, encryption at rest, and the Keychain. Keep your iPhone updated and locked.
9. Changes to this policy
If the app ever changes in a way that affects this policy — for example if a feature required a server — we will update this page and change the effective date at the top. Material changes will be noted in the app release notes.
10. Governing law and contact
This policy is governed by the laws of Canada, including PIPEDA where it applies.
Questions about privacy: [email protected].
Hackem Software, Canada.