# U.S. Route 20 in Iowa

U.S. Highway 20 (US 20) in Iowa is a major east–west artery which runs across the state, separating the northern third of Iowa from the southern two-thirds. It enters Iowa from Nebraska, concurrent with Interstate 129 (I-129) and US 75, crossing the Missouri River at Sioux City. US 20 runs in a more-or-less straight line across Iowa, paralleling 42° 27' N. It leaves Iowa in Dubuque by crossing the Mississippi River into Illinois. Since October 2018, US 20 is a four-lane divided highway for its entire length in Iowa.

## Route description

US 20 enters Iowa on the Sergeant Floyd Memorial Bridge, which also carries I-129 and US 75, over the Missouri River. Almost immediately upon landing in Iowa, there is an interchange with I-29, at which I-129 ends. Continuing east, US 20 and US 75 run together around the southern and eastern sides of Sioux City. The two routes split at the Gordon Drive (US 20 Business, or US 20 Bus.) interchange as US 20 exits to the east from Sioux City. The expressway is an older section that goes through Lawton and comes to a stop sign at Moville. About three miles (4.8 km) further east, at Ida Avenue (County Route D22, or CR D22), the newest four-lane stretch (except for a short expressway segment just south of Holstein that is briefly concurrent with US 59) starts and goes to about one mile (1.6 km) west of an interchange with US 71 and Iowa Highway 471 (Iowa 471), just north of Early. From this point until an interchange with Iowa 4 northwest of Rockwell City is the second newest section of four-lane, which opened in November 2012. This new roadway passes to the north of Sac City and Lytton and has another interchange with the realigned route of US 71 northeast of Sac City but mostly has at-grade intersections, including CR M54 into Sac City and CR N28 into Lytton.
East of Iowa 4, and extending to the former beginning of the four-lane expressway northeast of Moorland (now an interchange with CR D36), is a four-lane section which opened in December 2010 and bypasses Rockwell City to the north. US 20 continues until just south of Highview, when it becomes a full Interstate-standard freeway. The expressway south of Fort Dodge has interchanges with US 169 and CR P59. East of Fort Dodge, US 20 overlaps with Iowa 17 for 4.5 miles (7.2 km), ending at Webster City. Near Williams, US 20 intersects I-35. Beginning at the interchange with US 65 is a section of four-lane freeway which, when completed, shaved nearly 16 miles (26 km) off US 20's length. Prior to 2003, US 20 joined US 65 north through Iowa Falls and then east toward Ackley and Parkersburg before heading south again to the freeway with Iowa 14. The bridge crossing the Iowa River near Steamboat Rock is a launched steel I-girder bridge, the first of its kind in the U.S. The bridge was designed to cross the old-growth woodland of the Iowa River valley with minimal impact.
US 20 continues east toward Cedar Falls where it overlaps Iowa 58 for just over one mile (1.6 km). The western junction of Iowa 58 (Hudson Road) connects traffic to the University of Northern Iowa while the eastern junction of Iowa 58 is also the western junction of Iowa 27, the Avenue of the Saints. Another mile (1.6 km) east, in Waterloo, US 20 intersects US 63 (Sergeant Road). On the southeast side of Waterloo, I-380 joins US 20/Iowa 27 for six miles (9.7 km) before exiting with Iowa 27 south toward Cedar Rapids.
US 20 continues as a freeway east of Waterloo. It intersects Iowa 150 at Independence and Iowa 13 at Manchester, as well as junctioning a number of county roads serving smaller communities. Approximately 21 miles (34 km) between Independence and Manchester, the highway goes over a terminal moraine and enters the Driftless Area, a region it will not exit until reaching Stockton, Illinois.
At Delaware, US 20 changes from a freeway to an expressway with at-grade intersections; however, there are many interchanges where US 20 meets major roads, mostly at the villages and towns along US 20's route. US 20 serves Earlville, Dyersville (where US 52 joins the route and passing near the Field of Dreams filming site), Farley, Epworth, and Peosta before entering Dubuque. On the western edge of Dubuque, an interchange onto the Southwest Arterial routes US 52 around the southern outskirts of the city, connecting to US 61 and US 151. US 20 remains at least four lanes through Dubuque, but there are nine stoplights along the route, particularly on the western edge of the city. There is a brief controlled-access section where the highway descends into the Mississippi River valley. Near the river, Locust Street (Iowa 946) connects US 20 with US 61 and US 151, which have entered the city from the south as an expressway and continue northward as a freeway. US 20 crosses from Iowa into Illinois via the Julien Dubuque Bridge.

## History

   Primitive conditions grew apace as we went west from Cedar Falls. From Alden to Webster City, twenty-five miles [40 km], with the exception of a stage station where horses were changed, there was nothing but the virgin prairie. Not a bush nor a running brook broke the monotony. From Webster City to Fort Dodge, twenty miles [32 km], there was no house but that of the enterprising muskrat. [...] Here was a route from Cedar Falls to Sioux City, two hundred miles [320 km] long in a straight line, that typified the highest stage of development west of the railroads. Yet it was wilder than I know how to tell, and north of these wild conditions were wilder still, and wilder grew the farther we went.
Anson Bicknell in 1862
US 20 was designated in Iowa on October 16, 1926. The designation created a single route number for drivers to follow across the state from Sioux City to Dubuque; previously, three route numbers were used.
It is possible to drive most of US 20's former two-lane alignment from Early to Dubuque. Most of this routing (with the exception of Iowa 57 from US 65 to Cedar Falls) is now under city and county control, but most of the guide signs remain from when US 20 followed this route. From Moorland, the highway's former alignment is US 20 Bus. through Fort Dodge. At CR P59, it continues on CR D20. The road changes designations several times between this point and Iowa Falls, but its route is very clear. It follows US 65 north out of Iowa Falls to the junction of Iowa 57, then follows Iowa 57 to Cedar Falls. At Cedar Falls, the former alignment continues on US 218 to Broadway Street; through Waterloo, it follows Broadway to Franklin Street to Dubuque Road. Beyond Waterloo, the designation of the road again changes several times, but the route to follow remains clear. Between Dyersville and Farley, US 20 follows its historic alignment. At Farley, the former alignment follows Old Highway Road into Dubuque.

### Expansion project

The first segment of US 20 in Iowa to become four lanes was a short expressway segment east of Moville, which opened in 1958. Another short expressway segment in the Dubuque area opened in 1959. The rest of the expressway from Sioux City to Moville opened in 1964. By 1979, the Sioux City bypass was complete, as well as the section from Iowa 17 to I-35, and the section from Independence to Delaware. By the end of the 1980s, the four-lane portions of US 20 ran from Coalville (near Fort Dodge) to I-35 and from Waterloo to Dubuque.
During the 1990s, little work was done to the route. It was extended westward to US 169 in 1991 and eastward to US 65 the same year, though, initially, the section from I-35 to US 65 was only two lanes. The new, semi-controlled section in Dubuque opened in 1996. Work began to accelerate in 2000, with the section between I-35 and US 65 becoming four lanes that year. The segment from Iowa 14 to Cedar Falls also opened in 2000. By 2003, the highway was complete from Fort Dodge to Dubuque.
Paving work between Iowa 4 and Moorland was completed in 2010 and the stretch was opened in December 2010. In November 2012, the four-lane highway opened between Iowa 4 near Rockwell City and US 71 at Early.
As of January 2014, around 40 miles (64 km) of US 20 remained two lane, between Early and Moville. Local leaders were lobbying for the remaining estimated cost of $375 million (equivalent to $475 million in 2023) to complete the project.
In November 2015, it was announced that the 40 miles (64 km) of US 20 between Early and Moville would be widened to four lanes at an estimated cost of $240 million (equivalent to $302 million in 2023). The funding came from the state's gas tax increase. The final segment was completed in October 2018.

## Exit list

| County | Location | mi | km | Exit | Destinations | Notes |
| Missouri River | Missouri River | 0.000 | 0.000 | | I-129 west / US 20 west / US 75 south – South Sioux City | Continuation into Nebraska |
| Sergeant Floyd Memorial Bridge; Nebraska–Iowa state line ||
| Woodbury | Sioux City | 0.286 | 0.460 | 1 | I-129 ends / I-29 / US 75 Bus. – Council Bluffs, Sioux Gateway Airport, Downtown Sioux City | Exit numbers follow I-129; signed as exits 1A (south) and 1B (north) northbound; no exit number southbound; northern end of I-129 overlap |
| Woodbury | Sioux City | 1.742 | 2.803 | 1 | Lakeport Street | Exit numbers follow US 20 |
| Woodbury | Sioux City | 2.867 | 4.614 | 2 | Sunnybrook Drive | |
| Woodbury | Sioux City | 3.409 | 5.486 | 3 | Morningside Avenue | Former Iowa 982 |
| Woodbury | Sioux City | 4.060– 4.857 | 6.534– 7.817 | 4 | US 20 Bus. west (IA 12 north / Gordon Drive) / US 75 north – Sioux City Business District, Le Mars | Eastern end of US 75 overlap; no exit number westbound |
| Woodbury | Banner–Arlington township line | 15.720 | 25.299 | | Historic US 20 west (Correctionville Road) | Former US 20 |
| Woodbury | Moville | 17.209 | 27.695 | | Iowa 140 north (1st Street) – Kingsley | |
| Woodbury | Arlington Township | 20.011 | 32.205 | | Historic US 20 east / CR D22 | Former US 20 |
| Woodbury | Correctionville | 31.782 | 51.148 | | Iowa 31 south – Smithland | Western end of Iowa 31 overlap |
| Woodbury | Correctionville | 32.027 | 51.542 | | Iowa 31 north – Correctionville, Washta | Eastern end of Iowa 31 overlap |
| Woodbury–Ida county line | Rock–Douglas township line | 37.931 | 61.044 | | CR L43 – Cushing | Former Iowa 403 |
| Ida | Douglas–Battle township line | 39.427 | 63.452 | | Historic US 20 west / CR L51 | Former US 20 |
| Ida | Holstein | 44.511 | 71.634 | | US 59 north / Historic US 20 east – Holstein | Western end of US 59 overlap |
| Ida | Logan Township | 45.922 | 73.904 | | US 59 south – Ida Grove | Eastern end of US 59 overlap |
| Ida | Galva–Silver Creek township line | 51.044 | 82.147 | | CR M25 – Galva | Former Iowa 328 |
| Sac | Eureka–Eden township line | 57.573 | 92.655 | | Iowa 110 north / Historic US 20 west – Schaller, Storm Lake | |
| Sac | Cook–Eden township line | 59.835 | 96.295 | | Historic US 20 east / CR M43 | Former US 20 |
| Sac | Boyer Valley Township | 64.780 | 104.253 | 71 | US 71 north / Iowa 471 south – Storm Lake, Lake View | Western end of US 71 overlap |
| Sac | Cedar Township | 75.253 | 121.108 | 82 | US 71 south / CR N14 north – Sac City | Eastern end of US 71 overlap; former Iowa 196 |
| Calhoun | Twin Lakes Township | 89.869 | 144.630 | 96 | Iowa 4 – Rockwell City, Pocahontas | |
| Webster | Fulton Township | 109.494 | 176.214 | 116 | US 20 Bus. east / Historic US 20 east / CR D20 – Moorland, Fort Dodge | US 20 Business only signed eastbound |
| Webster | Elkhorn Township | 114.775 | 184.712 | 121 | US 169 – Fort Dodge, Humboldt | |
| Webster | Pleasant Valley Township | 117.928 | 189.787 | 124 | US 20 Bus. west / CR P59 – Fort Dodge, Coalville | US 20 Business only signed westbound |
| Hamilton | Freedom Township | 129.143 | 207.836 | 136 | Iowa 17 north / CR R21 – Eagle Grove, Stratford | Western end of Iowa 17 overlap |
| Hamilton | Webster City | 133.690 | 215.153 | 140 | Iowa 17 south – Webster City, Stanhope | Eastern end of Iowa 17 overlap |
| Hamilton | Independence Township | 138.666 | 223.161 | 145 | CR R38 – Kamrar | |
| Hamilton | Liberty Township | 142.664 | 229.595 | 149 | US 69 – Jewell, Belmond | |
| Hamilton | Rose Grove Township | 146.299 | 235.445 | 153 | I-35 – Des Moines, Mason City | Signed as exit 153A (south) and 153B (north) |
| Hamilton | Rose Grove Township | 148.753 | 239.395 | 155 | CR R77 – Williams | |
| Hardin | Buckeye Township | 155.669 | 250.525 | 162 | CR S27 – Alden, Buckeye | Former Iowa 359 |
| Hardin | Ellis Township | 162.039 | 260.776 | 168 | US 65 – Iowa Falls, Hubbard | Former US 20 |
| Hardin | Jackson Township | 168.635 | 271.392 | 175 | CR D35 – Eldora, Owasa, Steamboat Rock | |
| Hardin | Clay Township | 174.304 | 280.515 | 181 | CR S56 – Ackley, Eldora | |
| Grundy | Shiloh Township | 180.874 | 291.088 | 187 | CR T19 – Wellsburg | |
| Grundy | Colfax–Lincoln township line | 188.882 | 303.976 | 208 | Iowa 14 – Parkersburg, Grundy Center | Former US 20 |
| Grundy | Dike | 195.896 | 315.264 | 215 | CR T55 – Dike, New Hartford | |
| Grundy–Black Hawk county line | Grant–Black Hawk township line | 200.945 | 323.390 | 220 | CR T69 – Cedar Falls | |
| Black Hawk | Cedar Falls–Hudson city line | 204.452 | 329.034 | 224 | Iowa 58 south (Hudson Road) – Hudson, University of Northern Iowa, UNI-Dome | Western end of Iowa 58 overlap |
| Black Hawk | Cedar Falls–Hudson city line | 205.539 | 330.783 | 225 | Iowa 27 north (Avenue of the Saints) / Iowa 58 north – Cedar Falls, Airport | Eastern end of Iowa 58 overlap; western end of Iowa 27 overlap |
| Black Hawk | Waterloo | 207.596 | 334.093 | 227 | US 63 (Sergeant Road) – Hudson | |
| Black Hawk | Waterloo | 209.130 | 336.562 | 229 | Ansborough Avenue | |
| Black Hawk | Waterloo | 210.638 | 338.989 | 230 | Iowa 21 south (Hawkeye Road) – Dysart | |
| Black Hawk | Waterloo | 212.423– 212.834 | 341.862– 342.523 | 23271 | I-380 north / US 218 – Waterloo, La Porte City | Western end of I-380 overlap; exit numbers follow I-380 |
| Black Hawk | Evansdale | 213.229 | 343.159 | 70 | River Forest Road | |
| Black Hawk | Evansdale | 215.485 | 346.789 | 68 | Evansdale Drive – Elk Run Heights | |
| Black Hawk | Poyner Township | 217.400 | 349.871 | 66 | CR V49 – Raymond, Gilbertville | Former Iowa 297 |
| Black Hawk | Poyner Township | 218.077– 218.849 | 350.961– 352.203 | 65 | I-380 south / Iowa 27 south (Avenue of the Saints) | Eastern end of I-380 and Iowa 27 overlaps; exit numbers follow US 20 |
| Black Hawk | Fox Township | 220.349 | 354.617 | 240 | CR V51 – Dunkerton, La Porte City | |
| Buchanan | Westburg Township | 225.782 | 363.361 | 245 | CR V65 – Jesup | |
| Buchanan | Independence | 232.773 | 374.612 | 252 | Independence | Former Iowa 248 |
| Buchanan | Independence | 237.271 | 381.851 | 254 | Iowa 150 – Independence, Vinton | |
| Buchanan | Winthrop | 241.366 | 388.441 | 261 | CR W40 – Quasqueton, Winthrop | Former Iowa 282 |
| Buchanan | Middlefield Township | 246.806 | 397.196 | 266 | Iowa 187 north – Masonville, Lamont | |
| Delaware | Prairie–Milo township line | 255.303 | 410.870 | 275 | Iowa 13 – Manchester, Central City | |
| Delaware | Manchester | 257.248 | 414.001 | 277 | CR D5X – Manchester | |
| Delaware | Delaware | 262.311 | 422.149 | 282 | Iowa 38 – Delaware, Monticello | |
| Delaware | Oneida–Delhi township line | 266.027 | 428.129 | 285 | CR X35 – Earlville | |
| Delaware | Dyersville | 272.428 | 438.430 | 292 | CR X49 – Dyersville | |
| Dubuque | Dyersville | 274.126 | 441.163 | 294 | US 52 north / Iowa 136 – Dyersville, Cascade | Western end of US 52 overlap |
| Dubuque | Dodge Township | 276.030 | 444.227 | | Historic US 20 west (Olde Hawkeye Road) | Former US 20 |
| Dubuque | Dodge Township | 277.695 | 446.907 | | Historic US 20 east (Sullivan Road) | Former US 20 |
| Dubuque | Farley | 279.261 | 449.427 | | Historic US 20 (1st Avenue NW) | Former US 20 |
| Dubuque | Farley | 280.294 | 451.089 | 300 | CR Y13 – Farley | |
| Dubuque | Epworth | 284.104 | 457.221 | 304 | CR Y17 – Epworth | |
| Dubuque | Peosta | 288.278 | 463.938 | 308 | CR Y21 – Northeast Iowa Community College | |
| Dubuque | Vernon Township | 291.534 | 469.178 | 311 | Swiss Valley Road / North Cascade Road | |
| Dubuque | Dubuque | 294.312 | 473.649 | 314 | US 52 (Southwest Arterial) – Asbury, Bellevue | Eastern end of US 52 overlap |
| Dubuque | Dubuque | 295.448 | 475.477 | | Historic US 20 west (Old Highway Road) | Former US 20 |
| Dubuque | Dubuque | 295.897 | 476.200 | | Northwest Arterial | Former Iowa 32 |
| Dubuque | Dubuque | 296.260 | 476.784 | | Historic US 20 east (Crescent Ridge) | Former US 20 |
| Dubuque | Dubuque | 297.175 | 478.257 | | Historic US 20 (Cedar Cross Road / John F. Kennedy Road) | Former US 20 |
| Dubuque | Dubuque | 298.519– 298.644 | 480.420– 480.621 | — | Grandview Avenue / Fremont Avenue – College Grandview District | |
| Dubuque | Dubuque | 299.088 | 481.335 | — | Hill Street / Bryant Street | Right-in/right-out interchange |
| Dubuque | Dubuque | 299.776 | 482.443 | | Locust Street (Iowa 946) / Historic US 20 west to US 61 / US 151 | |
| Mississippi River | Mississippi River | 300.270 | 483.238 | | Julien Dubuque Bridge; Iowa–Illinois state line | Julien Dubuque Bridge; Iowa–Illinois state line |
| Mississippi River | Mississippi River | 300.270 | 483.238 | | US 20 east – Rockford | Continuation into Illinois |
| 1.000 mi = 1.609 km; 1.000 km = 0.621 mi Concurrency terminus Unopened |||||||

## Related route

Iowa Highway 946 (Iowa 946) is a short route that begins at a partial trumpet interchange along the US 61/US 151 expressway. Northbound traffic passes beneath the expressway and joins southbound traffic on Locust Street. In the half-mile (800 m) between US 61/US 151 and US 20, Iowa 946 passes a light industrial area containing a Hy-Vee grocery store.
Iowa 946 intersects US 20, known locally as Dodge Street, at a signal-controlled intersection. Immediately east of this intersection is the approach to the Julien Dubuque Bridge, which carries US 20 across the Mississippi River into East Dubuque, Illinois. Iowa 946 continues north on Locust Street for 1,000 feet (300 m) through another light industrial area. At the edge of downtown Dubuque, Iowa 946 turns east for 600 feet (180 m) where it meets US 61/US 151 just west of Dubuque's Ice Harbor. Iowa 946 was created along Locust Street upon the staggered completion of an expressway starting in 1991 which relocated US 52, US 61, and US 151 away from Locust Street and closer to the Mississippi River. The new expressway carried the three routes beneath the approach to the Julien Dubuque Bridge, making a direct intersection impossible. Since all four routes are U.S. Highways and come from all directions, it was imperative to keep the routes connected. With the completion of the Southwest Arterial around the southern edge of Dubuque, US 52 has been rerouted away from the downtown area.