The same fence can be legal on one side of a street and not on the other. This page puts the rules we've read for Muskegon County and the lakeshore side by side. It is a summary of posted rules, not a legal opinion, and each row links to the longer page. Where a cell says "confirm," we couldn't verify it.
Heights and permits by community
| Community | Front yard | Side and rear | Permit / fee |
|---|---|---|---|
| City of Muskegon | 3 ft solid, 4 ft open | 6 ft behind front building line | Development permit |
| Norton Shores | 4 ft, max 50% blocked | 6 ft | Zoning permit |
| North Muskegon | 2 ft solid, 4 ft open | 6 ft | $95 building permit plus zoning permit |
| Muskegon Heights | 4 ft | 6 ft | Development permit |
| Whitehall | 42 in | 8 ft | $50 site plan review |
| Roosevelt Park | No fence ahead of the building line | 6 ft (8 ft by non-residential) | Building permit, $35 on the form |
| Montague | 4 ft, max 50% solid | 6 ft | Permit, $50 on the form |
| Fruitport Township | 3 ft, or open type | 6 ft | Zoning permit; confirm the fee |
| Muskegon Township | 3 ft, 4 ft if open | 6 ft (rear) | Confirm |
| Egelston Township | 4 ft | 6 ft | Confirm |
| Dalton Township | Confirm | Confirm | Land use compliance; $0 for fences on the 2018 form |
| Spring Lake village | 4 ft, max 50% solid | 6 ft | $50 |
| Ferrysburg | 3 ft residential | 6 ft | Permit and fee; amount not found |
| Grand Haven | 4 ft, max 50% opaque | 6 ft | $50 |
What stands out
- Front yards vary the most. They run from nothing at all in Roosevelt Park to 4 feet in several places. Solid wood fences in front are limited to 2 feet in North Muskegon, 3 feet in the City of Muskegon, and 42 inches in Whitehall.
- Corner lots are treated differently. Ferrysburg allows 6 feet in the secondary front yard, and so does the City of Muskegon, while Muskegon Township counts every street side as a front yard.
- Back yards are mostly 6 feet. Whitehall's 8 feet is the exception we found, with Roosevelt Park allowing 8 feet next to non-residential districts.
- Waterfront rules are their own category. North Muskegon has a 30-foot setback from the high-water mark. Spring Lake limits waterfront lots to 4 feet and 75 percent see-through. Grand Haven bars rear-yard fences on waterfront lots unless the Planning Commission approves.
Permit fees against national figures
Where a form names a fence fee, we found $35 to $95. HomeGuide's national figure for a fence permit is $40 to $150, and Angi's is $20 to $60. The fee is separate from the installer's price, and a good quote says who pulls the permit.
How to use this
Your mailing address won't tell you your jurisdiction. The Twin Lake and Spring Lake ZIP codes each cover several. Check your township or city on your tax bill or the county's property map, then read the page for that community. Then ask the zoning office to confirm the current numbers. Posted ordinances can be older than the current code, and we note the date we saw on each page.
For prices, see our fence cost guide, the wood fence guide, and the fence FAQ. Ottawa County communities depend on the installer we match you with.
Sources, checked October 26, 2026: All entries on the community pages linked above, including the City of Muskegon fence page and brochure, Norton Shores Secs. 48-1324 and 48-1325 (Zoneomics copy), North Muskegon Sec. 10.02 (Zoneomics copy) and its 2024 fee schedule, Muskegon Heights Sec. 3.15 (Zoneomics copy), the City of Whitehall fence sheet, and the Wave 2 sources for the other communities; HomeGuide wood fence cost guide; Angi fence installation cost guide (Oct. 13, 2026).