From OpenStreetMap Wiki
(Redirected from Ref)
Jump to navigation Jump to search
Public-images-osm logo.svg ref
UK traffic sign 2901.svg
Used for reference numbers or codes. Common for roads, highway exits, routes, etc. Edit or translate this description.
Group: References
Used on these elements
may be used on nodesmay be used on waysmay be used on areasmay be used on relations
Incompatible with
Status: de facto

"ref" stands for "reference" and is used for reference numbers or codes. Common for roads, highway exits, routes, etc. It is also used for shops and amenities that are numbered officially as part of a retail brand or network respectively.

This key and variations are frequently used to avoid the use of relations.

Key variations

For cycle routes:

There is a wide use of ref:* as a namespace prefix. A selection of frequently used variations is listed here :

key used on description see also taginfo count (25 June 2018)
ref:bag=* Id of Dutch buildings BAGimport 10112655[1]
ref:bic=* heritage=* identifiers for (Spain) Bien de Interés Cultural (BIC) Bienes culturales protegidos by the Spanish Government. 527[2]
ref:cadw=* heritage:operator=cadw id in Cadw's database of scheduled monuments and listed buildings in Wales, United Kingdom [3]
ref:ctb=* highway=bus_stop Signposted on Citybus & NWFB bus stops 1651[4]
ref:De_Lijn=* bus_stop/platform node, route, route_master signposted on bus/tram stops in and around Flanders, Belgium WikiProject_Belgium/De_Lijndata 38318[5]
ref:dhis2=* boundary=health relation and health infrastructures DHIS2 unique ID, used in +60 countries Congo-Kinshasa/Zones_de_santé/Workflow [6]
ref:fgkz=* Relation:waterway FGKZ reference ID (Germany) 9927[7]
ref:gnbc=* Relation:waterway, Relation:boundary, place=*, others GNBC reference ID (Canada) About the Canadian Geographical Names Database 52[8]
ref:gnis=* Relation:waterway, Relation:boundary, place=*, others GNIS reference ID (United States) 18[9]
ref:harbour=* landuse=industrial Number of company in harbour on road signage, used e.g. in the Nederlands
ref:IFOPT=* highway=bus_stop/public_transport=platform node international identifier for bus stops and platforms 114301[10] count from 2019-04-20
ref:industrial=* landuse=industrial Number of company in industrial area on road signage, used e.g. in the Nederlands
ref:INSEE=* admin_level=* INSEE code of the French communes 77693[11]
ref:isil=* amenity=library International Standard Identifier for Libraries 1539[12]
ref:kmb=* highway=bus_stop Signposted on KMB & LW bus stops 3199[13]
ref:mhs=* heritage=* id in the French database Mérimée of historic monuments 34120[14]
ref:MMM=* highway=* or emergency=defibrillator or attraction=animal object ID used by Montpellier Méditerranée Métropole, a french local authority Montpellier#Utilisation_du_tag_ref:MMM 278[15]
ref:NBd=* junction=yes or traffic_sign=* Reference number of the Dutch Nationale Bewegwijzeringsdienst (NBd) 99[16]
ref:nid=* heritage=* id in Narodowy Instytut Dziedzictwa historic monuments 10634[17]
ref:nrhp=* heritage=* identifiers for (United States) National Register of Historic Places (NRHP) records 22 NRHP advanced search 3626[18]
ref:rce=* heritage=* Id in Dutch Rijksdienst voor het Cultureel Erfgoed 4528[19]
ref:regine=* Relation:waterway REGINE reference ID (Norway) 2[20]
building=*, addr=* RUIAN building or address reference ID (Czech republic) 565550[21]



ref:sandre=* river ref of the French Sandre agency WikiProject France/Cours d'eau 52151[22]
ref:svhl=* station-keys of Lübecker Stadtverkehr (Germany) Lübeck/Importe 2322[23]
ref:whc=* heritage=* id of the Unesco World Heritage 1464[24]
ref:TECB=* bus_stop/platform node, route, route_master signposted on bus stops in and around Brabant-Wallon, Wallonia, Belgium TEC data import 3602[25]
ref:TECC=* bus_stop/platform node, route, route_master signposted on bus stops in and around Charleroi, Wallonia, Belgium TEC data import 3398[26]
ref:TECH=* bus_stop/platform node, route, route_master signposted on bus stops in and around Hainaut, Wallonia, Belgium TEC data import 5638[27]
ref:TECL=* bus_stop/platform node, route, route_master signposted on bus stops in and around Liège-Verviers, Wallonia, Belgium TEC data import 9316[28]
ref:TECN=* bus_stop/platform node, route, route_master signposted on bus stops in and around Namur, Wallonia, Belgium TEC data import 5357[29]
ref:TECX=* bus_stop/platform node, route, route_master signposted on bus stops in and around Luxembourg (province), Wallonia, Belgium TEC data import 5848[30]
ref:UrbIS=* building=* addr=* Reference Key of Urbis Database for addresses in Brussels Brussels#CIRB_UrbIS 292732[31]
ref:usrn=* Unique Street Reference Number - a primary key use by the National Address Gazeteer in the UK National Address Gazeteer 66847[32]
ref:VHAG=* waterway=* reference codenr. of waterways in Flanders,Belgium Vlaamse Hydrografische Atlas [33]

‡ These keys are specifically encouraged for use by JOSM Waterway relation presets.[34] Depending on the scope of the reference system, they may have uses in other key/tag schemas as well.

Core values


User defined values

Any valid syntax value

Examples on relations

States and provinces are often tagged with a postal abbreviation in ref. For example:

  • ref=CA The state of California (type=boundary, admin_level=4, name=California - currently relation 165475)

On road routes, the ref is a bare number, relying on network=* to convey information about the road network:

Similarly, on cycle and walking routes, the ref is a bare number and cycle_network=* indicates the route network:

Bus routes use ref to label the bus route. For example:

  • ref=23 Bus route 23. (type=route, route=bus, name=Shanklin>Newchurch>Newport - currently relation 312207)

Examples on ways

There are no global standards as to whether the refs include spaces, hyphens or other characters. At least when nationally consistent, tag what's on the ground. Some countries use spaces on the signs, others don't. In some countries the usage on the signs varies and guidelines are under discussion.

  • ref=A 1 Default reference (German and French references with a space; e.g. A 1)
  • int_ref=E 15 Internationally referenced as
  • nat_ref=A 1 Nationally referenced as (German and French references with a space; e.g., A 1)
  • reg_ref=A 1 Regionally referenced as (German and French references with a space; e.g., A 1)
  • ncn_ref=54 The number reference for a National Cycle Network. See Cycle_routes
  • ref=A 3;A 7 Default for more than one reference (German and French references with a space; e.g., A 1)

In the United States, some of the most popular ref formats do not correspond to what's on the ground, due to historical technical reasons. For example, Interstate highways are tagged e.g. ref=I 75 instead of ref=I-75, and some states use postal abbreviations instead of more ambiguous, human-readable prefixes such as "SR". However, this Sophox query demonstrates how a data consumer can automatically generate human-readable refs using the network=* tag on route relations.

It may seem redundant to tag route refs on both ways and relations, but do not remove a ref=* tag from a way just because the way is a member of corresponding route relations. Mainstream renderers and routers are still unable to infer refs from parent relations, so the way refs are needed for backwards compatibility. Moreover, in some localities, one cannot predict the order that concurrent routes are listed on a sign based on the route relations alone. A regional route may be listed before a national route if the national route only briefly joins the road before diverging. In these cases, ref=* on the way is the only way to indicate the signposted order along that way, since a way does not indicate an intrinsic order to the routes of which it is a member.

Examples on nodes

A ref on a node generally means a highway exit when combined with highway=motorway_junction:

  • ref=23 US Highway exits are often just a number
  • ref=23B Sometimes exits have been split into A and B exits.

These refs can also be tagged on the adjoining highway=motorway_link way (or highway=trunk_link, highway=secondary_link, etc.) using junction:ref=*. In general, renderers understand ref=* on nodes, while routers understand junction:ref=* on ways.

ref is sometimes used on bus stops:

ref is sometimes used to label an entrance into a large building or parking area. For example a shopping mall may have entrances A - L:

Special uses

  • ref:svhl=* - station-keys of Lübecker Stadtverkehr (Germany) - details look at Lübeck/Importe
  • ref:luebeck=* - internal reference for objects the area of Lübeck
  • ref:bufa=* - 4-digit key of the local German tax and revenue offices (Bundesfinanzamtnummer)
  • ref:vatin=CC12345678 - VAT identification number of companies, use CountryCode (e.g. IT for Italy) and the number
  • official_ref=* - Used in cases where the official administrative reference for a road (or other feature) is not identical with the road signs (or other feature ref), e.g. because they are old, or because the administration doesn't have the money to change the signs.
  • ref=xxxx - Used to mark official company store number assigned to a place. Example (ref=7872) CVS (You'll see a reference tag added to the building)
  • ref:penndot=* - Used for internal state route designations of the Location Referencing System in Pennsylvania.

See also

For United States road tagging


  • For highways shared by more than one route see Relations/Routes or Faq#What shall I do for roads that have multiple values for a tag?. Relations seem to be the preferred method for tagging this.
  • If more than one reference is given, you are recommended to separate them with a semicolon and without a space character, because this is the widely established syntax in Germany and maybe other countries. But note, this syntax is being heavily discussed in Germany. A better approach might be to have a namespace and add the entity that has issued the ref, e.g. ref:foo=x ref:bar=y.
  • Do not confuse this issue with the space that is present in some countries between the letter and the number in a reference itself.
  • When a road has no number, leave this key unused; this makes sure that routing programs do not try to describe the road by a number.


  21. 21.0 21.1 21.2