Public toilets in London
A map of over a thousand public toilets across London — the council-run blocks in parks and high streets, the automatic pay-to-use pods, and the loos in stations, markets, libraries and other public buildings. Colour-coded by cost: free, paid (usually 20p–£1, tap-to-pay at stations), and the many where OpenStreetMap doesn’t record a fee either way. Anything tagged private, staff-only or customers-only is left off.
The dots load live from OpenStreetMap, so it’s everything OSM knows about, not a hand-picked list. Use the toggles to show or hide a group; tap a dot for the details OSM has — fee, wheelchair access, baby-changing, opening hours — and a link to open the spot in your phone’s maps app or Google Maps for directions. Tap the button on the map to drop a pin on your current location and zoom to it — probably the whole point of a toilet map.
Loading toilets from OpenStreetMap…
Where to look when the map is thin
Coverage is real but uneven — some boroughs map every block, others barely any. When there’s no dot nearby, the reliable standbys are the same as they’ve always been:
- Parks — most Royal Parks and larger council parks have staffed or automatic toilets, usually free.
- Big rail stations — all the London termini (King’s Cross, Paddington, Victoria, Waterloo, Liverpool Street…) have toilets, free since 2019 at Network Rail stations.
- Department stores and shopping centres — John Lewis, Selfridges, Westfield and the like all have free customer toilets that nobody checks.
- Museums and libraries — free-entry museums and public libraries are the calmest option in central London.
- Pubs, cafés and fast food — officially for customers, in practice a coffee is a cheap entry ticket. These are deliberately not on the map.
Many boroughs also run community toilet schemes, paying local businesses to open their loos to everyone — look for a sticker in the window. And if you need accessible toilets regularly, a RADAR key (a few pounds, from councils and disability charities) opens over 9,000 locked accessible toilets across the UK, thousands of them in London.
How it’s built
One self-contained page, built on free and open tools.
MapLibre GL draws the map from
Ordnance Survey vector
tiles (OS Vector Tile API, proxied by this site’s server so the API
key never reaches the browser), and the basemap follows your
device’s light or dark mode.
The toilet locations are fetched at load time from the
Overpass API,
which queries live OpenStreetMap data — here, everything tagged
amenity=toilets inside a box around Greater London, minus
anything tagged as private, staff-only or customers-only. The fee,
wheelchair and opening-hours details in each popup come from that same
OpenStreetMap record.
So the map appears instantly, it first draws a saved snapshot that ships with the page (and, on repeat visits, your browser’s cached copy of the last live result), then quietly refreshes from the live Overpass API in the background and swaps in anything that’s changed. If the live service is busy or unreachable, you still get the full snapshot rather than a blank map.
A caveat on the data
The locations come from OpenStreetMap, which is community-maintained: a toilet that recently closed may still show, a new one may be missing, and coverage varies a lot by borough — a blank patch on the map means nobody has mapped it, not that there’s nothing there. Fees change, opening hours change, and “fee unknown” just means the record doesn’t say. Wheelchair-access and baby-changing tags are only as good as the last person who checked. Treat this as a starting point, not the last word — and don’t leave it until it’s urgent.