From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg route = ferry
The route of a public ferry or water bus Show/edit corresponding data item.
Rendering in OSM Carto
Route ferry.png
Group: routes
Used on these elements
should not be used on nodesmay be used on waysshould not be used on areasmay be used on relations
Useful combination
Status: de facto

This tag is used on ways way, which maps a ferry or water bus route on the sea, rivers, or other waterways. Ferries are a form of public transport that operate to connect road networks and to provide passenger service much like bus service. Some ferry systems consist of many routes, while others only provide a convenient means to visit an island or cross a river or lake.

route=ferry can be used for large ferries carrying passengers, bicycles, cars, trucks and even rail cars, as well as for small boats ferrying people over rivers and lakes or self-operated ferries.

How to map

Use the route=ferry tag to show the route of a ferry.

You can use the tag on a single way way drawn along the whole route in most cases. In addition, the tag can also be added to a route relation relation containing all the ways.

How to map using a single way

Draw a way way from one ferry terminal to another and add route=ferry and name=*.

The ferry route should start and end at a ferry terminal node amenity=ferry_terminal. At the same point also the access road ends. Between the terminal and the coastal line, there may be a pier way area man_made=pier (which the initial section may be over land). If the pier is modeled as a linear way, add a highway=* tag to the pier, and if the pier is modeled as an area, create a separate highway=* feature that connects the ferry terminal to the greater road network. Car ferries have often a bridge between the quay wall and the docking point, which is tagged with highway=* + bridge=yes.

The ferry route must not branch in the water, so the route must always be drawn to the ferry dock. This is important for routing to work correctly.


Key Value Comment
route ferry (mandatory)
motor_vehicle yes / no Whether the ferry allows motor vehicles (trucks, cars, motorcycles, ...).
hgv yes / no Whether the ferry allows heavy goods vehicles (freight trucks >3.5 tons).
motorcar yes / no Whether the ferry allows motorcars.
motorcycle yes / no Whether the ferry allows motorcycles.
bicycle yes / no Whether the ferry allows cyclists.
foot yes / no Whether the ferry allows foot passengers.
wheelchair yes / no Whether you can board in a wheelchair.
railway yes / no Whether the ferry allows railway.
access * For other access restriction tags. Also see Map Features#Restrictions.
operator operator Name of the company that operates the route.
network network A system of routes typically maintained or designated by a single agency or organization
name individual name The name of the route or line.
ref reference The reference number/code of a ferry route.
duration duration highly recommended for indicating how long the route takes ('00:05' is 5 minutes, '1:15' an hour fifteen, or '48:00' two days). Important to avoid large detours to avoid ferries for routers that underestimate the speed of ferries. OSRM and GraphHopper support this tag (on ways). Use HH:MM:SS, H:MM:SS, HH:MM, H:MM, MM, or M format.
interval service interval recommended for indicating how often services run on the ferry route. Use HH:MM:SS, H:MM:SS, HH:MM, H:MM, MM, or M format. Example: A ferry that runs every half hour is given the tag interval=00:30 (interval=30 or interval=00:30:00 are also valid).
fee/toll yes / no if you have to pay to cross. Both keys are of very similar popularity, about 500 uses as of 2019[1], see https://lists.openstreetmap.org/pipermail/tagging/2019-June/thread.html#46121 for discussion which tag is preferable
opening_hours opening_hours when can you expect the service to be active? (only if the ferry operates on a regular schedule)
reservation yes / no / required yes: reservation / booking possible to avoid long waiting times and/or ensure service will run, no: first come, first serve, required: no passage without a reservation / booking.
ferry * for the type of road the ferry route belongs to (used with the same values as highway=*).
ferry:cable yes A cable ferry (chain ferry, or reaction ferry) is a ferry that is guided or propelled by cables connected to both shores.
maxweight * Maximum weight of a vehicle.
maxlength * Maximum length of a vehicle.
maxwidth * Maximum width of a vehicle.
maxheight * Maximum height of a vehicle.
capacity * Maximum number of passengers/vehicles (use subkeys like capacity:bicycle=* for precision)

How to map using a relation

The relation approach is more complicated and unnecessary for basic ferry routes, which can be represented by a single way way, such as those which cross a river or canal.

Note that most routing clients and renderers do not currently support ferry relations, so any ferry routes mapped only with relations and not with tags on the separate ways way may be unroutable and unrendered at present, so it is recommended to tag each individual way way as well.

The relation approach is used for other types of transportation routes that usually span many individual ways way, representing many different roads, etc. The relation can be a member of a route_master relation. See Relations/Routes.

All the tags and specifications described above for the single way way are valid for a relation relation.


A specific tag must however be added :

Key Value Comment
type route If you are using a relation, this should always have a 'type' tag, in this case type=route. If the route is on a single way way, don't use this tag.
from name Start station
to name Destination station
via name station(s) along the way, if any

Members of the relation

Way/node Role Recurrence? Discussion
way empty Zero or more The ways making up the route, in order and connected. Per PTv2, the empty role should be used. These ways should have the tag route=ferry.
node stop Two or more Ferry terminals (amenity=ferry_terminal). The order of the members in the relation should be identical to the order in the timetable and added in order at the beginning of the relation. These nodes should have the tags amenity=ferry_terminal + ferry=yes. They must belong to a way route=ferry member of the relation, and ideally be connected to a road network.
node area platform Zero or more A pier (man_made=pier) or an area for boarding. The order of the members in the relation should be identical to the order of the stops in the timetable, and added in order with the stops..

Related tags

Possible tagging mistakes

If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!



Large car ferry
Solar ferry for bicyclists and pedestrians
Self operated cable ferry for pedestrians as part of the regional hiking network