In Canada, New Zealand, and the United States, a road route is typically considered to travel north–south or west–east. Cardinal directions accompany route shields on all signage, including reassurance markers and guide signs. In everyday speech, people refer to the "westbound" or "eastbound" lanes of a road. This usage has also carried over to bicycle routes in many areas.
In these MUTCD countries, the cardinal direction is an intrinsic property of (one side of) the route. It is not a destination (as in some Vienna Convention countries), and it is not necessarily the actual direction that every stretch of road along the route travels. For example, if a road carrying a north–south route curves briefly, the signs keep saying "North" and "South"; they do not switch to saying "West" and "East" at the curve. A route that has a directional suffix in its number, such as Interstate 35W, still has two route directions associated with it, i.e., "I-35W North".
Cardinal directions rarely appear on rendered maps, where a single shield would represent both directions of a route at once. However, users do expect cardinal directions to be included in guidance instructions during turn-by-turn navigation.
Mapping route directions
There are two ways to map route directions.
One relation per direction
The most robust approach is to create three relations:
- One for the northbound or westbound lanes, tagged direction=north or west, respectively
- One for the southbound or eastbound lanes, tagged direction=south or east, respectively
- A "superrelation" that contains the other two relations and has the same tags as them, except for direction=*
direction=* is always set to an English value in lowercase, even in French-speaking parts of Canada and Spanish-speaking Puerto Rico.
If a highway=* way carries both the northbound and southbound lanes of a route, then the way should be a member of both the northbound and southbound route relations. In other words, the superrelation should contain only relations, no ways, even if the route travels along some undivided roads.
This approach has several advantages:
- It is compatible with a wide variety of data consumers and quality assurance tools, because it is consistent with road routes globally and other kinds of routes.
- A router can consistently refer to a cross street as "State Route 123 West" even if it is undivided.
- The direction=* key can accommodate uncommon directions, such as inner and outer, without necessarily requiring data consumers to add special handling for them.
Unfortunately, JOSM assigns the same label to all three relations, making it difficult to select the correct one from a list. As a workaround for this editor limitation, it is common to set name=* to a human-readable name with a disambiguating suffix, for example State Route 10 (south).
One relation per direction per leg
A route may already have child relations representing "legs" of the route. For example:
- A long route that spans multiple states may be divided into one route relation per state, tagged with various is_in:state=* values. State highway departments may differ on the route's assigned direction because they only consider the direction of the route within their respective states. Wikidata may have distinct items for the route segments within each state.
- A long route may be divided into several route relations at arbitrary points along the route, tagged with various from=* and to=* values, because it is considered risky for a relation to have more than 300 members.
- A beltway switches between north–south and west–east at four locations.
- A road may carry part of a route without any markers for the route (a partially "unsigned" route).
In these cases, there needs to be a separate relation per direction per leg. It is unclear whether the superrelation's members need to be sorted. For example:
- contains 26 member relations, two per state.
- contains four member relations, two for the east–west leg and two for the north–south leg. Within the child relations, each of the member ways has role forward or role backward, because the route traverses undivided, two-way streets.
Some routes are even organized into an intermediate level of relations for the legs. For example, here is the hierarchy for Clark County Route 215, which is shaped like the letter C:
Cardinal directions as roles
The alternative approach is to keep the whole route as a single bidirectional relation and use the role of each member way to indicate the cardinal direction along that way.  For example, in , each member way has either role west or role east as its role in the relation. The role is always set to an English value in lowercase, even in French-speaking parts of Canada and Spanish-speaking Puerto Rico.
This approach was recommended for many years in the U.S. community. As of 2017, 75% of Interstate route relations had cardinal directions as member roles.  Historically, tagging cardinal directions was only considered necessary along divided highways. For a route that mainly traverses undivided highways except for a brief divided segment, tagging a role on a few ways is much more convenient than adding every way to two relations.
Unfortunately, this approach conflicts with other uses of relation roles, especially role forward and role backward, which indicate that a two-way road carries the route in only one direction:
- If a two-way road is a member of a State Route 123 relation with role east, but the way happens to go north–south, a data consumer would be unable to reliably determine the progression of the route. If instead it has role forward, the data consumer would be unable to reliably associate the way with a cardinal direction.
- west to the same way. primarily goes north–south, but the east–west leg traverses some undivided, two-way streets. Therefore, it would be necessary to apply both role forward and role
Moreover, because editors and quality assurance tools do not widely support cardinal directions as roles, they sometimes become inconsistent and broken as roads and relations get edited over time.
There is considerable overlap between the two styles of mapping, not least because a given way can carry a concurrency of multiple routes, each mapped in a different manner. In the following tables, a way that has a cardinal direction role within a unidirectional relation is only counted as part of a unidirectional relation. Even though there are several times as many bidirectional relations as unidirectional relations, bidirectional relations have significant gaps. Whereas a unidirectional relation is guaranteed to provide cardinal direction information along the entire route, cardinal direction roles only cover a fraction of the bidirectional relations that rely on them.
|Network||Relations||Unidirectional relations||Bidirectional relations|
with cardinal direction roles
|Network||Total||Unidirectional relations||Bidirectional relations||Cardinal direction roles
in bidirectional relations
|Missing cardinal direction roles|
in bidirectional relations
|US:CA ||13,280 3⁄4 mi
|2,765 1⁄4 mi
|10,634 1⁄2 mi
|10,619 1⁄2 mi|
|US:I ||98,466 3⁄4 mi
|30,436 1⁄4 mi
|68,600 1⁄2 mi
|25,669 1⁄4 mi|
|110 1⁄2 mi
|319 3⁄4 mi
|16,793 3⁄4 mi
|1,070 1⁄4 mi
|15,723 1⁄4 mi|
|US:US ||189,664 1⁄4 mi
|15,555 1⁄2 mi
|176,585 1⁄4 mi
Mapping route directions as destinations
Tag the on-ramp or off-ramp way (or the destination_sign relation) with destination:ref=* set to the same value as the destination way's ref=*, followed by a space and the cardinal direction, capitalized as on the sign. For example, a ramp leading to eastbound U.S. Route 50 Truck is tagged destination:ref=US 50 Truck East. The cardinal direction always comes last, even if it appears above or to the left of the shield on a guide sign.
In French-speaking parts of Canada, the cardinal direction is tagged in French, while in Puerto Rico, it is tagged in Spanish. As of 2021, destinations with route directions are not tagged in a more structured form, so data consumers must take care to parse destination:ref=* in English, French, or Spanish, depending on the region.
- User:Minh Nguyen/destination:street – a proposal for tagging the supplemental road names that often replace cardinal directions on guide signs in some states
- carriageway_ref=* – somewhat reminiscent concept in the United Kingdom, but tagged on a way instead of a relation
- signed_direction=* – for making a foot, hiking, or riding route unidirectional
- Roles for recreational route relations
Relevant Sophox queries:
- Interstate super relations
- U.S. Route super relations
- Interstate super-duper relations
- U.S. Route super-duper relations
Notes and references
- This concept is sometimes called a "route direction", "inventory direction", or "cardinality", but usually it is merely referred to as a cardinal direction.