TMP-Proposal: New York/Highway Classification

From OpenStreetMap Wiki
Jump to navigation Jump to search

In OSM, roadways are primarily categorized using a highway tag that indicates a road's importance in the road network of its region. See US highway classification for more details and background. This section describes New York-specific determinations for implementing this categorization.

Data source for classification

New York's Department of Transportation maintains a CC0-licensed database of all streets that includes several fields that can inform the road classification in a reasonably objective manner as seen from OSM. Rather than arguing subjective details of whether a road is important enough to be labeled highway=trunk or highway=primary, we can refer to the DOT's opinion in borderline cases. Analysis of the network, as we shall see, shows that there are fields in the database that, when interpreted properly, yield a coherent network of routes at each level. The database has two fields that can inform the classification: Arterial Classification Code (ACC) and Feature Class Code (FCC).

Arterial Classification code is defined in the data dictionary as:

Arterial Classification Codes (ACCs) categorize roads according to the level of travel mobility that they provide in the road network. Mobility refers to the volume of traffic that a stretch of road carries and the length of trip that it serves. Roads at the highest level of mobility serve the greatest number of trips and the longest trips. Conversely, high-mobility roads provide the lowest level of access to property. Low-level, local roads serve that function.

This definition is precisely OSM's "importance to the road network of a region." - a very good start for assigning the highway value. Its interpretation (highly redacted for readability) is:

Arterial Classification Code (ACC)
Code Meaning
1 Continental significance, interconnects ~150 largest cities
2 Regional significance, interconnects ~600 largest cities
3 Intra-state, intra-metropolitan area, connects ~20,000 largest towns
4 City/county significance, connects every town and village
5 Neighborhood/community access. Initial route origin and destination.
6 Residential and service ways, including private roads

In the table, "largest cities" appears to refer to the ranking of cities by population within the United States. It appears that the class 2 status is assigned more generously than just the 600 largest cities in the US, but it surely does not refer to the 600 largest cities in New York.

The other field of significance, Feature Class Code (FCC) is a three character alphanumeric code that describes the physical characteristics of a road on two axes. It will be of primary use in determining what is and is not a motorway or expressway. The first two characters can be interpreted by the following table,

Feature Class Code (FCC) - leading two characters
Code Meaning
A0 Category unknown or unspecified. (This code is vanishingly rare in the data)
A1 Primary highway with limited access
A2 Primary highway without limited access
A3 Secondary or connecting highway
A4 Local, neighborhood or rural road
A5 Vehicular trail (The third character is different for vehicular trails, and categorizes whether the trail is 4WD-only, whether it is gated, and whether it operates year-round or only seasonally.)
A6 Road with special characteristics. The table below describes the subtypes
A7 "Other thoroughfare". Used for footways, stairways, alleys, driveways, parking aisles, cycleways, snowmobile trails, and planned roads. Not all counties provide the data.

For the major roads, (A10 to A49), the third character gives details about the grade separation of the road, whether it is subsurface in an underpass or tunnel, whether it is coaligned with a railway, and whether it is closed in winter (which appears to apply only to single carriageways without rail lines):

Feature Class Code (FCC) - third character
Code Meaning
0 Grade separation unknown or unspecified. (Vanishingly rare in the data.)
1 Not grade-separated (i.e., single carriageway)
2 Not grade-separated, in tunnel
3 Not grade-separated, in underpass
4 Not grade-separated, with street railway
5 Grade-separated (i.e., dual carriageway)
6 Grade-separated, in tunnel
7 Grade-separated, in underpass
8 Grade-separated, with a rail line in the median
9 Seasonal-access road. Analysis of the data shows that this code is used only on roads of class A3 and below - which makes sense; primary highways ordinarily support year-round traffic.

For the most minor roads and ways, the codes are special:

Feature Class Codes for minor roads
Code Meaning
A60 Highway link: At-grade ramp or connecting road not associated with a limited access highway
A61 highway=turning_circle: Cul-de-Sac, the closed end of a road that forms a loop or turn around
A62 Traffic Circle, the portion of a road or intersection of roads forming a roundabout - junction=roundabout + highway=*; the latter must be determined from the context of the connecting roads.
A63 Access Ramp, the portion of a road that forms a cloverleaf or limited access interchange - highway=motorway_link
A64 Service Road, provides access to businesses and rest areas - highway=service
A65 Ferry Crossing, Passenger, Seasonal - route=ferry + motor_vehicle=no + appropriate conditional access tags
A66 Ferry Crossing, Passenger, Year-Round - route=ferry + motor_vehicle=no
A68 Ferry Crossing, Vehicular, Seasonal - route=ferry + motor_vehicle=yes + appropriate conditional access tags
A69 Ferry Crossing, Vehicular, Year-Round - route=ferry + motor_vehicle=yes
A70 Other thoroughfare, not specified. (All of these appear to be data entry errors)
A71 Walkway, for pedestrians, usually unnamed - highway=footway
A72 Stairway, stepped road for pedestrians, usually unnamed - highway=steps
A73 Alley, road for service vehicles, located at the rear of buildings - highway=service + service=alley
A74 Driveway, usually privately owned and unnamed - highway=service + service=driveway
A75 Road, parking area - highway=service + service=parking_aisle
A76 Non-motorized Trail - highway=cycleway or highway=path depending on usage.
A77 Snowmobile Trail - highway=track + motor_vehicle=no + snowmobile=yes (+ice_road=yes where the trail crosses open water)
A78 Proposed highway

Classification scheme based on DOT data

1. highway=motorway

See also United States/Highway classification#Motorway

Map of all motorways in New York State

The roads that should be tagged with highway=motorway are precisely those that are feature classes A10 to A18. These correspond precisely to the characteristics that make an OSM motorway: dual carriageway with access fully controlled (all intersections grade-separated with traffic entering and leaving by ramps/slipways). This classification produces only a handful of anomalies, which are easy to correct.

  1. There is a data entry error north of Gloversville, with a tiny stub road miscoded. (pink)
  2. There are several single-carriageway roads that are arterial class 1 (yellow). These include the Bayonne, Kingston-Rhinecliff, Thousand Islands and Peace Bridges (which do not have grade separation on the bridges); several motorway links in The Bronx that also serve as local roads, and (a data entry error?) the Bennington bypass road.
  3. There are several arterial class 1 surface streets that connect unfinished sections of motorway (magenta, uncased). These are obvious candidates to be trunk roads.
  4. There are several short sections of motorway that connect to trunks at either end. These actually represent grade-separated dual carriageways, and it makes a modicum of sense to leave them as they are. Many of them are elevated sections of Taconic State Parkway, but US-11 through Ithaca, the small completed section of I-99, and perhaps a few others fall in this category.
  5. There are motorway segments of limited regional importance (arterial class 3 and below, shown cased in grey). These are all suburban spur roads or parkways that serve the major beaches. They should almost certainly be demoted to highway=primary expressway=yes.
Map of most significant (ACC=1) motorways in New York State

In addition, because of the extensive network of Interstate-quality roads around the major cities, the network of motorways is quite dense, yielding an extremely cluttered, "ball of yarn" appearance around the cities. As a speculative measure, this proposal would like to introduce a new tag, suburban=yes to characterize these motorways. A renderer would be able to eliminate 'suburban' motorways when producing a map at low zoom, retaining only those routes that are of singificant use to long-haul traffic and producing a much less cluttered map. In New York, the non-suburban motorways would be the Interstates (with three-digit Interstates removed in the densest areas), the Berkshire Spur, and NY-17 west of Harriman. The appearance at low zoom is much more readable.

Highways that the analysis identifies as motorways (at least in part) include:

Interstates: 190, 287, 298, 295 390, 481, 490, 495, 590, 678, 684, 690, 781, 787, 81, 84, 86, 87, 88, 89, 95

US Highways: 6

New York State Highways: 17

New York State Reference Routes: 912M (Berkshire Spur), 984J (Merritt Parkway-I684 connector), 907A (Cross Island Parkway), 907K (Cross County Parkway), 907W/908A (Hutchinson River Parkway), 987C (Palisades Interstate Parkway)

Highways that the analysis identifies (at least in part) as suburban motorways (which might be discarded at the lowest zoom levels) include:

Interstates: 78, 87 (Major Deegan Expressway), 99, 278 (Grand Central Parkway, Brooklyn-Queens Expressway, Robert F. Kennedy and Verrazano-Narrows Bridges), 295, 390, 478, 481, 490, 495, 587, 590, 678, 684, 690, 695, 787, 790, 890 895, 990

US Highways: 6, 9, 209, 219

New York State Highways: 5, 7, 8, 9A, 12, 13, 16,17, 22, 27, 33, 49, 104, 135, 198, 199, 231, 390, 400, 440, 481, 495 (Lincoln Tunnel), 531, 590, 690, 695

New York State reference routes:

New York State Reference Routes that are suburban motorways
Number Name
900G Robert F Kennedy (Triborough) Bridge
907A Cross Island Parkway
907B/C/D Belt Parkway
907H Bronx River Parkway
907K Cross County Parkway
907L FDR Drive
907M Grand Central Parkway
907P Harlem River Drive
907V Henry Hudson Parkway
908A (Interstate 678 connector)
908E Meadowbrook State Parkway
908F Gun Hill Road
908G Northern State Parkway
908K Sagtikos State Parkway
908M Southern State Parkway
908T Wantagh State Parkway
909C Korean War Veterans Parkway
909D Ocean Parkway
915G Bennington Connector
940T (Rochester) Inner Loop
957A Niagara Scenic Parkway / Robert Moses Parkway
981B (no name)
982L Garden State Parkway Connector
987C Palisades Interstate Parkway
987D Saw Mill River Parkway
987F Bronx River Parkway
987G Taconic State Parkway

Others: Dr Martin Luther King Expressway, Flatbush Avenue Extension, John F Kennedy Expressway, Lincoln Tunnel, Manhattan Bridge, Sheridan Boulevard, Whitestone Expressway, Williamsburg Bridge

2. highway=trunk

Map of trunk roads in New York State

The OSM definition of 'trunk' corresponds almost perfectly in New York with a non-motorway of arterial classification 1 or 2. As can be seen in the map of trunk roads in New York, the resulting network is well-connected, without routing islands or peculiar interruptions. All the major towns, including the university towns of Oswego, Ithaca, and Potsdam, become connected. The largest areas without trunk roads correspond to the Adirondack, Catskill, and Allegany mountain ranges, where there are no major population centers to connect.

The status of a road being a trunk has nothing to do with its physical characteristics and everything to do with its importance to the road network. In the maps at right, motorways have casings as before; a heavy red line denotes a multilane divided road with grade crossings (perhaps a candidate for expressway=yes?), a thinner red line is a multilane highway without a center median, and a black line is a two-lane road. NY 8, the relatively poor road that connects Utica with the Southern Tier, is shown as a trunk, as is NY 29, another relatively poor road that connects Saratoga with points west; the handsome NY 85 and NY 32, expressways connecting Albany with its southern suburbs, are not trunks because their importance is strictly local. All this is exactly what we want.

Moreover, the trunks align with highways that are already identified as trunks in the neighboring states. US-2, US-4, VT-279, US-20, and US-44 are already mentioned by mappers in New England as being obvious trunk candidates.

Motorways and trunk roads in New York City

In New York City, it appears that the only trunk roads are the ones that are needed to connect the motorways across Manhattan. In other words, NYS DOT doesn't have particular keying for any intra-urban or suburban trunk roads. Downstate mappers may want to consider what an appropriate definition of a trunk is, in a region that dense. (The definition that a trunk connects major population centers is pretty meaningless within a major population center.

Motorways and trunk roads on Long Island

Long Island is similar. The added trunk roads are the ones needed to connect the freeway portion of NY 27 with Southern State Parkway, and the truck routes to the East End. Again, Downstate mappers may wish to consider whether the definition of 'trunk' is appropriate in such a dense area.

Motorways and trunk roads in Westchester and Rockland Counties

By contrast, the suburban counties of Westchester and Rockland appear to have reasonably complete trunk networks. If we measure 'trunk' by 'a driver planning a trip between a point in these counties and another point a long distance away would use one of these roads', it's pretty accurate; mappers might quibble about the details, but perhaps NYS DOT has settled the matter.

There are only a handful of anomalies in the 'trunk' classification that are immediately apparent (although more will likely be discovered as tagging work proceeds). US-44 in Poughkeepsie has too low an arterial class, and the arterial class of NY-812 downgrades before it meets up with NY-44 in Lowville.

US-44 interrupted in Poughkeepsie
NY-812 interrupted in Lowville

All of these should be easy to patch.

Features identified in part as trunk roads of continental significance:

Interstates: 86 (portions not up to motorway standard)

State Highways: 100 (Central Park Avenue connector between Cross County Parkway and the Thruway); 17 (between Hancock and Deposit), 300

New York State Reference Routes: 471I (Central Park Avenue again), 955B (Peace Bridge connector)

Other: Bruckner Boulevard, East 177 Street, Kearney Avenue, MacDonough Place (all surface-street connectors among Bronx motorways); Unionport Bridge

Features identified in part as trunk roads of regional significance are too numerous to list in full here. A partial list:

Interstates: 87 (disconnected portion in New York City)

US Highways: 2, 4, 6, 9, 9W, 11, 20, 20A, 44, 62, 202, 219

New York State Highways: 3, 5, 7, 8, 9A, 9G, 9H, 10, 12, 12A, 13, 14, 15, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30A, 31, 32, 33, 33A, 35, 36, 37, 39, 42, 50, 52, 56, 58, 59, 60, 63, 77, 78, 100, 104, 109, 130, 149, 179, 199, 204, 205, 231, 263, 303, 332, 365, 370, 384, 408, 481, 495, 812, 878

Numerous more minor roads, refer to map.

3. highway=primary

Primary highways in New York State

Moving down to arterial classification code 3 yields what appears to be a coherent network of primary roads. At this level, hardly a town of any size is left unserved, and once again, the network appears to be free from routing islands or unexplained spurs. The classification appears again strictly to be based on routing importance. There are primary roads that are nearly motorways, and others that are narrow and winding two-lane roads. There are likewise multilane divided urban arterials that are not part of the primary network. All of this appears to be in keeping with OSM's definition.

Once again, the largest areas of the state that are not served by primary highways are nearly uninhabited mountain ranges.

Primary highways in New York City and Long Island

Looking at New York City and Long Island, the primary network appears to fill in the missing pieces: the north-south arterials on Long Island (plus NY-27, 25, and 25A; the crosstown arterials in Manhattan that link the bridges and tunnels, and a few more major surface connectors and truck routes. Nothing appears terribly surprising, although locals may find the network to be a trifle sparse.

Unfortunately, beyond this point, arterial classification breaks down. Setting the threshold to class 4 roads returns a weird hodgepodge of routing islands, spurs, and roads to nowhere. Classification codes 4, 5, 6 appear to be best ignored.

The primary roads are far too numerous to list here. Of interest, however are primary roads that are limited-access dual-carriageways, which can be presumed to be expressway=yes:

Some connectors for Interstates 295, 678, 790 US 9 (portions) State highways (in part): 5, 7, 8, 9A, 27, 85, 135, 231, 363, 390, 590, 690, 695, 787, 840, 890 New York State Reference Routes (in part):

New York State Reference Routes that are expressways
Number Name
907P Harlem River Drive
908B Jackie Robinson Parkway
908F Gun Hill Road
908G Northern State Parkway
908J Robert Moses Causeway
908K Sunken Meadow Parkway
908M Hecksher State Parkway
909K Sunken Meadow Parkway
947A Lake Ontario State Parkway
957A/958A Niagara Scenic Parkway

plus about a dozen unnumbered roads, most of which appear to be data entry errors.

4. highway=secondary

What is proposed here is that highway=secondary be assigned to any numbered state highway not covered by any of the above rules. This yields a reasonably coherent network filling in access to smaller villages.

5. highway=tertiary

Tertiary highways in New York should be any numbered county route not covered by any of the above rules - including unpaved and seasonal routes. These routes can be of considerable local importance despite the inconveniences attendant upon their poor quality. (Note that while Westchester and Nassau Counties do not sign their county highways, there are lists of unsigned numbered county highways maintained by both counties' transportation departments.) In addition, any New York State Reference Route not covered by any of the above rules should be a tertiary highway. (Exception: The four Reference Routes that are signed as if they were touring routes should remain highway=secondary.

6. highway=unclassified

In rural areas, town roads that are through streets linking multiple establishments (including commercial and industrial facilities) should be highway=unclassified. (One indicator is that practically any rural road with a painted center line is at least highway=unclassified. Streets in urban areas that serve commercial or industrial districts and do not have a higher classification should also receive highway=unclassified.

7. highway=residential

A residential road provides access to housing (perhaps associated with a family farm in rural areas) without serving the purpose of connecting settlements or carrying significant commercial traffic. Public roads that are not any of the above classifications, and are not service ways or farm or forest tracks, are likely residential.

8. Links, tracks, service ways.

The tagging of link roads to motorways and highways; of tracks that serve exclusively to access farms and forests, and of the service ways of single establishments, should follow the same conventions in New York State as in the rest of the country.

Most link roads in the NYSGIS database have the feature class codes of A63 (or occasionally A60) and can be identified in that manner. Of note, they appear to have the arterial classification code of the minor way, whereas OSM uses that of the major way. This convention is actually in keeping with their importance to the road network. A ramp joining a motorway to a tertiary road is of only tertiary importance, since traffic using the motorway as a through route will never see it.


The following table summarizes the rules for mapping NYS DOT data onto the OpenStreetMap highway classification:

Classification for highway=highway based on NYS DOT codes
Highway Rule
highway=motorway ACC <=2 and FCC in the range ('A10' .. A18'). Consider adding suburban=yes if ACC=2.
highway=trunk All other ACC<=2 and FCC not 'A60' or 'A63'. Patch as necessary to connect the network (see discussion above).
highway=primary ACC=3 and FCC not 'A60' or 'A63'. Add expressway=yes if FCC is in the range ('A10' .. 'A18')
highway=secondary All numbered state highways with ACC >=4, and FCC not 'A60' or 'A63' including the four signed New York State Reference Routes.
highway=tertiary All numbered county highways, signed or unsigned. All unsigned New York State Reference Routes.
highway=unclassified All through streets not listed above that carry significant commercial traffic.
highway=residential All streets that exist primarily to provide access to residences (including family farms) and do not carry significant commercial traffic.
Links, service ways, tracks The table in the previous section offers tagging guidelines for feature class codes A60 to A78.


An expressway is a highway that does not meet all the qualifications for highway=motorway but is more efficient for motor vehicles than most others. Typically, they have several features that are present in some combination:

The only roads that the analysis of NYS DOT data has identified as expressways are roads with functional class codes A10 through A18 that are not at least arterial class 2. There are no doubt other roads that qualified has expressways, and these should be tagged as expressway=yes based on local knowledge.

Road access

Only roads that are signed with legends such as 'POSTED', 'No Trespassing', 'Keep Out', 'No Motor Vehicles', or similar phrases should be tagged with access=private or access=destination. In particular, privately owned and maintained residential roads and service ways should be restricted to at most access=destination if they are open to deliveries, or else the network will present problems for routing delivery trucks.

Signage for seasonal-access highway

Appropriate conditional access tags should be added to ways that are only seasonally maintained. Many of these ways are used in winter as ski or snowmobile trails, and should have appropriate ski=* or snowmobile=* conditional access tags.

Route numbers and road names

Reference numbers and route relations

All marked numbered routes should have appropriate ref=* tags. Signed, numbered routes should also have route=road relations. References should have the following formats:

Reference numbering for highways in New York State
Highway type ref=* on way network=* on route ref=* on route
Interstate I 95 US:I 95
US Highway US 20 US:US 20
New York State Highway NY 146 US:NY 146
New York State Reference Route Do not use US:NY:Reference unsigned_ref=987G
Parkway Do not use US:NY Alphabetic code (e.g. SO) that appears on the sign
Signed, numbered county highway CR 23C US:NY:Greene 23C
Snowmobile corridor route Do not use US:NY:snowmobile:corridor 7A (Note: Use route=snowmobile, not route=road)
Snowmobile secondary route Do not use US:NY:snowmobile:secondary 21 (Note: Use route=snowmobile, not route=road)

Highways that have modifiers (US 20 Business, NY 25 Truck, etc.) should have :BUSINESS, :TRUCK, etc. appended to the network=* value.

Memorial and symbolic highway names

Many highways (Interstate, US, or NY State) have had additional names attached to them via special legislation. These names are sometimes signed, but along arbitrary points along the route of travel, or not at all. This differs from street signs at highway entrances or at intersections. Since these names don't always line up with street level signage or in a manner useful to navigation and they can span across multiple street names or highways they should not be entered under name=*. Instead, they should be entered as a value of official_name=* - on the way if the name applies only to a portion of the route, or on the route relation if the name applies to the entire route.

Routes with only a route number

If a route has only a route number, but no name, and there are street addresses on the route, then the address points from New York's E911 address database - all of which have been imported into OSM already - should be used to guide the choice of value to put in name=*. For instance for NY 146 in Altamont, since the addresses along the highway are ones like '548 State Route 146', then a name=*, if entered, should be name=State Route 146. In this situation, some mappers prefer to enter noname=yes.