Muskegon Fence Quotes
Independent referral service. We are not a fence contractor. Requests go to one independent local installer. How we match

Fences in Spring Lake and Ferrysburg

Two Ottawa County communities with real, sourced fence rules, including a 4-foot, 75% see-through limit for waterfront lots in Spring Lake.

Spring Lake and Ferrysburg are on the Ottawa County side of the Grand River, just across the county line from Muskegon County. We include them because homeowners there often ask us for quotes. Coverage in Ottawa County depends on the installer we match you with, so say where you live in the form. Spring Lake village had 2,497 residents at the 2020 census and Ferrysburg 2,952, and they share a ZIP code, 49456, which also reaches parts of Norton Shores and Fruitport Township.

Village of Spring Lake

Section 390-11 of the village code, amended July 21, 2025, requires a certificate of zoning compliance from the Zoning Administrator for fences, walls and screens. The village's fence permit application lists a $50 fee and asks for a site plan showing buildings, lot lines, streets and the fence location.

WhereLimit
Single- and multi-family front yard4 ft, no more than 50% solid
Side and rear yards6 ft (posts may rise 6 in above)
Waterfront-abutting lots, front or required side yard4 ft and at least 75% see-through
Commercial and downtown districts4 ft ornamental, 50% solid; 6 ft solid possible next to residential

Fences can't go in a public right-of-way and must stay out of a 25-foot clear-vision triangle at corners. Electric charge, spikes and sharp points are banned. Typical materials such as wood, composite, aluminum, wrought iron, chain link and vinyl are allowed, though chain link isn't allowed in the commercial districts. Height is measured from grade, and artificially raising the land to gain height is prohibited. Pool fences must be 4 to 6 feet with self-latching gates.

City of Ferrysburg

Ferrysburg's building page says all construction in the city requires a permit, and Section 3.90 of the zoning ordinance, version in a PDF labeled June 26, 2023, says a fence requires a permit and fee. We didn't find the fence fee.

  • Front yard: 3 feet in residential districts, 4 feet commercial, 6 feet industrial.
  • Corner lots: up to 6 feet on or behind the front setback in the secondary front yard only. The Zoning Administrator decides which yard that is.
  • Side and rear: 6 feet.
  • Waterfront yard: front-yard limits apply, except a pool enclosure at 5 feet.
  • Setbacks and sightlines: at least 2 feet from a public right-of-way or easement, and nothing over 30 inches inside the corner triangle (25 feet, or 10 feet at alleys).
  • Placement: no fence on a shared line without written consent from the neighbor. Posts go on the interior and the finished side faces out.
  • Pool fences: 5 to 6 feet with a self-locking gate.

What isn't covered

We did not verify rules for Spring Lake Township, the area around the village, or for Grand Haven Township. For Grand Haven city, see our Grand Haven page. Ask your local zoning office which jurisdiction your address falls in.

Wood in a lakeshore setting

Waterfront rules in both communities lean toward open fences. A see-through style such as picket or wrought iron is easier to permit than a solid fence, and a wood fence near the water needs post depth and treatment worked out with the installer. See our wood fence guide. For pricing, HomeGuide's national figure is $20 to $50 per linear foot installed, and Fixr's is $15 to $35.

Across the line in Muskegon County, Fruitport Township and Norton Shores are the closest neighbors.

Sources, checked October 26, 2026: Village of Spring Lake Code, Sec. 390-11 (ecode360, amended July 21, 2025); Village of Spring Lake Fence Permit Application; City of Ferrysburg Zoning Ordinance, Sec. 3.90 (June 26, 2023 PDF); City of Ferrysburg Building and Planning page; HomeGuide wood fence cost guide; Fixr wood fence cost guide; Wikipedia, Spring Lake and Ferrysburg, Michigan (2020 census).

Get a fence quote

Free. One independent installer follows up, not a call list.