Trazo › How we rate streets
How Trazo rates streets for bike routes
Trazo rates the streets and paths it routes on from 1 (low stress) to 4 (very high stress), so it can steer your bike route away from traffic.
The ratings are guidance, not a guarantee. Verify safety yourself.
On this page
- The 4 stress levels
- Painted lanes on fast roads
- What "busy" means
- Busy crossings
- How a route gets picked
- Rider profiles
- Riding with kids
- Surface settings
- Real bike routes, rated
- Where the data comes from
- What the rating can't see
- Found a wrong route?
What is Level of Traffic Stress?
Level of Traffic Stress (LTS) is a 1-to-4 scale from bike planning that rates how stressful a street feels on a bike. It comes from a 2012 report for the Mineta Transportation Institute.
Trazo's levels are our own estimate, inspired by LTS. They aren't an official LTS rating: a full LTS study looks at more than we can, including the details of each intersection.
Trazo reads what OpenStreetMap says about each street: the kind of road, and whether it has a bike lane or a path. For a street with a painted lane, the speed limit and the number of lanes count too. We don't have traffic counts.
Here's how Trazo rates common streets and paths.
-
Level 1: Low stress
The most comfortable choice, with little or no traffic beside you.
- Paved trail or bike path
- Neighborhood street with a bike lane
-
Level 2: Moderate
A comfortable choice for most riders, with some traffic or a rougher surface.
- Neighborhood street
- Dirt or gravel path
- Bike path beside a road
- Sidewalk where bikes are allowed
- Through street with a bike lane
-
Level 3: High stress
A choice to ride with traffic and accept the risk that comes with it.
- Through street with a bike lane, 40 mph
- Through street, no bike lane
- Main road with a painted bike lane
-
Level 4: Very high stress
A choice to ride with main-road traffic and accept the risk that comes with it.
The biggest roads, service roads and most sidewalks aren't in Trazo's network, so they have no rating and Trazo doesn't route on them.
Is a painted bike lane low stress on a fast road?
No. On a neighborhood street, a painted lane rates level 1. On a road with a speed limit of 35 mph or more, or with 4 or more lanes, the same lane rates at least level 3. The paint doesn't change how fast the cars next to you are going.
If OpenStreetMap has no speed limit or lane count for a road, its road type decides the level. So a fast road with missing data can read lower than it should.
What does "busy" mean on a Trazo ride page?
A busy road is a street rated level 3 or 4 with no bike lane.
"Off busy roads" is the percent of a ride's distance that isn't on a busy road.
A painted lane on a level 3 or 4 road doesn't count as a busy road here, because you aren't in the car lane. It can still feel stressful, so the ride page says where it is, and the percent stops at 99%.
So 100% means no busy road and no painted lane on a level 3 or 4 road, not even a short stretch.
"On trails and paths" is the share of the ride that's away from the road altogether.
Does Trazo avoid busy road crossings?
Only a little. Crossing a level 3 or 4 road where nothing stops the cars adds a small fixed cost, the same in every rider profile. In the With kids profile, that's about what 260 feet of trail costs, so a route won't go far out of its way to avoid one.
Trazo marks the ones left on your route, on the map and on the route card, but it can miss some.
Here a painted lane makes no difference. A level 3 or 4 road counts as busy with or without one, because paint doesn't help you get across.
A crossing gets marked when there's no traffic light or all-way stop within about 65 feet, in any of these cases:
- A trail, sidewalk or bike-lane street meets a busy road.
- A quiet street (level 1 or 2) goes straight across a busy road. A quiet street that just ends at the busy road is a turn, not a crossing.
- A quiet way crosses one of the biggest roads, the ones Trazo never routes you on.
- Two quiet streets meet a busy road from opposite sides, within about 100 feet of each other, so you jog along it to get across. On a busy road with no bike lane, the route card can leave these off.
A plain stop sign usually stops the side street or the trail, not the busy road, so it doesn't clear a crossing. The one exception is a bike-lane street that ends at the road at a stop sign. A signal mapped as a fire-station signal or a blinking light doesn't count as a light.
A marked crossing is a cost, not a ban, so a route can still use one. Check those spots before you go.
How does Trazo pick a route?
In the app you pick a rider profile: With kids, Relaxed (the default) or Anything. Each profile gives every kind of street its own stress multiplier.
Each stretch of a route costs its length × its stress multiplier. Trazo adds those up and adds a small cost for each marked crossing. Surface settings, private roads, going the wrong way on a one-way street and the Prefer flat option can raise the cost too.
The lowest total wins, then the With kids and Paved rules below can change the pick. So Trazo doesn't always take the shortest way.
These are the starting multipliers for paved streets and paths in each rider profile:
| Street type | With kids | Relaxed | Anything |
| Trail or bike path | ×1 | ×0.85 | ×1 |
|---|
| Neighborhood street with a bike lane | ×2 | ×1 | ×1 |
|---|
| Neighborhood street | ×7.5 | ×1.25 | ×1.25 |
|---|
| Painted lane on a main or fast road | ×15 | ×12 | ×3 |
|---|
| Through street, no bike lane | ×42 | ×12 | ×3 |
|---|
| Main road, no bike lane | ×126 | ×36 | ×9 |
So with the With kids profile, one mile of through street with no bike lane adds the same route cost as 42 miles of trail. That's why a route will often go a bit farther to avoid it.
Rider profiles: With kids, Relaxed, Anything
- With kids
Favors trails and paths, and uses quiet streets to link them.
×42on a through street with no bike lane
- Relaxeddefault
Quiet streets and bike lanes on slower roads are fine, leaning a little toward trails.
×12on a through street with no bike lane
- Anything
The most direct route. Busy streets still count extra, so it isn't always the shortest line.
×3on a through street with no bike lane
The With kids profile leans away from traffic. You know your kids best, so check the crossings and the road before you go.
When the With kids profile makes a big detour
If the low-stress way on an A-to-B ride is more than 1.6 times the direct way, Trazo looks for a shorter one. That shorter way can add no more than about 330 feet of busy road or painted lane on a main or fast road, and no extra busy crossings.
If there isn't one, Trazo keeps the long way only if it really rides less busy road than the direct way, and the card says how much busy road is on the direct way.
Sometimes every route Trazo finds has busy stretches. Then the card says so: "No calm way here: every route rides busy roads."
Our rides-with-kids guides are stricter
A ride makes our rides-with-kids guides only if it has no busy crossing warnings and rides no more than about 500 feet on a busy street or in a painted lane beside fast traffic. Each of those stretches is named, so you can plan for it.
Surface settings: Paved, Mixed, Any
Trazo sorts every surface into three groups:
- Smooth pavement: asphalt, concrete, paving stones
- Firm gravel: gravel, fine gravel, packed dirt and stone
- Rough: dirt, grass, sand
Paved strongly prefers pavement, but low stress comes first, so a route can still use gravel or dirt.
Trazo keeps the paved-first route only if it adds no more than about 330 feet of busy road and is at most 1.25 times as long as the Mixed route. Otherwise you get the Mixed route.
When a Paved route has more than a little gravel or dirt, the card says "No fully paved way" and how much. A fully paved way may still exist, even when Trazo chooses gravel or dirt.
Mixed (the default with With kids and Relaxed) prefers pavement, will take firm gravel, and avoids dirt without ruling it out. Any (the default with Anything) counts every surface the same.
If the map doesn't give a surface, Trazo assumes streets, bike paths and sidewalks are paved, and a plain path usually counts as rough unless it's marked for bikes.
Real bike routes, rated
Here are two Fort Collins routes on the Relaxed rider profile, and how to read the numbers.
Trail or pathBike laneQuiet streetBusy road
Off busy roads, with one crossing to watch
CSU (the Oval) to Spring Canyon Park: 5.1 miles, 100% off busy roads, 63% on trails and paths.
The ride stays off busy roads. But at mile 4.1 it crosses South Taft Hill Road with no traffic light. The percent counts where you ride, not where you cross, so read the crossing list too.
A short ride with busy blocks
Old Town Square to Lee Martinez Park: 1 mile, 83% off busy roads, 50% on trails and paths.
This one rides busy blocks: East Mountain Avenue, West Mountain Avenue and North Mason Street. At mile 0.5 it also crosses Mason Street with no light. On a ride this short, a few blocks move the percent a lot, and the ride page names them.
Where does the data come from?
- Streets, paths and their labels: OpenStreetMap, edited by volunteers, used under the Open Database License (ODbL). Map data © OpenStreetMap contributors.
- Elevation: NASA SRTM and USGS 3DEP.
- Map pictures: OpenFreeMap and OpenMapTiles.
- In Boulder, the city's own stress data: City of Boulder Open Data, CC0. It can only raise a street's level, and the city doesn't endorse Trazo.
We rebuild each area's map from OpenStreetMap from time to time, so a change on the ground can take time to show up.
What the rating can't see
- OpenStreetMap can be wrong or out of date. A new bike lane may be missing, or a closed path may still show.
- Crossing warnings can be wrong both ways: a crossing with a light can get marked, and a risky crossing can get missed.
- Road type stands in for traffic. A level is an estimate of how a street usually feels, not how it feels today.
- Street parking, lane width, pavement condition and lighting aren't in the rating.
- Hills don't change a street's level. If you want gentler climbs, turn on Prefer flat.
- Construction, snow, flooding and the day's traffic aren't in the rating. If riders have reported a closure, flooding or ice on your route, the map and the route card show it.
- Closed or private ways. A route can still go through a locked gate, a private road or a path closed to bikes. Follow the signs.
- Water. A route can cross a ford or stepping stones with water on them.
- Bike symbols in the car lane. They aren't a bike lane. Some of our maps still count them as one, so a street can read lower than it should.
👀 So look the route over before you ride, and ride to what you see.
Found a wrong route?
Tap Feedback in the app, or email [email protected]. We read every report. Some fixes go on our own short list of local corrections, others change the routing rules, and some take time. Fixes you'd notice go on What's new.
Open the mapWho makes Trazo
Last updated November 6, 2026