# M-104 (Michigan highway)

M-104 is a state trunkline highway in the US state of Michigan in the Western Michigan region of the state. It runs from Ferrysburg to Nunica in Ottawa County, passing through Spring Lake. The highway serves as a connector between Interstate 96 (I-96) and US Highway 31 (US 31), helping connect Grand Haven with the Grand Rapids metro area. A related Connector 104 runs between the M-104 and US 31 in Ferrysburg. During the 1920s and 1930s, a different highway bore the M-104 designation. The current highway was previously a section of US 16 until 1940 when that designation was shifted to a road going from Nunica to Muskegon; the orphaned highway was redesignated M-104 at the same time. Since then, two routing changes have caused short segments to be transferred to local control and removed from the highway.

## Route description

The western terminus of M-104 is at US 31 in Ferrysburg at the north end of the drawbridge spanning the Grand River north of Grand Haven. The highway runs along Savidge Street and crosses a bridge over the channel that connect the river with Spring Lake. On the opposite shore, the trunkline continues along Savidge Street, running between the river to its south and the lake to its north. M-104 crosses the central business area of the village of Spring Lake. East of downtown, the highway transitions to follow Cleveland Street which continues due east to Nunica. The landscape becomes more rural east of Spring Lake where the highway crosses terrain with a mix of open fields and woods. There are various businesses and homes that line the roadway. The eastern terminus of M-104 is located at the exit 9 interchange along I-96 just west of Nunica.
Like other state highways in Michigan, M-104 is maintained by the Michigan Department of Transportation (MDOT). In 2011, the department's traffic surveys showed that on average, 20,663 vehicles used the highway daily in near the western terminus in Ferrysburg and 8,018 vehicles did so each day near the eastern terminus near Nunica, the highest and lowest counts along the highway, respectively. No section of M-104 is listed on the National Highway System, a network of roads important to the country's economy, defense, and mobility.

## History
### Previous designation

From 1927 until 1939, the first M-104 followed a gravel road from M-47 (now M-52) at Pittsburg, through Laingsburg, to DeWitt, and the current M-104 was originally part of US 16.

### Current designation

In 1940, a rerouting of US 16 eliminated M-126 between Nunica and Muskegon; the previous routing of US 16 between Nunica and Ferrysburg was redesignated M-104 at this time. This highway designation was truncated on November 25, 1961, after the I-96/US 16 freeway opened, and the section of M-104 between the freeway and the old US 16 routing was transferred to local control. Another short segment of the highway was bypassed when a new bridge was built between Spring Lake and Ferrysburg in 1965.

## Major intersections

The entire highway is in Ottawa County.
| Location | mi | km | Destinations | Notes |
| Ferrysburg | 0.000 | 0.000 | US 31 / LMCT – Grand Haven, Holland, Muskegon | Exit 104 on US 31; indirect access to northbound US 31 via Pine and Third streets |
| Crockery Township | 6.494 | 10.451 | M-231 (120th Avenue) | Provides westbound exit and eastbound entrance for I-96 |
| Crockery Township | 7.101 | 11.428 | I-96 east – Grand Rapids | Exit 9 on I-96; westbound entrance from and eastbound exit to I-96; roadway continues east as Cleveland Street |
| 1.000 mi = 1.609 km; 1.000 km = 0.621 mi Incomplete access |||||

## Related trunkline

Connector 104 is an unsigned trunkline in Ferrysburg that runs north along Pine Street and west along 3rd Street to connect exit 104B on US 31 to M-104. According to MDOT, 14,231 vehicles used the trunkline on average each day.