By situation

JobPermit, typically?
Replace existing railing, same location, no structural changeNo
New deck over 600 mm above grade (guard included)Yes — deck permit covers the guard
New guard where none existed, on an existing raised structureAsk your municipality — often yes if structural
Pool enclosure (new or modified)Yes — municipal pool enclosure bylaw/permit
Repairs to an existing compliant railingNo

Two caveats. First, "no permit" never means "no code" — replacement railings must meet current Ontario Building Code, which our railing code guide explains. Second, heritage districts (Unionville Main Street, Old Oakville, parts of central Toronto) can add review for street-visible changes regardless of permits.

Who to call, by municipality

Thornhill straddles Yonge Street: Vaughan handles the west side, Markham the east — detail on our Thornhill page.

How we handle permits in practice

Most of our work is replacement, which keeps permits out of the picture. When a job does touch permit territory — a new guard on a new structure, a pool enclosure, anything structural — we say so with the quote, not after. If your project is part of a larger deck build, the deck's permit covers the guard and we coordinate with your builder.

Local context lives on our city pages — Scarborough, Pickering, Ajax & Whitby, Markham, and the rest under service areas.

Permit practices vary and change — treat this as orientation, not a ruling. Your municipal building department has the final word.