As US 31 curves around to the northeast and east in Charlevoix County, it follows a section of the Lake Michigan shoreline that is not considered to be part of any bay. The highway continues through Northern Michigan agricultural areas to the southeast of Charlevoix. Once it enters the city, the trunkline intersects the northern end of M-66 and follows a series of city streets to a drawbridge over the channel that connects Lake Charlevoix to Lake Michigan. South of the structure it is Bridge Street, and north of the bridge it is Michigan Avenue. The highway turns eastward to exit town on Petoskey Avenue and follow the Lake Michigan shoreline. Near the community of Bay Shore, US 31 crosses into Emmet County. The trunkline continues past the Bay Harbor development on Charlevoix Avenue into the city of Petoskey.