Alabama toll rates

Alabama’s tolls are three river bridges run by American Roads (Alabama Freedom Pass): the Tuscaloosa By-Pass, the Montgomery Expressway and the Emerald Mountain Expressway. The posted rate is paid at the plaza; a residential Freedom Pass account takes 50¢ off every trip. The Foley Beach Express bridge has been toll-free since the State bought it in 2024. Files: facilities.csv, collection_points.csv, rates.csv, decisions.csv.

How a bot finds the toll (read this first)

  1. Get your route as roads and points. From the route planner take (a) the line of lat/lon points and (b) the OSM way id of every road piece the route drives (Valhalla: trace_attributes on the route shape, attribute edge.way_id).
  2. Find the toll points you pass. Every row of the table “Booths” below is one booth standing on one OSM way. You pass that booth when both hold: your route drives that OSM way, and your line passes within 10 m of the booth’s lat/lon. Note the row’s point_id. A ramp booth is on the ramp’s way, so driving past on the main road is not a hit; a main-road booth is on the main road’s way, so a ramp beside it is not a hit. Rows marked “position only” have no OSM road: there, passing within the stated radius counts.
  3. Note your direction at that booth (the compass direction your route is heading there: northbound, southbound, eastbound, westbound).
  4. Read the price. Open the point’s facility page (the point_id links there). Under the point_id is one row per direction, vehicle and payment: take the row whose direction is yours or “both”, your vehicle (axles) and how you pay. A point with no row for your direction does not charge you.
  5. Roads priced per trip (marked “per trip”): their booths are the road’s exits. The first one your route passes is where you got on, the last one where you got off; read that pair in the facility page’s “Trip prices” table for your direction.
  6. Add up the amounts of every point (and trip) passed.
  7. Check for untied tolls. The table “OSM toll nodes not tied to a toll point” lists toll gantries/booths mapped in OpenStreetMap on these roads that no published point claims. If your route passes one (same way + distance rule), say so: the published rates do not price it.

No route line? Fall back to names: each facility page has the road in driving order with exit numbers and the names the route planner uses. Names cannot tell which ramp you took at an exit with several ramps; the way id can.

Facilities

facility_idfacilityOSM namesOSM refspointspriced
AL-TBPTuscaloosa By-PassJoe Mallisham Parkway—1per toll point
AL-MEXMontgomery ExpresswayAlabama River Parkway—1per toll point
AL-EMXEmerald Mountain ExpresswayEmerald Mountain Express Way—1per toll point

Booths — match your route by OSM way and position (8 booths at 3 toll points; 0 points open)

One row per booth, each standing on one OpenStreetMap way. Your route passes a toll point when it drives the booth’s way and its line comes within 10 m of the booth. Each point_id links to its prices. Position decisions: decisions.csv.

point_idOSM wayOSM noderoad (OSM)booth latbooth lonhit whenfacilitytoll point
AL-TBP-016861881421050335594Joe Mallisham Parkway · primary33.1943861-87.6242759way + 10 mAL-TBP toll plaza
AL-MEX-0176939708355386872Alabama River Parkway · secondary32.4341112-86.3209062way + 10 mAL-MEX toll plaza
AL-MEX-017693970897181883006(unnamed) · secondary32.4342717-86.3208924way + 10 mAL-MEX toll plaza
AL-MEX-017693970877181883007(unnamed) · secondary32.4342174-86.3208988way + 10 mAL-MEX toll plaza
AL-MEX-017693970857181883008(unnamed) · secondary32.4341646-86.3209018way + 10 mAL-MEX toll plaza
AL-MEX-017693970867181883009(unnamed) · secondary32.4340595-86.3209148way + 10 mAL-MEX toll plaza
AL-MEX-017693970887181883010(unnamed) · secondary32.4340090-86.3209204way + 10 mAL-MEX toll plaza
AL-EMX-01765066555418313Emerald Mountain Express Way · secondary32.4359006-86.1221271way + 10 mAL-EMX toll plaza

OSM toll nodes not tied to a toll point (21)

Toll gantries or booths mapped in OpenStreetMap on these toll roads that no published toll point claims. A route that passes one (same way, within the same distance) passes a toll these pages do not price: report it, do not guess a price.

OSM wayOSM noderoad (OSM)latlonfacility nearby
740593754822871(unnamed) · residential31.2968143-86.2745523
12116103254822871(unnamed) · service31.2968143-86.2745523
885513864290791(unnamed) · residential33.2972775-87.6766451
885728764319089Tannehill Park · residential33.2508330-87.0699340
40425152489330428(unnamed) · tertiary30.2312971-88.0151043
1293833063946796375(unnamed) · service32.3058735-86.3895701
79517984076284348(unnamed) · service33.2820779-85.6424552
6972672624076284348(unnamed) · unclassified33.2820779-85.6424552
4525545864493360406(unnamed) · service31.6633627-85.5076111
404251555148919989Fort Morgan-Dauphin Island Ferry · tertiary30.2514947-88.0819328
765108111762854674Cypress Lane · residential32.4482830-86.3390254
127261049211817381839(unnamed) · service33.5601319-86.7498338
127261047511817381842(unnamed) · service33.5601749-86.7498113
127261047911817381847(unnamed) · service33.5599604-86.7499241
127261047711817381850(unnamed) · service33.5600898-86.7498560
127261049511817381863(unnamed) · service33.5602175-86.7497889
127261050011817381866(unnamed) · service33.5600469-86.7498786
127261049011817381868(unnamed) · service33.5598785-86.7499674
127261049911817391570(unnamed) · service33.5600027-86.7499017
127261050111817391575(unnamed) · service33.5602545-86.7497696
127261048211817391583(unnamed) · service33.5599197-86.7499454

Sources (7)