Privacy Policy
Last updated October 11, 2026
TotalArchery is made by RoodleSoft LLC. This page explains what the app collects, why, and how you can control or remove it. If something here doesn't match what the app actually does, that's a bug in this page — tell us and we'll fix it.
The short version: TotalArchery requires an account, which keeps your own archery data (bows, arrows, scores, gear) backed up and synced across your devices. The account backend runs on our own server, not a third party's; subscription payments are handled by Apple, Google or Stripe (depending on where you subscribe) and RevenueCat. We don't run ads, don't use third-party analytics or tracking SDKs, and don't sell your data to anyone.
What we collect, and why
- Account email & password, or Google sign-in. An account is required to use the app, to back up your data and sign you back in on other devices. The account backend is self-hosted — it runs the open-source Supabase software on our own server, not Supabase's own cloud — and TotalArchery never sees or stores your password itself. Choosing Google sign-in shares only what Google's sign-in flow provides (name, email); we never see your Google password.
- Your archery data. Archer, bow and arrow profiles, scores, rounds, sight tapes, tuning sessions, gear, and chrono readings. It's stored on your device and synced to your account so it's available on your other devices and backed up if you lose the device. It is never shared with other users.
- Device location. Used only to fill in current temperature/conditions for ballistics calculations. Sent to Open-Meteo (weather) and, to resolve a location without GPS, OpenStreetMap's Nominatim service or ipapi.co. Declining location permission just means typing conditions in by hand instead.
- Event and location lookups. Typing an address or ZIP looks it up against Nominatim or the free zippopotam.us service; finding a tournament's own event page runs a search against DuckDuckGo using that event's public name, location and year. Nothing about you personally is sent — just the place or event text you're looking up.
- Microphone audio (Chrono). Recorded only while you're actively using the chrono tool, analyzed entirely on your device, and deleted immediately after — the recording itself is never uploaded or stored. What can be sent is a loudness-over-time trace of the shot (see Help improve the analyses below), from which the sound cannot be recovered.
- Photos and video (bow tuning, gear, paper-tear reads, target photos, form-check and draw-cycle clips). The original photos and clips stay in the app's local storage on your device and are not kept on our servers. When you add one to an analysis tool, a reduced-size copy (or a handful of still frames from a clip) is sent through our server to be read, as described under Photo and video analysis below. There are two exceptions. One is a photo you choose to attach when you flag a result you disagree with, described under Help improve the analyses. The other is the picture saved in your Form check and Draw-cycle history: a reduced-size copy of the photo, or of one frame from each phase of your draw, with the body outline drawn on it. These history pictures are stored privately in your account (only you can open them) so they show on every device you sign in on, and they are deleted when you delete that history entry or your account.
- A device identifier. Used for two things. First, to stop a deleted account from immediately re-registering on the same device — an anti-abuse measure. If you delete your account, we keep this identifier and your email address on a block list for that purpose (see Deleting your account). Second, to follow the app’s getting-started steps, so we can see where people get stuck. The app records steps such as opening it, seeing the account screen, creating an account or signing in, setting up a profile, reaching the home screen, seeing the subscribe screen, and whether a subscription purchase was started, completed, cancelled or failed. Each record holds the step, your device’s operating system, the app version and this identifier, plus your account once you are signed in. No names, emails or anything you enter or do inside the app is part of it, and nothing is sent to a third party. These records can’t be switched off in the app. When you delete your account they are unlinked from it, but they keep the device identifier.
- Club/range directory entries. If you add a club or range to the shared directory, that entry (name, location, contact info you provide) is visible to other signed-in users. Don't put anything in it you don't want public.
AI coaching and photo analysis
Some features use an AI model to coach you or to read a picture. Text coaching notes and chat only run when you ask for one. Photo and video analysis — reading a paper tear, a bare-shaft or other tuning-step photo, a target photo, a form check or a draw-cycle clip — runs when you add the photo or start the analysis, with no separate prompt, and falls back to a simpler on-device read when you're offline. Everything is relayed through our own server, which forwards it to one of two AI providers using our own API keys: Google (its Gemini models), which usually reads pictures, and DeepSeek, which usually writes text coaching. Each can step in for the other if one is slow or unavailable, so any request — text, photos or video frames — may be handled by either, and when that happens the same conversation and pictures are sent to the second one. Your device never talks to either provider directly, and your name and email are not sent with the request. DeepSeek is based in China and, according to its own privacy policy, stores the data it receives on servers in the People's Republic of China and may use that content to improve its services. Google's paid Gemini service does not use the content it receives to train its models. What each provider does with the content it receives is covered by that provider's own terms and privacy policy. Pictures are reduced in size first, and a clip is cut down to a few still frames. We don't store what you send or the response, only that a request happened, to keep the feature running reliably and to prevent abuse. If you never use these tools, none of this happens.
If an AI coaching request fails, the app automatically sends us a short diagnostic report (which feature failed, the error message, and basic app/device info like OS version and app version) so we can find and fix reliability problems, and keeps a copy of that same report on your device. This report never includes your account email, your archery data, or anything you asked the coach — just the fact that a request failed, why, and what it was running on. It happens without asking each time, but only for an AI-coaching failure specifically, never for other errors in the app.
Subscriptions and payments
TotalArchery is a paid subscription. On iPhone and iPad it is bought through Apple's in-app purchase, on Android through Google Play, and on Windows, Linux and the web through Stripe. Subscription status is managed through RevenueCat. Here is exactly what each one sees:
- Apple and Google, when you subscribe in the iPhone/iPad or Android app, handle your payment and billing details under their own privacy policies. We never see your card number or Apple/Google payment details.
- Stripe collects your payment card details and billing email at checkout, and sends your receipts and renewal reminders. We never see or store your card number.
- RevenueCat receives your account's random ID (not your name or password) and your purchase and subscription status, so it can tell the app whether your subscription is active.
- Our server stores only your subscription status and its expiry date, sent to us by RevenueCat, so we can unlock the features you've paid for.
Apple, Google, Stripe and RevenueCat keep payment and billing records as long as the law requires, even after your account is deleted. See their own privacy policies for details.
Help improve the analyses
To make the form check, draw cycle, group, chronograph, paper-tear and tuning-photo analyses more accurate, the app can send us the measurements behind each result. This is on by default, and you can switch it off at any time in Profile → Help improve the analyses. Here is exactly what it is and isn't:
- What's sent: numbers and choices only — for example joint angles and scores from a form check, how an arrow group is spread, the settings and result of a chronograph reading, which option a tear read picked and how confident it was, plus the app version and platform. For the chronograph it also includes a loudness-over-time trace (one level per millisecond around the shot, which cannot be turned back into sound), so we can test the speed detection against real readings. If you enter a reference speed from another chronograph, that is sent with it.
- What's never sent: your photos, video, audio recordings, name, email, free-text notes, or coaching text.
- How it's linked: each record carries your account's random ID, not your name or email, so a result can be matched to a correction you later make. We use it only to evaluate and improve the analyses, never to advertise or profile you, and we don't share it with anyone.
Flagging a result. Each result has a small flag icon for when you disagree with it. Flagging is your own action, so it sends the result's measurements, the reasons you pick and any comment you write (up to 500 characters) even if the setting above is off. For analyses that read a photo, the flag sheet has a clearly labelled Include my photo switch right above the send button. It starts switched off, so a photo is only sent if you turn it on; if you do, the photo is stored privately on our server and used only to review and fix that analysis. Flags are reviewed by us and not shown to anyone else.
If you tap Send details after the chronograph's auto-stop misses a shot, that report (the settings, what the analysis saw, and a coarse loudness trace) goes to us as a bug report, the same way as feedback you send from the app.
When your account is deleted (see Your choices), these records are deleted with it.
What we don't do
- No advertising, and no ad networks.
- No third-party analytics or crash-tracking SDKs. The only usage data we collect is the first-party analysis measurements described above, which you can switch off, and the getting-started steps described under A device identifier, which can’t be switched off.
- No selling or renting your data to anyone, ever.
- No third parties beyond the ones named above (including Apple, Google, Stripe and RevenueCat for payments, and Google and DeepSeek for the coaching and photo analysis described above), and only for the specific purpose described.
- No keeping your original photos, video or audio recordings on our servers. The only pictures we keep are the outlined history pictures described above and a photo you choose to include when you flag a result.
Your choices
- Once signed in, the app works offline day to day — it only needs a connection to sync, and to set up the account on a brand-new install.
- Delete your account any time from inside the app: Profile → Delete account (same steps on iPhone, iPad, Android, Windows, macOS and Linux). If you can't open the app, email support@roodlesoft.com from the address on your account and we'll delete it for you. See Deleting your account below for what that removes.
- Turn off location or microphone permissions at the OS level; the relevant features just ask for the numbers by hand instead.
- Stop the analysis measurements in Profile → Help improve the analyses. Flags only ever go up when you tap the flag.
Deleting your account
Deleting your account is permanent and takes effect immediately. It removes your sign-in, your profile, everything synced to your account (archers, bows, arrows, scores, tuning, gear and notes), your coach links, the analysis measurements and flags tied to your account, any photo you attached to a flag, the pictures saved with your Form check and Draw-cycle history, and your subscription status on our server.
What remains:
- Your email address and device identifier, kept on a block list so a deleted account can't immediately sign up again to restart a free trial. We use your email address for nothing else; the device identifier is also on the getting-started step records described under A device identifier, which stay after deletion without a link to your account.
- Payment and billing records held by Apple, Google, Stripe and RevenueCat, for as long as the law requires.
- Club or range entries you added to the shared directory stay listed but are no longer linked to you.
- Data saved only on your device stays there until you uninstall the app.
Deleting your account does not cancel a subscription, because Apple, Google or Stripe bills it, not us. Cancel it first in your App Store or Google Play subscriptions, or from the Profile tab if you subscribed on the web (see our Terms).
Children
TotalArchery isn't directed at children under 13, and we don't knowingly collect data from them.
Changes to this policy
If this changes, we'll update the date at the top of this page.
Contact
Questions about this policy or your data: support@roodlesoft.com