transcript.md
↑ ContentsState Planner chat · https://stateplanner.com
- State: Ohio (OH)
- Started: October 29, 2026, 1:53 PM UTC
- Runtime: 26 sec
- Status: completed
Prompt
ODOT Traffic Count Stations by Annual Daily Traffic
Model: Anthropic: Claude Opus 5.5 (anthropic/claude-opus-5.5, via openrouter)
Response
ODOT traffic count stations by annual average daily traffic (AADT)

The map shows 35,932 of ODOT's 37,108 traffic count stations. The other 1,176 have no AADT figure and are not drawn. Every station's AADT year is 2025. Busier stations are drawn on top of quieter ones.
Legend: AADT, vehicles per day
- Light green: under 1,000 (14,468 stations)
- Green: 1,000–4,999 (11,820)
- Yellow: 5,000–14,999 (6,937)
- Orange: 15,000–39,999 (1,918)
- Red: 40,000–99,999 (531)
- Purple: 100,000 and over (258)
What the data shows
- Most stations count light traffic. The median station records about 1,670 vehicles a day, and three-quarters record under 5,400. Most of the short-term counts are on rural state routes and local roads.
- The heaviest volumes are on the urban interstates. The purple and red points follow the freeways around and through Columbus, Cleveland, Cincinnati, Dayton, Toledo and Akron.
- The busiest stations are on I‑270 in Franklin County. The top station records 195,362 vehicles a day, about 29,700 of them trucks. Next come I‑271 in Cuyahoga County (172,776) and I‑480 in Cuyahoga County (165,042).
- Only 348 stations are permanent counters. The rest are short-term count locations, whose AADT ODOT estimates from counts taken over a few days.
Click any point to see its station ID, county, route, AADT, the split between cars and trucks, and whether it is a permanent counter.
I can also map AADT along each road segment using the Traffic Count Segments table, map truck AADT or truck share, or show only the permanent counters.
Exploratory Queries
Query 1 — Profile AADT distribution, years, and permanent stations.
SELECT count(*) n,
count(aadt) n_aadt,
min(aadt_year) y0,
max(aadt_year) y1,
percentile_cont(ARRAY[0.25, 0.5, 0.75, 0.9, 0.99]) WITHIN GROUP (
ORDER BY aadt
) pct,
max(aadt),
sum((is_permanent = 'Yes')::int) perm,
sum((aadt < 1000)::int) lt1k,
sum((aadt BETWEEN 1000 AND 4999)::int) b5k,
sum((aadt BETWEEN 5000 AND 14999)::int) b15k,
sum((aadt BETWEEN 15000 AND 39999)::int) b40k,
sum((aadt BETWEEN 40000 AND 99999)::int) b100k,
sum((aadt >= 100000)::int) ge100k
FROM oh_traffic_count_stations
| n | n_aadt | y0 | y1 | pct | max | perm | lt1k | b5k | b15k | b40k | b100k | ge100k |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 37108 | 35932 | 2025 | 2025 | [414,1668,5432,12374.900000000001,81898.42000000004] | 195362 | 348 | 14468 | 11820 | 6937 | 1918 | 531 | 258 |
Query 2 — Find the busiest count stations.
SELECT station_id_nbr,
county_cd,
route_type,
route_nbr,
aadt,
aadt_trucks,
is_permanent
FROM oh_traffic_count_stations
WHERE aadt IS NOT NULL
ORDER BY aadt DESC
LIMIT 8
| station_id_nbr | county_cd | route_type | route_nbr | aadt | aadt_trucks | is_permanent |
|---|---|---|---|---|---|---|
| 45125 | FRA | IR | 00270 | 195362 | 29693 | Yes |
| 45025 | FRA | IR | 00270 | 186954 | 28418 | No |
| 202018 | CUY | IR | 00271 | 172776 | 17970 | No |
| 44625 | FRA | IR | 00270 | 172647 | 26244 | No |
| 44525 | FRA | IR | 00270 | 170280 | 25881 | No |
| 132625 | FRA | IR | 00270 | 166795 | No | |
| 44725 | FRA | IR | 00270 | 166776 | 25349 | Yes |
| 45918 | CUY | IR | 00480 | 165042 | 11057 | No |
Map Layer Queries
Count stations by AADT (2025) — colored by "cls": Under 1,000 (#c7e9c0), 1,000–4,999 (#74c476), 5,000–14,999 (#fed976), 15,000–39,999 (#fd8d3c), 40,000–99,999 (#e31a1c), 100,000 and over (#54278f)
SELECT geom,
station_id_nbr AS "Station",
county_cd AS "County",
route_type || ' ' || ltrim(route_nbr, '0') AS "Route",
aadt AS "AADT",
aadt_cars AS "Cars",
aadt_trucks AS "Trucks",
aadt_year AS "Year",
is_permanent AS "Permanent",
CASE
WHEN aadt < 1000 THEN '1'
WHEN aadt < 5000 THEN '2'
WHEN aadt < 15000 THEN '3'
WHEN aadt < 40000 THEN '4'
WHEN aadt < 100000 THEN '5'
ELSE '6'
END AS cls
FROM oh_traffic_count_stations
WHERE aadt IS NOT NULL
ORDER BY aadt
Picture: maps/turn-1-count-stations-aadt.png
Used Data Sets
oh_traffic_count_stations— last synced 2026-09-27 · 37,108 rows