← Back to Portfolio

NaPTAN Viewer

A website comparing the UK's official bus stop data, NaPTAN, with OpenStreetMap across Great Britain. It shows which stops are mapped correctly, which are missing or mistagged, and which matter most to fix, area by area.

Node.jsJavaScriptLeafletOpenStreetMap
Launched30 September 2026
Last Updated30 September 2026
Areas Tracked144
Data RefreshEvery 24 hours

Why build it?

While working on my fork of OSM Relatify, I wanted a way to see where OpenStreetMap's bus stops fall short of NaPTAN across the whole country, not just along one route. NaPTAN Viewer matches every stop by its ATCO code, or by distance when the code is missing, and pairs that with live timetables to show which gaps affect the most buses.

Features

Map

Every NaPTAN and OpenStreetMap bus stop, coloured by whether it matches. Filter by category and search by name, ATCO or SMS code, or locality.

Stop details

NaPTAN and OSM tags side by side, with warnings, the timetabled services and departures per day, the OSM routes that serve the stop, and links to edit in iD or JOSM. Missing stops come with suggested tags to copy.

Routes

Browse timetabled services or OSM route relations and draw the path each one takes. OSM routes show their route master and sibling variants, and services with no OSM route are flagged.

Timetable checks

Active stops no bus serves, inactive stops that are still timetabled, and the busiest stops missing from OSM, so the most useful gaps can be fixed first.

Stats

A Great Britain overview with a coverage map of every area's outline, regional rollups and a sortable table of all 144 areas. Each area has its own breakdown, coverage trend and list of the localities with the most gaps.

Automatic updates

All 144 NaPTAN administrative areas in Great Britain are tracked, with NaPTAN, OSM and timetable data each refreshed every 24 hours.

Data sources

NaPTAN

The Department for Transport's national list of public transport stops. Around 37,000 records have only OS grid coordinates, which are converted to latitude and longitude on import.

OpenStreetMap

Bus stops and route relations fetched from Overpass for each area, with fallback between mirrors and stale responses rejected.

Bus Open Data Service

Regional GTFS timetable feeds, streamed straight out of the zip so even London's 1.5 GB of stop times is never unpacked.

Open NaPTAN Viewer

NaPTAN and Bus Open Data Service timetables © Department for Transport, Open Government Licence. OpenStreetMap data © OpenStreetMap contributors, ODbL.