GB NaPTAN Transit Node Records — DfT Stops avatar

GB NaPTAN Transit Node Records — DfT Stops

Pricing

from $33.50 / 1,000 access node records

Go to Apify Store
GB NaPTAN Transit Node Records — DfT Stops

GB NaPTAN Transit Node Records — DfT Stops

Keyless, pay-per-record DfT NaPTAN data. One row per access node — ATCO/NaPTAN code, name, locality, town, coordinates, stop type, plus status and modification metadata verbatim. Stop/infrastructure grain; OGL v3.0; no person data.

Pricing

from $33.50 / 1,000 access node records

Rating

0.0

(0)

Developer

NexGen Signal

NexGen Signal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 hours ago

Last modified

Share

Keyless. Pay per record. Every public-transport stop and access node in Great Britain, as one clean table.

This actor turns the UK Department for Transport NaPTAN (National Public Transport Access Nodes) dataset into clean, per-node records — the official register of every bus stop, rail station, metro entrance, ferry berth, and other public-transport access node in Great Britain. Each run reads the DfT's keyless NaPTAN CSV and delivers one row per access node: its ATCO and NaPTAN codes, the stop name and locality, the street and landmark, the coordinates, the stop type, and — carried verbatim — its status and modification metadata. Stop / access-node infrastructure grain, structured for engineering use, under the Open Government Licence, with no personal data of any kind.

What this is, in one paragraph

NaPTAN is the national database of public-transport access nodes — the canonical identifiers that journey planners, timetables, and ticketing systems use to refer to a stop. This actor reads that dataset and flattens each node into a single analysis-ready record: the ATCO code (the national identifier) and NaPTAN code, the common name and short name, the landmark, street, crossing, and indicator, the locality hierarchy and town, the OSGR easting/northing and WGS84 longitude/latitude, the stop type and bus-stop type, the timing status, and the administrative area — plus the node's creation and modification datetimes, revision number, modification flag, and status. It is the infrastructure map that transport systems are built on. Values are exactly as published. You are billed only for records actually delivered.

Who buys this and for what job

  • Journey-planning, mobility, and MaaS products that need the canonical stop register with stable identifiers.
  • Transport-analytics and planning teams mapping stop coverage by locality, town, and stop type.
  • Logistics, micro-mobility, and location products joining to the national access-node identifiers.
  • Data engineers who want the NaPTAN register as clean rows without downloading and reshaping a ~102MB CSV by hand.

Open Government Licence — free commercial reuse

One licence rider travels on every record. NaPTAN data is published under the Open Government Licence v3.0 (OGL v3.0) — free to copy, publish, distribute, and adapt, including commercially, with the required attribution: "Contains public sector information licensed under the Open Government Licence v3.0." One honest caveat rides too: this is the stop register, not a live departures or service feed — for real-time services, use a departures API keyed on the ATCO code.

Infrastructure grain — no person data

The unit of every record is an access node — infrastructure, never a person. The common name, street, landmark, locality, and town are place descriptors, not people; the register carries no natural-person fields, and this actor emits none, with a person-key guard as a pure backstop.

Status and modification metadata — verbatim

The dispatch's rider is honored: each node's status, modification, modification_date_time, creation_date_time, and revision_number are carried verbatim. That lets a downstream consumer distinguish active from inactive nodes and diff two pulls to see which nodes were created, modified, or retired between versions — the change signal that keeps a stop table current.

Pricing

EventFree planBronzeSilverGold / Platinum / Diamond
access_node_record$0.05$0.045$0.04$0.0335

Delivered before charged. Blocked runs and empty results cost nothing.

Input

FieldTypeDefaultDescription
stopTypestringOptional. Keep only nodes of this StopType code (e.g. BCT bus stop, RLY rail station, MET metro).
localityContainsstringOptional. Keep only nodes whose locality name contains this text.
townContainsstringOptional. Keep only nodes whose town contains this text.
statusstringOptional. Keep only nodes with this status (e.g. active, inactive).
maxRecordsinteger500Ceiling on records delivered and billed. Bounds this ~435,000-node dataset.

Output

One JSON object per access node. Real example (values as published):

{
"record_id": "0100BRP90317",
"atco_code": "0100BRP90317",
"naptan_code": "bstjada",
"common_name": "Temple Meads Stn",
"street": "Temple Gate",
"indicator": "T1",
"bearing": "SE",
"locality_name": "Bristol City Centre",
"town": "Bristol",
"longitude": -2.58,
"latitude": 51.44,
"stop_type": "BCT",
"bus_stop_type": "MKD",
"status": "active",
"modification_date_time": "2020-01-01T00:00:00",
"revision_number": "3",
"source": "UK DfT NaPTAN",
"licence": "UK Department for Transport NaPTAN ... Open Government Licence v3.0 ...",
"disclaimer": "Public-transport access-node (stop) infrastructure records ... status and modification metadata are carried VERBATIM ...",
"observed_at": "2026-08-22T00:00:00Z"
}

An unbilled RUN_RECEIPT records the robots check, the filters, rows seen and delivered, and whether charged equals delivered.

Field reference

Each record is one access node. Identity: record_id / atco_code, naptan_code, common_name, and short_common_name. Placement: landmark, street, crossing, indicator, and bearing. Locality: nptg_locality_code, locality_name, parent_locality_name, town, and suburb. Geography: easting, northing, longitude, and latitude. Type: stop_type, bus_stop_type, timing_status, and administrative_area_code. Status and change (verbatim): creation_date_time, modification_date_time, revision_number, modification, and status. Provenance: source, source_url, licence, attribution, disclaimer, and observed_at.

How a run works

A run first re-reads the source host's robots posture from your runtime — the NaPTAN API host — and stops at the door if a Disallow ever covers the access-nodes path. It then streams the NaPTAN CSV (around 102MB) without buffering the whole file, applies your optional stopType, localityContains, townContains, and status filters, and flattens each node to one record — carrying the status and modification metadata verbatim, never anything person-shaped — delivered before it is charged, so a blocked or empty run costs you nothing. The actor stops at your maxRecords ceiling and records charge_equals_delivered in the receipt.

Coverage and scope

The register holds on the order of 435,000+ access nodes across Great Britain — bus stops, rail and metro stations, ferry and tram nodes, and more. Because each record carries the stop_type, locality_name, and town, segmenting by node type or place is a single filter, and the coordinates place every node on a map. Pull one town or one stop type for a focused inventory, or bound a larger pull with maxRecords; a whole-country pull is a large, one-time seed.

Cost guidance

One access_node_record per delivered node: cost = nodes delivered × your plan's per-record price. Scope with stopType, localityContains, townContains, or status, and cap with maxRecords. 1,000 nodes is $50 (Free) / $33.50 (Gold). The whole ~435,000-node register is possible but large; scope first.

Honest limitations

  • A register, not a live feed. These are access-node records, not real-time departures or services; join to a departures API on the ATCO code for live data.
  • Large dataset. Bound pulls with filters and maxRecords; a whole-country pull is a large one-time seed.
  • As published. Node attributes, status, and modification metadata are exactly as the DfT distributes them, carried verbatim.
  • No person data of any kind.

Differentiation

This is a net-new category for the NexGenData fleet — no existing fleet actor covers the GB public-transport stop register. It is distinct from any road, flood, or vehicle cell: this is the NaPTAN access-node infrastructure register, the canonical stop identifiers that journey-planning and mobility systems join against.

The NexGen Signal family

Part of the NexGen Signal family of pay-per-record data products:

Source: UK Department for Transport, NaPTAN (naptan.api.dft.gov.uk). Contains public sector information licensed under the Open Government Licence v3.0 — free to reuse, including commercially, with attribution. Stop / access-node infrastructure grain; status and modification metadata carried verbatim. A stop register, not a live departures feed; no person data of any kind.