Exhale Exhale has no accounts, no sign-up and no login. We never ask for your name, your email address or your phone number, because we don't want them and have nothing to do with them.
Almost everything. Your mission progress, your personal bests, your run history, your body details (weight, height, age, sex), your saved vouchers and your Couch to 5K week are all stored in your own browser's local storage on your own device. That includes your weight over time and the measurements taken on your first walks — your pace, how steady it was from one walk to the next, whether it eased across a walk, and how you managed on hills — which are what the app compares you against later. None of it is sent to us. Clearing your browser data deletes all of it permanently, and we could not recover it if you asked. Worth knowing before you do: that includes the starting measurements everything else is compared against, and they cannot be taken again for the same walks.
Three things, and only three:
When you finish a mission we record how long it lasted, how far you travelled, which genre and episode it was, and a rounded location — rounded to roughly a one-kilometre square before it leaves your phone, and rounded again on our side. That's precise enough to say "someone was active in this town" and deliberately useless for working out where you live, work or run.
If you're following the Couch to 5K plan we also record which week and session you were on — a number between one and twelve. That's what lets the app tell you how many other people are on the same week as you. It's a fact about a training plan, not about you, and it is never joined up with the rounded location.
We never receive or store your actual coordinates.
If a mission takes you past a local business that sponsors a checkpoint, we record that the checkpoint fired. This one carries no location data at all — your phone works out that you're nearby, and only tells us "this checkpoint happened."
This is the number we show that business: how many people walked past their door. They are told a count. They are never told anything about who you are, because we don't know either.
If you save a sponsor's voucher and later tap "Show at till / mark redeemed", we record that it happened, which sponsor it was, and how long you held the voucher before using it. No location, and nothing about what you bought or whether you bought anything — we have no connection to any shop's till and cannot see a transaction.
This is the second number we show that business: how many people came in, alongside how many walked past. It is a count and an average waiting time, nothing more.
During a mission the app asks us a single question: how many other people have finished a mission in this rounded square in the last week? It sends the same roughly one-kilometre square described above — never your actual position — and gets back a number. That's the whole exchange. Nothing about the question is written down, and the answer is a count of people we cannot identify, in an area the size of a suburb.
It exists so the handler can say something true like "you're not the only one who's walked this grid this week". It is not live: it counts missions that already finished, so it can never tell you, or anyone else, where a person is now. We do not track live positions, and there is nothing in the app that could.
If something is flying low and close — in practice that means a helicopter — the app may mention it: the aircraft type, how high, how far. That comes from adsb.lol, a free public feed of the signals aircraft already broadcast openly.
Your position is not sent to them. Same arrangement as the buses and the weather: your phone asks our server about a roughly one-kilometre square, and our server asks on your behalf.
It reports what is there and nothing else — no guesses about whose aircraft it is or why it's flying. It will rarely have anything to say, because a helicopter below four thousand feet within ten kilometres is an unusual thing.
The app may mention that a bus is coming — its number, its destination and roughly how far off it is. That comes from the Department for Transport's Bus Open Data Service, the public feed every bus operator in England has published since 2020.
Your position is not sent to them. As with the weather and the landmarks, your phone asks our server about the same roughly one-kilometre square, our server asks for buses in that area, and your phone works out which one is nearest using the position that never left it.
Answers are kept for twenty-five seconds, because buses move. What's stored is a square and a few public bus positions — nothing about you.
The app can tell you when a satellite is about to pass over you. This is the one feature where nothing about you leaves your phone at all.
Your phone downloads the same public list of orbital paths that anybody can download — the same file, for everyone, containing no request and no location — and then works out the passes itself, on the device, using the position that never left it. The list is kept for a week. Nobody, including us, learns where you were or that you looked.
During a mission the app may mention that rain is coming, or that the air is poor tonight. That comes from Open-Meteo, a free public weather service.
Your position is not sent to them. Exactly as with the landmarks below, your phone asks our server about the same roughly one-kilometre square, and our server asks on your behalf. Weather at one kilometre is the same weather, so nothing is lost by blurring it.
Answers are kept for fifteen minutes, which also means everyone out in the same part of town shares a single request rather than each making their own. What's stored is a square, a rain forecast and an air-quality number — nothing about you.
During a mission the app sometimes names a real place near you — a pub, a church, a station — and asks you to mark it as you walk past. Those names come from OpenStreetMap, the public map anyone can edit.
Your position is not sent to OpenStreetMap, or to anyone else. Your phone asks our server about the same roughly one-kilometre square described above. Our server looks up every named landmark in that square and sends the whole list back. Your phone then picks the nearest one itself, using the position that never left it.
So the map service sees a request from our server, we see a square, and nobody at any point sees a person on a street. The answers are stored for three months and contain nothing about you — just a square and a list of pubs.
A named business is only ever used as a landmark to walk past. The app will not send you inside one, and a real business is never written into the story as somewhere suspicious.
The app may tell you that a river, a canal, a railway or a main road is on your left or your right, or how far you are from the end of the street you're on. That comes from OpenStreetMap again — the shape of the water, the tracks, the roads and the street names in your part of town.
Your position is not sent to OpenStreetMap, or to anyone else. The arrangement is the same as for landmarks: your phone asks our server about the same roughly one-kilometre square, our server asks the map on our behalf and sends back the shapes. Everything after that happens on your phone. Which way you're facing is worked out from your last few positions and is never sent anywhere. Which side the river is on, and how far it is, is worked out from the position that never left it.
It only says something when it is sure. If it can't tell which way you're walking, or you're walking across a road rather than along it, it says nothing rather than guess. Answers are stored for three months and contain nothing about you — just a square and the shape of some public geography.
The app can show a short list of other people who have been out in the last week, so that walking alone feels slightly less like walking alone. Each one appears as a bird codename, the week of the plan they're on, and a vague "out today" or "out this week". That is the entire row.
Three things it deliberately isn't:
It carries no location at all. Nothing on that list says where anybody is, was, or lives. It is not connected to the rounded square described above, and there is no way to get from a row on the board to a place.
The codename isn't stored anywhere. It's worked out from your random device ID each time the list is built, the same way every time, and then thrown away. We don't keep a table of nicknames, because there's nothing to keep — and clearing your browser data gives you a new device ID and therefore a new codename, with no link to the old one.
It is not a leaderboard and never will be. Nothing is ranked, nothing is ordered by how far along anyone is, and there is no position, score or total. It exists to say "four other people are on this week with you", not to tell you where you come.
If too few people have been out recently, the board doesn't appear at all rather than showing a nearly-empty list. We do not and will not invent people to put on it.
Both of those are tagged with a random identifier generated on your device the first time you use the app — a string of random characters like 3f2a91c7-…. It isn't derived from your phone, your account or anything about you, and it isn't shared with anyone. It exists so we can tell "one person did five runs" apart from "five people did one run each." Clear your browser data and it's gone forever; a new random one is generated and the old activity can never be linked to you again.
Under UK data protection law this still counts as personal data, even though it identifies nobody by name. So: we keep it to the minimum, we never sell it, and you can have it erased (below).
The app asks for location because a GPS mission cannot work without it — it's how the story paces itself to your real movement, and how checkpoints know you're nearby. That live position is used on your phone as you walk and is not transmitted to us. Only the rounded, roughly one-kilometre square described above is ever sent, and only when a mission finishes.
Our web pages use Vercel Web Analytics, which counts visits without cookies and without tracking you across other websites. It records things like which page was viewed and roughly which country or region it came from. It does not build a profile of you and it is not used for advertising.
Local businesses can sponsor a checkpoint on a real street. They pay for reach — a count of how many people passed. They receive numbers only. We do not sell, share or transfer your data to advertisers or anyone else, and there is no third-party ad network in the app.
Activity events are kept for 24 months so we can show year-on-year trends, then deleted.
Two ways, both of which work:
Immediately, yourself: clear your browser data for this site. That erases everything held on your device, and permanently breaks any link between you and the anonymous events already recorded.
By asking us: email the address below with your device ID, and we'll delete every event associated with it. You can find your device ID in your browser's developer console by running localStorage.getItem('sq_device') — we have no other way of finding your records, precisely because we hold nothing else about you.
Exhale Exhale isn't designed for or directed at children under 13.
For anything on this page, including erasure requests, email us at getmoving@exhaleexhale.com. If you're in the UK and unhappy with how we've handled a request, you have the right to complain to the Information Commissioner's Office (ico.org.uk).
▶ Back to the app