
Drives Michigan Michigan's Lower Peninsula
M-22: Frankfort to Onekama
M 22, Scenic Highway · Elberta → Onekama
The drive
This is the southern end of M-22, driven from Elberta, across the bay from Frankfort, south through Arcadia to Onekama. M-22 follows the Lake Michigan shoreline, and in this direction the highway heads toward Manistee County and the town of Manistee.
Arcadia sits in Manistee County along the Lake Michigan shore, with Arcadia Lake joined to the big lake by an artificial channel. The highway runs about 10 miles from Elberta to Arcadia and about 10 more to Onekama. Onekama is on the northeast shore of Portage Lake, three miles from Lake Michigan, and M-22 runs through downtown.
It is 18.9 miles and takes about 25 minutes, with long climbs and dips rather than hard curves.
Along the way
- Elberta
- Onekama
Good to know
- M-22 runs through downtown Onekama.
- Arcadia is an unincorporated community along the Lake Michigan shore, about 10 miles from Elberta and about 10 from Onekama.
- For current closures and construction, use MiDrive.
Open all year, weather permitting. Roads close for snow, fire, storms and repairs: before you set off, check MDOT MiDrive.
Questions about this drive
How long does M-22 from Frankfort to Onekama take?
M-22 from Elberta, across the bay from Frankfort, to Onekama is 18.9 miles and takes about 25 minutes.
How long is all of M-22 in Michigan?
M-22 is 116.7 miles long, from US 31 near Manistee around the Leelanau Peninsula to Traverse City.
Where does the Frankfort to Onekama drive of M-22 start?
It starts at Elberta, across the bay from Frankfort, and runs south on M-22 through Arcadia to Onekama.
What you get in the app
Free on iPhone and Android. CarPlay and Android Auto come with Apex.
More drives near here
Distance, time, elevation, curves and intensity are from Carve's route. Checked 2026-10-28.



