From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg service
Additional information about a service highway/railway/waterway, or about services offered at a business Show/edit corresponding data item.
Group: properties
Used on these elements
may be used on nodesmay be used on waysmay be used on areas (and multipolygon relations)use on relations unspecified
Documented values: 20
See also
Status: de facto

The service tag provides additional information that depends on the context of a more "top level" tag on the same object. (service=* should not appear in isolation.) It is used to describe details about types of "service" roads, railways or waterways; or the service or services offered by a business.


The service tag can be used to provide more information for a highway=service road. Add a oneway=yes/no tag if appropriate.


service=* is used to describe minor tracks, which still are tagged with railway=*, at railway stations and yards more detailed.

Tracks running straightforward through a station without turning right or left at switches are tagged usage=main/branch/industrial/military/test without service=*. This is useful for map renderers (e.g. OSM Carto) which can hide minor tracks at lower zoom levels and for railway routing engines which can prefer the fastest way through a station (turning left/right at a switch requires the engineman to reduce the speed).

service=* is more or less independent from the train classes using a track. The service=* tag does not care if a track is only used by local trains or by long distance or high speed trains. service=* and usage=main/branch are only dependent from signalling, the permitted speed on the tracks and the points.


See also landuse=railway about mapping not accessible railway yard areas.


This tag is used for the tracks at yard stations which are operated by the railway company itself. These are different from spur tracks, usually operated by the "company" (power plant, mine, harbour, factory...) where the spur ends.

The difference between a yard and a siding track is the absense of main signals at yard tracks while siding tracks have main signals.

Some yards have track numbers you can see from outside the yard area. They are tagged using railway:track_ref=*. Sometimes this numbers only can be derived from the signal numbers.

Please note that service=yard usually also encompasses what in UK terminology would actually be called a siding.

Siding Track

This tag is used for tracks which run parallel to the main track and are connected to it. These tracks are used by slower trains to be overtaken or to let passengers enter/leave the train if the main tracks do not have platforms. These tracks might be hard to differ from the main tracks in some cases.

Under UK terminology these are usually known as passing or crossing loops. Conversely, please note that what is known as sidings in UK terminology, in OSM usually needs to be tagged as service=yard!


Spur Track

This tag is used for short tracks connecting a factory, harbour, mine or power plant to the railway network.


Crossover Track

This tag is used for only few metres long tracks connecting to tracks of different directions of traffic. To be found only on double or more tracked railways. Often found in stations and at (crossover) junctions.

If a crossover track connects to spur tracks, it should be tagged with service=spur. Crossover between two service=yard is also service=yard.

Tracks should only be tagged with service=crossover if they connect to tracks which have usage=main/branch/… and no service=* tag.

See and for discussion.



Tram tracks are tagged as railway=tram. Tram-specific service=* values were never defined, and editors iD and JOSM use the railway values (crossover, siding, spur, and yard) as presets. However, tram systems rarely have spurs or sidings as seen on mainline railways. Prior to 2019, service=yard, service=siding and service=spur were in practice used interchangeably, except that tracks inside tram yards (garages, depots) were fairly consistently tagged service=yard.

In March 2019, User:Jarek Piórkowski suggests repurposing the railway values with tram-specific meanings to allow future tagging to be more consistent:

  • "Normal" tracks have no service tag. These are typically tracks serving a stop where a passenger can expect to regularly board a tram. This would also include tracks that a scheduled tram servicing a route connecting these stops uses (for example end-route loops).
    Tram systems can have significant differences between cities, so definition of what are "normal" tracks or what "regular" service is might differ between cities, but try to be consistent within a city/system.
  • service=yard for tracks within tram storage and work areas ("yards", "garages", "depots" - where trams are parked overnight, maintained, light repairs), and for tracks leading to the yard, provided they don't have regular passenger service stops. Example in Helsinki: way 44919957
  • service=crossover for tracks used by double-ended trams to change direction. Only use it between two main tracks with no service tag, otherwise use service tag of the tracks that are connected.
  • service=siding for tracks not described above. These will be tracks not used for normally scheduled passenger service, including diversion-only tracks, emergency, non-revenue trackage, as well as turn tracks not used in scheduled service. Example in Berlin: way 153424828

See for more information including overview of tagging in January 2019.

Train Routes

Can be used in combination with type=route on train routes for the type of train service. This tag should make distinction between different types of train easier beyond borders in order that users do not have to parse reference numbers.

See Public transport#Service routes

Business services

The service tag should not be used to specify the services provided by businesses, including services to vehicles.

See shop=car and shop=car_repair pages.

LOADING TAG LIST... (If you do not see this tag list, you need to enable JavaScript)
This table is auto-generated. See Template:Taglist for a documentation on it.

An alternative is service:vehicle:*=*

There are different tags approved for bicycle shops: service:bicycle:*=*


The service tag can be used to distinguish between open man-made waterways (waterway=canal) for transportation, water power, or irrigation. However, the tag usage=* is now more common for this purpose.

Aerodrome Tower

The service tag can be used to mark an Air Traffic Control Tower (aerodrome tower).


  1. Quincy Morgan: Add highway tags to addTags of slipways as lines. iD, 2019-04-22 online