Privacy policy
This policy explains what personal data restrung collects, why, who handles it, and what your rights are. We have tried to keep it plain.
Who is responsible for your data
Grasshopper Labs, based in the United Kingdom, is the controller of your personal data. Contact us at restrung@grasshopperlabs.co.uk.
How you sign in
You can sign in with an email one-time code, with Sign in with Apple (on iOS) or with Sign in with Google.
- For the email code, we send a 6-digit code to your address through our email provider, Resend, from no-reply@restrung.app.
- For Apple and Google, the app receives your email address and an account identifier from the ID token they issue. We do not store the name or photo they may send.
Your email address is stored only in the authentication system. It is not copied into the app's own tables.
What we store in your account
- Your first and last name, which you enter when you start.
- Your role (player, stringer, or both), and your unit and string-life preferences.
- Your rackets: brand, model, year, nickname and whether archived. Also any custom rackets and strings you add.
- Your string jobs: date and time zone, the stringer name you type, the strings, tensions and gauges.
- Your play sessions: start and end times, duration, date, time zone, and which rackets you used and for how many minutes each.
We do not collect your location, your contacts or your photos. The only health data we collect is the tennis workouts you choose to import, described under Health data below.
Your data is held in Supabase, in London in the United Kingdom, with row-level security so that each person can read only their own rows.
Health data
If you choose to connect Apple Health (on iPhone) or Health Connect (on Android), restrung imports your tennis workouts so that your time on court counts towards your string hours. Nothing is read until you connect and grant access.
- What we read: only workouts recorded as tennis. The app has read access only and never writes to your health store in the versions released through the app stores.
- When we read it: the last 30 days when you connect, then any new or changed tennis workouts each time you open the app. Nothing is read while the app is closed.
- What we store in your account: for each workout, its start and end times, duration, date, time zone (and how we worked it out), the app that recorded it and an identifier for the original record, which stops it being imported twice. We do not store the full workout, and we do not read or store heart rate, location, routes, calories or any other workout detail.
We use this data only to show your sessions and calculate time on court and string hours. We do not use health data for advertising or analytics, we do not share it, and we do not sell it or pass it to data brokers. It is held in the same way as the rest of your account data, and only you can read it. The copy of your connection settings kept on your device is excluded from device backups.
You are in control. You can revoke access at any time in Apple Health (Settings, Privacy & Security, Health, restrung) or in Health Connect. In the app, Disconnect stops importing and keeps the sessions already imported, and Remove imported history deletes every session imported from that source, on all your devices, and disconnects. Sessions you logged by hand stay. Deleting your account removes everything, imported sessions included.
What is kept on your device
The app keeps an offline copy of your app data and your sign-in session on your device. Both are cleared when you sign out and when you delete your account.
Analytics
In the production store versions of the app only, we use PostHog (EU cloud, eu.i.posthog.com) to understand how the app is used and to improve it. The data is linked to your account identifier and email address. It records:
- the screens you view;
- your taps (autocapture);
- four events: a racket added; a session logged (its duration, break minutes, how many days ago it was, and the racket count); a string-life warning shown; and a string job recorded (whether it was a hybrid set-up).
We do not use session recording. Our lawful basis is legitimate interests (understanding and improving the app). You can object by emailing us, and we will delete the analytics data linked to your account.
Who else handles your data
- Supabase: hosting, database and sign-in (United Kingdom, London).
- PostHog: analytics (EU).
- Resend: sends the sign-in code emails. It may process data outside the UK, with appropriate safeguards such as standard contractual clauses or the UK International Data Transfer Addendum.
- Apple and Google: only if you choose their sign-in, under their own privacy policies. When you delete your account we revoke Sign in with Apple access where possible.
We do not run advertising, we do not sell your data, and we do not track you across other companies' apps or websites.
Why we are allowed to use your data
- Performance of a contract: providing your account and the app's features.
- Legitimate interests: analytics and keeping the service secure.
- Legal obligation, where one applies.
How long we keep it
We keep your account data until you delete your account. Deleting it in the app is immediate and permanent, and removes your profile, rackets, string jobs and sessions. Copies may remain in backups for a limited period before they are overwritten. Our email provider keeps delivery logs for the sign-in code emails for a limited period.
Deleting your account also deletes the analytics data linked to it. Our analytics provider removes it in the background, which can take up to a week. See how to delete your account.
Your rights
Under UK data protection law you can ask us for access to your data, to correct it, to erase it, to restrict how we use it, to receive it in a portable form, and to object to our use of it. Email restrung@grasshopperlabs.co.uk to use any of these rights.
If you are unhappy with how we handle your data, you can complain to the Information Commissioner's Office at ico.org.uk.
This website
This website sets no cookies and has no analytics.
Changes to this policy
If we change this policy we will update this page and the date at the top.