Donate using PayPal

Conversion from OpenStreetMap data

The routing data for CycleStreets is based on the maps provided by the IconOpenStreetMap (OSM) project.

We are very grateful to GeoFabrik for providing extracts of the planet database.

Latest update of OSM data

UK and Ireland

Cycle routing for UK & Ireland is built daily and published by 2pm.

Other areas

CycleStreets routing covers many other countries and cities, but these are published on a less frequent basis, roughly every 2-3 weeks.

If you create a free user account (top-left of the site), and then sign in, you will see there is a little bell symbol next to your username. That will give a news feed which shows the date of our last data refresh.

The background map tiles are another matter - we do not produce these ourselves but take them from various sources. Data changes can take a few weeks to show up.

How CycleStreets interprets OSM data

Icon CycleStreets bases its cycle routing on map data from OSM. The ways in OSM are described by tags, and these are interpreted as streets with various types of cycling provison.

Cycle Routing Tags

The following sections describe the main tags that are used to build CycleStreets routing. The usage column is a count of the number of ways with those tags after the processing described here has been applied.

Highway Tag

Defined: Icon | Usage statistics

The following table has been compiled from the OSM wiki and describes the main values of the highway tag of relevance to cycle routing. It is a summary of a more detailed list which is shown at: Icon Basic interpretation of streets from the OSM highway tag. Note the presence of highway tag on a way implies that access=yes.

Tag OSM Implies Description
highway=motorway access=no
Motorways are not used by CycleStreets.
highway=motorway_link access=no
In order to help calculate the correct exit number from roundabouts for display in route listings, ways of this type infer bicycle=yes here. After roundabouts have been processed all motorway_link ways are deleted to avoid serving them as part of a route. See also highway=motorway_junction.
highway=trunk surface=paved OSM: Important roads that aren't motorways. Typically maintained by central, not local government. Need not necessarily be a divided highway. In the UK, all green signed A roads are, in OSM, classed as 'trunk'. Outside the UK bicycles are usually prohibited.
highway=trunk_link foot=no OSM: The link tags are used to identify ramps or slip roads connecting other more standard highways to each other. Outside the UK bicycles are usually prohibited. The bicycle=no from the implied tags is removed and overruled by inferred tag bicycle=yes to help calculate roundabout exits.
highway=primary hgv=yes
OSM: A major highway linking large towns, normally with 2 lanes. The traffic for both directions is usually not separated by a central barrier.
highway=primary_link hgv=yes
OSM: The link tags are used to identify ramps or slip roads connecting other more standard highways to each othe.
highway=secondary motorcar=yes OSM: A highway which is not part of a major route, but nevertheless forming a link in the national route network. It normally has 2 lanes. The traffic for both directions is usually separated by a central line on the road.
highway=tertiary access=yes OSM: A class of road between secondary and unclassified. A "C" road in the UK. Generally for use on roads wider than 4 metres (13'), and for faster/wider minor roads that aren't A or B roads. In the UK, they tend to have dashed lines down the middle, whereas unclassified roads don't.
highway=unclassified OSM: Public road, primarily for access to properties, paved, non-residential. In an urban context, these are likely to have pavements (sidewalks) and be fit for two-way traffic, perhaps in an industrial or commercial district.
highway=road OSM: A road of unknown classification. This is intended as a temporary tag to mark a road until it has been properly surveyed. Once it has been surveyed, the classification should be updated to the appropriate value.
highway=residential This tag is used for roads accessing or around residential areas but which are not a classified or unclassified highway.
highway=living_street maxspeed=* OSM: Living streets - compared to residential streets (highway=residential) - have special regulations like lower speed limits, special parking restrictions, special traffic rules, etc.
highway=service OSM: generally for access to a building, motorway service station, beach, campsite, industrial estate, business park, etc. This is also commonly used for access to parking and trash collection. Sometimes called an alley, particularly in the US.
highway=track OSM: Roads for agricultural use, gravel roads in the forest etc.; usually unpaved/unsealed but may occasionally apply to paved tracks as well.
highway=pedestrian foot=yes OSM: For town centres and civic areas, where wide expanses of hard surface are provided for pedestrians to walk (often between shops). Vehicles are able to use this kind of way, may be allowed during special hours to unload merchandise, but are often prevented from entering by bollards. Cycling may be allowed, depending on the country or local restrictions. This can be specified with bicycle=yes or bicycle=no. For small paths which are too small for cars to pass (no real streets) use highway=footway instead.
highway=bus_guideway access=no
OSM: A busway that is side guided "rails like", not suitable for other traffic.
highway=path emergency=destination
Shaun: Horridly complex tag, everyone uses it differently. For the UK it is probably best to use footway unless there is a bicycle=designated tag OSM: A route open to the public which is not intended for motor vehicles, unless so tagged separately. This includes snowmobile trails, ski trails, hiking trails, horse trails, bike trails and paths, mountain bike trails as well as combinations of the above and other modes of transportation. These routes may have any type of surface. The default access restriction of highway=path is "open to all non-motorized vehicles, but emergency vehicles are allowed". (Although it depends on each country what vehicles are allowed by default). This tag is used for paths for which all and any of highway=footway, highway=cycleway and highway=bridleway would be inappropriate or inadequate (or simply not sufficient), but which are nonetheless usable for travel or navigation. They might be not intended for any particular use, or intended for several different uses. Intended uses can be indicated with the access=designated keys. It is also used for hiking trails. If a path is wide enough for four-wheel-vehicles, and it is not legally signposted or otherwise only allowed for pedestrians, cyclists or horseriders, it is often better tagged as a highway=track.
highway=cycleway bicycle=designated OSM: The highway=cycleway indicates that the used way is mainly or exclusively for bicycles. Some consider it better to use highway=path if use is not restricted to cyclists. No two cyclists will ever agree what constitutes a good cycle route. Cyclists can seek out anything from only off-road routes to the quickest route on a multi-lane highway. Some want a flat commute, while others seek out hills for a recreational challenge. This is the strength of OSM. It can capture the cycling relevant data as possible, and each cyclist can choose the way that best suits.
highway=footway foot=designated OSM: For designated footpaths, i.e. mainly/exclusively for pedestrians. If bicycles are allowed as well, you can indicate this by adding a bicycle=yes tag.
highway=bridleway bicycle=yes
OSM: A way intended for use by pedestrians and horse riders. In the UK and Czech Republic, these are rights-of-way for pedestrians and equestrians (horses). Cyclists are also permitted (by Countryside Act of 1968) unless subject to orders made by local authority. Usually bridleways are signed "no cycles" where this is the case and a reasonable default assumption is that cycles are permitted where not explicitly prohibited. There is no obligation to ensure suitability for use by bicycle.
highway=byway This is a deprecated tag and describes an UK-only road. Please tag it as highway=track or highway=path as appropriate, and its legal designation with designation=byway_open_to_all_traffic or designation=restricted_byway.
highway=steps foot=yes OSM: For flights of steps on footways. See also wheelchair=*.
highway=construction construction=yes OSM: The construction tag may be used for any road or railway under construction.
highway=ferry Slow crossing, with a half an hour delay.[This is not a valid OSM highway tag value, it is inferred from route=ferry by CycleStreets.]
highway=aerialway Used for various forms of transport for passengers and goods that use wires, including cable-cars, chair-lifts and drag-lifts.

Cycleway Tag

Defined: Icon | Usage statistics

The following table summarizes the most common values:

Access Tag

Defined: Icon | Usage statistics | Access restrictions

OSM: "Use access tags to describe the allowed or preferred level of access along a footpath, road or any other kind of way element. For describing the legal accessibility of an element. Use the access=* key to describe a general access restriction (all transport modes). This may be tightened or relaxed by adding keys which describe access for more specific modes of transport. These keys each have a place in an implied tree structure in which keys become narrower in scope as they branch out from the root."

The following table summarizes how the access tag is used on OSM ways for the UK and Ireland in December 2010.

The access tag can be overruled by the foot or bicycle tag, see below.

Bicycle Tag

Defined: Icon | Usage statistics

The following table summarizes how the bicycle tag is used on OSM ways for the UK and Ireland in December 2010.

Foot Tag

Defined: Icon | Usage statistics

The following table summarises how the foot tag is used on OSM ways for the UK and Ireland in December 2010.

Oneway Tag

Defined: Icon | Usage statistics

The following table summarises how the oneway tag is used on OSM ways for the UK and Ireland in December 2010.

Ways that are marked as oneway=yes, but which also have the following tags are imported as 2-way streets, for cycling:

An example:

Process the Way tags

This page is a work in progress, and may be incomplete [Late Jan 2011].

The procedure applied to the extracted planet data is a script of SQL statements (see Icon Conversion from OSM - sieving) and is explained below.

  1. Create a table (called map_wayFixed) to hold the way tags that are of interest to cycle routing.
  2. Create a row in the table for each way in the extracted planet data.
  3. Copy the original tags to the tags field.
  4. Fill the highway, cycleway, access, bicycle, foot, oneway fields from their respective OSM tags.

At this point the highway field has a wider range of values than the recognised values in the table above. Some of the values will be spelling mistakes, which can be corrected, and other values mean that the way is not relevant to cycle routing. The repair phase, next, narrows the range to the recognised values.


The sieving script continues with the following steps.

  1. Maintain the Icon repair table. This contains entries that record how often the fields contain unrecognised values.
  2. Entries in the repair table are used to provide common fixes for old or deprecated tag values, such as replacing the invalid combination: oneway=true with oneway=yes.
  3. This method is also used to ignore ways that cannot be routed over, such as replacing cycleway=bmx_track with highway=ignore.

The result of this step is that the way fields have a well defined set of values.

Implied tags

The sieving script continues by adding all of the implied tags in the highway table for the recognized fields.

Special recognition

Some special case rules are applied:

Bike routes

Defined: Icon

There are various methods for marking cycle routes in OSM, either in relations or on the ways directly. The script looks for:

Traffic Signals


Nodes tagged highway=traffic_signals are interpreted by default as a traffic light controlled junction.

Nodes tagged crossing=traffic_signals are interpreted as traffic light controlled crossings, such as a pelican or toucan crossing.



These are nodes tagged with highway=crossing specify the crossing type with crossing=*. CycleStreets does not yet [Jan 2011] make use of this information.

Nodes tagged with crossing=toucan imply bicycle=yes.

We welcome your feedback, especially to report bugs or give us route feedback.

My comments relate to: *

Your comments: *
URL of page: *
How did you find out about CycleStreets?:
Your name:
Our ref: Please leave blank - anti-spam measure

* Items marked with an asterisk [*] are required fields and must be fully completed.