Effective 4 October 2026. Applies to the PitchPace Android app (package com.kashifnazir.pitchpace).
While a run is on, PitchPace captures audio from the microphone (the phone's own or a Bluetooth earbud) and analyses it on the device in real time: a voice-activity model decides which 32 millisecond slices contain your voice, and from the pattern of phrases and pauses the app computes a single "sustain" number and a zone. The raw audio is used only for that computation and is discarded immediately. It is not recorded, stored or transmitted.
Runs and settings live in the app's private storage on your device. If Android backup is enabled in system settings, Android may also back them up to your Google account or transfer them to a new phone. Google's backup is end-to-end encrypted on modern Android; the developer never sees it. Uninstalling still removes the local copy. Without an account, a session log leaves the phone only when you tap Share log, Save log to Downloads, or send feedback yourself, and then it goes where you send it. With an account, finished runs are also saved to it (see Your account).
Crash reports are kept in app-private storage (up to the latest five), and are also sent to our crash reporting service unless you switch that off (see Crash reports and usage). Send feedback under Settings opens your own email or sharing app with a message pre-addressed to contact@kashifnazir.com and a zip attached: an About line with the app version/build, device model and manufacturer, Android version/API and build type; a small list of non-personal settings; your newest run's log and summary if present (included unless you choose to leave them out), which include that run's location fixes and heart rate if it recorded them; feedback.csv if present; and saved crash reports. If you send it, Kash receives it and uses it only to fix what you reported.
You can use PitchPace without an account. If you make one, with Google or with a sign-in link emailed to you, your runs are saved to it and come back on a new phone.
Signing out stops anything more being sent; the runs on the phone stay. To delete the account and everything saved to it, see Deleting your data.
Crash reports are on unless you switch them off in Settings › Privacy. When the app crashes, freezes, or something fails that should not, it sends a report to Sentry, hosted in the EU: what went wrong and where in the code, the app version, and device details such as the phone's make and model, Android version, language, time zone, memory and storage. If you are signed in, the report carries your account ID so a problem with saving runs can be traced; if you are not, it carries no ID at all. It never carries your email, your audio, your route or your run's log, and the app blanks email addresses out of error text before sending. Sentry is set not to store IP addresses, and deletes reports after 30 days. Why: to find and fix faults (UK GDPR: legitimate interests); the switch is there if you would rather not.
Usage is off until you switch on Share anonymous usage, on the account step of setup or in Settings › Privacy. Only then does the app send PostHog, hosted in the EU, a short list of events: which screens are opened, which setup steps are passed, the choices made there (for example Google, email or no account; indoor or outdoor), and when a run starts and finishes, with its length and distance rounded into wide bands (such as "30–60 minutes", "5–10 km"). Each event is tagged with a random ID made on the phone, never your account or email, plus device details such as the phone's make and model, Android version, app version, screen size, language, time zone and the mobile network's name. PostHog is set to discard IP addresses. No audio, route, run log, names or free text is ever sent. Switching it off stops the next event. Why: to see which parts of the app are used and where people get stuck (UK GDPR: your consent, which you can withdraw at any time with the same switch).
Distance is off until you turn it on. When you do, the app asks for precise location and, while a run is on, records the phone's position fixes into that run's log alongside the breath figures. From them the app draws your route, cuts the run into kilometre splits and charts your pace, altitude and cadence against distance. Approximate location is not enough for pace, so if you grant only that, distance stays off.
The route is kept in the run's log on this phone. You can share or save that log, save the route as GPX to a location you choose, or choose Save to Health Connect to copy the selected run into Health Connect on this device; route data is included there only if you grant route permission. The route is drawn on a Google map: the run screen's map follows you while a run is on, and a finished run's Route, splits and charts page shows the whole route. To draw them, the phone fetches map tiles from Google Maps for the area on screen, so Google sees that area (during a run, around where you are) and your device's network address, under Google's privacy policy. The list of positions that makes up your route is not sent; the app draws it over the map on the phone. Without Google Play services the app draws the route on its own plain background, with no tiles. Location is read only while a run is on, through the visible foreground-service notification, never in the background between runs.
A heart-rate strap or watch is optional. If you pair one under More, the app reads its beats over Bluetooth during the run, uses them to narrow your voice zone to one training zone, and writes them to that run's log. Nothing goes back to the strap.
If a run has less than 80 % strap coverage, the summary offers to fill the gaps from Health Connect. Only when you tap Fill, and only with the read-heart-rate permission you grant in Health Connect's own screen, the app reads the heart-rate samples that fall inside that run's start and end times (a few seconds either side) and folds them into that run's log. It reads nothing outside the run's window and reads no other data type. Those samples are used to show your time in each training zone for that run.
You can also choose Save to Health Connect on a run's summary. The app writes that run's exercise session and, when available and permitted, its distance and heart-rate samples; it includes the route only when you grant route permission. Beats previously filled from Health Connect are not written back. Exercise permission is needed to save; distance, heart-rate and route permissions control those optional records. You choose whether to grant each permission, and can revoke them in Health Connect. The app writes records only into Health Connect on this device; Health Connect settings control access by other apps.
The optional jumbotron broadcast exists only in developer (debug) builds, which are not distributed. It sends two-per-second zone words to an address the developer enters; no audio is sent.
No audio, ever. No advertising, no selling or sharing of data with advertisers or data brokers, no tracking across other apps or websites, and no usage analytics unless you switch them on. The app's network use is: Google map tiles for a map on screen; your account, only if you sign in; crash reports, unless you switch them off; and usage, only if you switch it on.
| Permission | Used for |
|---|---|
| Microphone | Hearing your voice during a run. Asked when you tap Start. |
| Foreground service (microphone, location, connected device) | Keeping the run going with the screen locked, with a visible notification the whole time; location and the strap are read only inside that service. |
| Precise location | Distance, pace, splits, climb and the route, all kept in the run's log on the phone. Asked only when you turn distance on; approximate location is treated as off. |
| Internet, network state | Loading Google map tiles for the route map; when you are signed in, saving finished runs to your account and bringing them back on a new phone; sending crash reports (unless switched off) and usage (only if switched on). |
| Notifications | The lock-screen glance showing your zone. Optional; the coach works without it. |
| Bluetooth (nearby devices) | Routing the mic and the coach to your earbuds, and reading a heart-rate strap. Asked only if you choose the earbud route or pair a strap. |
| Health Connect: read heart rate; write exercise, distance, heart rate and route | Reads heart rate only when you tap Fill. Writes the selected run only when you tap Save to Health Connect; exercise is required, and distance, heart rate and route are saved only with their granted permissions. |
| Foreground service (data sync), network state, run at startup | Google Play downloading and unpacking a coach voice you pick. |
| Vibrate | The optional buzz on a red zone. |
The zone is an estimate of exercise intensity from your speech, your heart rate if you have a strap, and your pace if distance is on. It is not a medical measurement and not medical advice. It is not shared with anyone; if you have an account, no other user can see the runs saved there.
Your account: in the app, Settings › Account › Delete account deletes the account, every run and run log saved to it, and your saved settings, at once and for good. The runs on your phone stay there. If you no longer have the app, see how to delete your account by email.
On the phone: uninstalling the app, or Settings › Delete everything, removes everything it stored on the phone. If you are signed in, your account keeps its own copy, and the next sync can bring those runs back: delete the account as above to remove that too. Any log you shared or saved to Downloads is a copy under your control; delete it where you put it.
Crash reports and usage: Sentry deletes crash reports after 30 days; usage events carry no account or email, so they cannot be tied back to you. Delete everything also gives the phone a new random usage ID.
PitchPace is not directed at children under 13 and does not knowingly collect information from them.
PitchPace is made by Kashif Nazir, who is responsible for this data (the controller). You can ask for a copy of what your account holds, ask for it to be corrected or deleted, or object to crash reports, by emailing contact@kashifnazir.com. If you are unhappy with the answer you can complain to the Information Commissioner's Office.
If this policy changes, the new version appears at this address with a new effective date.