Any deck attached to your house requires a permit — no exceptions, no thresholds. The same goes for any deck higher than 30 inches off the ground or larger than 200 square feet, even if it's freestanding. This is because attached decks create structural loads on your rim joist, and elevated decks pose fall hazards that the building code treats seriously.
The permit process for a deck typically involves three inspections: footing pre-pour (to verify depth below the local frost line), framing (checking post-to-beam connections, ledger flashing, and guard rails), and final. Most jurisdictions issue permits within 2–4 weeks of plan submission. Fees run $150–$500 depending on deck size and local valuation schedules.
The core code is IRC R507 (decks), with critical rules around ledger flashing, footing depth, stair geometry, and guardrail height. What trips up most homeowners is the ledger detail — the flashing where the deck band board bolts to the house rim joist. That joint fails more than any other part of a deck, and inspectors scrutinize it hard. The second pitfall is footing depth: frost-heave cycles vary wildly by region, and your footings must dig below your local frost line — which ranges from 12 inches in southern Florida to 48 inches in Minnesota.
Your local building department will tell you exactly what drawings they need and what frost depth applies to your address. A simple deck often requires just a site plan (showing property lines and deck footprint), a structural detail sheet (ledger, post-to-beam connections, stairs), and a section view showing height and footing depth. Expect to revise once.
Permit thresholds and exemptions
An attached deck always requires a permit. Attached means the deck is bolted or otherwise fastened to the house structure — even a 4-foot by 6-foot, 6-inch-high deck attached to an exterior door needs a permit. The connection itself is a structural modification that the building code regulates under IRC R507. You cannot exempt this one by size or height.
A deck over 30 inches above grade always requires a permit, regardless of whether it's attached or freestanding. The 30-inch threshold is the IRC's bright line between a low platform (which poses minimal fall hazard) and an elevated deck. Above 30 inches, you need a guardrail (IRC R312), which requires structural design and inspection. Measure height at the lowest point where someone might stand — usually the stairs.
A deck over 200 square feet (attached or freestanding) requires a permit. This size threshold triggers structural review because a large deck can exert significant load on the soil and the house's rim joist. A 12 by 16 deck is 192 square feet — exempt. A 12 by 17 deck is 204 square feet — now you need a permit.
Freestanding ground-level decks under 200 square feet AND under 30 inches off grade are exempt in most jurisdictions under IRC R105.2. This covers small patios, bench decks, and landing platforms at or near grade. But the moment you attach it to the house, boost it above 30 inches, or exceed 200 square feet, the exemption vanishes. Also, any deck with stairs, ramps, or an electrical circuit (outdoor outlet, lights) is not exempt — it needs a permit even if it's small and low.
If your deck will include a hot tub, pool, spa, or other water feature, expect a separate permit and stricter code review. Hot tub decks must handle concentrated loads and require reinforced framing and footings. The same applies if you're running new electrical (outdoor outlets, lights, a circuit) or plumbing (drain, water line) to the deck — these are subpermits, and the electrical work must be done by a licensed electrician in most states.
The IRC assumes a basic wood deck with a typical footing system. If you're planning composite decking, a metal frame, or a roof structure over the deck, the design and inspection approach shifts. Run these by the building department early. The same goes for decks in HOAs or on corner lots with sight-triangle restrictions — those require separate variance approvals that can add weeks to your timeline.
How deck permit rules vary by state and region
Frost depth is the biggest regional variable. The IRC default is 36 inches below grade, but most cold-climate jurisdictions require deeper. Minnesota, Wisconsin, and northern Michigan enforce 48-inch footings. New England often specifies 42 inches. In the South, frost depth may be 12–18 inches or even zero in parts of Florida and coastal Georgia. Your local frost line is not a suggestion — footings shallower than code will heave up in winter, cracking your deck and potentially the house connection. Always ask the building department for the exact frost depth at your address, or check the local building code before you start digging.
Hurricane-prone coastal states add uplift connectors and lateral-load bracing. Florida, Louisiana, and coastal Carolina building codes (based on the IBC with state amendments) require deck ledgers to be bolted with hurricane ties or Simpson H-clips rated for uplift. Some jurisdictions also mandate additional diagonal bracing or post straps to resist wind loads. If your deck is on the coast, budget an extra week for plan review and slightly higher material cost for connectors; the inspection itself is routine once the details are correct.
A few jurisdictions have adopted stricter guardrail heights. Most of the country follows the IRC minimum of 36 inches for residential decks, measured from the walking surface to the top of the guard. But some local codes, particularly in California and parts of the Northeast, require 42 inches. Check your local ordinance before you design the rail. Similarly, a handful of jurisdictions require 4-inch-sphere baluster spacing (stricter than the IRC's 6-inch sphere), especially for decks where children are likely to play.
HOAs often layer additional rules on top of code. Many require deck-approval letters, color/material restrictions, or setback rules tighter than zoning allows. Get HOA approval in writing before you submit to the building department — a bounced HOA approval mid-construction is a common and frustrating delay. In some states, HOA approval is not legally required for a permitted structure, but practically speaking, the HOA can force you to remove it later, which is worse. Budget 2–3 weeks for HOA review if you're in a deed-restricted community.
Common scenarios
A 12 by 16 wood deck, 18 inches above grade, with stairs, attached to the house.
You need a permit. The deck is attached to the house — that alone is the trigger. Additionally, the deck is 192 square feet, so it squeaks just under the 200-square-foot threshold, but the stairs and attachment override that. Expect plan review to focus on the ledger flashing (IRC R507.9), footing depth (must be below your local frost line, likely 36–48 inches depending on region), stair stringers and landing (IRC R311.7 requires 7–11 inch rise, 10–11 inch run, and landings for stairs over 30 inches), and guardrail height and baluster spacing (36 inches from deck surface, 4-inch sphere or 6-inch sphere depending on jurisdiction). File with the local building department, expect 2–3 weeks for review, and schedule three inspections: footing pre-pour, framing after ledger and posts are installed, and final. Cost is typically $200–$350.
A small 8 by 6 freestanding platform, 12 inches off the ground, no stairs, no electrical.
No permit needed. The platform is 48 square feet, well under 200 square feet. It's 12 inches above grade, under the 30-inch threshold. It's freestanding, not attached. No stairs, no electrical. This meets the exemption under IRC R105.2 in the vast majority of jurisdictions. You can build it without a permit. However, if you later attach it to the house (bolting the band board to the rim joist), add stairs, or raise it above 30 inches, you then need a retroactive permit for the modifications — which is messier and costlier than getting one upfront. If your zoning has setback or HOA rules, those still apply regardless of permit status.
A 14 by 20 composite deck, 28 inches high, attached to the house, in Minnesota, with a hot tub on one corner.
You need a structural design and a permit — probably two permits (one for the deck, one for the hot tub load). The deck is 280 square feet and attached, so it's past the threshold. At 28 inches high, it's just under 30 inches, but the hot tub load changes the analysis. Hot tubs can weigh 2,000–3,000 pounds when filled, and a concentrated load that size demands reinforced framing and footing design. Minnesota's 48-inch frost depth will apply — all footings must bottom out at 48 inches. The building department will want a design drawing showing the hot tub location, joist reinforcement under the tub (doubled or sister joists), and the ledger flashing detail to IRC R507.9 standard. Budget 3–4 weeks for plan review (structural complexity adds time), and plan on inspections for footing, framing, and hot tub installation. Cost: $400–$650 for the deck permit, plus $100–$200 for hot tub subpermit. Do not skip the structural engineer — the footing and joist load path matter, and an undersized system will settle or fail.
A 10 by 12 deck, 4 feet high, attached to a beach house in Florida, with a code-required hurricane tie system.
You need a permit, and the design must include uplift connectors and lateral bracing per Florida's enhanced building code. The deck is 120 square feet but attached, so a permit is required regardless of size. At 4 feet (48 inches) above grade, it's well over the 30-inch guardrail trigger. The real complexity is the hurricane-force lateral loads and uplift that coastal Florida code imposes. The ledger must use bolts with Simpson H-clips or an equivalent lateral-load device (not just nails or standard bolts). Post bases and connections must be rated for uplift. The plan review will take 3–4 weeks because the structural engineer must show the lateral and uplift load path and provide product specifications for connectors. The frost depth in Florida is minimal (12–18 inches or less), so footings are shallower, but the ground may be sandy or soft, requiring larger footings or pilings. Expect to work with a structural engineer — it's not optional in this case. Permit cost: $250–$400. Material cost for hurricane connectors is modest, but the design time is significant.
A 10 by 10 ground-level deck with railing, not attached, in a suburban neighborhood.
It depends on the railing. A 10 by 10 ground-level deck is 100 square feet, freestanding, and at or very near grade. Without a railing, it's exempt under IRC R105.2. But if you're adding a railing — either for aesthetics or because it backs onto a pool or traffic area — you're upgrading the structure. A railing implies a guardrail, which requires structural design and inspection. Most jurisdictions treat a railed ground-level platform as a permitted structure because the railing creates a fall hazard that triggers guardrail code (IRC R312). The railing must be 36 inches tall, resistant to a 200-pound horizontal force, and have baluster spacing of 4 or 6 inches (depending on local code). Call the building department and describe the railing design — they'll tell you if a permit is needed. If they say yes, budget $150–$250 and one inspection (framing). If they say no, you can build it, but keep documentation in case the issue comes up during a future sale or renovation.
What to file and who can pull the permit
| Document | What it is | Where to get it |
|---|---|---|
| Site plan | A top-down view of your property showing the house footprint, deck footprint and location (distance from property lines), trees, existing utilities, and any HOA/setback lines. Scale 1/8 inch = 1 foot or 1/4 inch = 1 foot. Include north arrow and lot address. | You can sketch this yourself and submit a clean version, or pay a drafter to produce it from your survey and measurements. If your property is in an HOA, review the site plan against the restrictive covenants and setback rules before submitting. Most building departments provide a site-plan template on their website. |
| Structural details | A detail sheet (usually 1–2 pages) showing ledger connection (bolts, flashing, spacing), post-to-beam connections (size of fasteners and type — nails, bolts, joist hangers), stair stringers and landing dimensions, and footing details (depth below frost line, footing diameter, post size). Include a section view showing deck height, stair rise and run, and guardrail height. Label all lumber sizes (e.g., 2x10 joists, 4x4 posts, 2x6 rim board). If composite decking, specify the product and fastening system per manufacturer specs. | A drafter or designer who specializes in residential decks can produce this from your sketch and local code requirements. Many building departments have a standard form or checklist showing what details they expect. Use it as a template. If your deck is simple (small, low, no hot tub, standard footings), a drafter can complete this for $150–$400. If it's complex (high, large, near a pool, coastal zone), hire a structural engineer ($500–$1,500). |
| Ledger flashing detail | A critical cross-section drawing showing how the deck band board connects to the house rim joist, including the flashing material (aluminum Z-flashing, self-adhered membrane, or step flashing per IRC R507.9), bolt spacing and size, and caulking. This is the single most-inspected detail on a deck because water intrusion at the ledger causes rot and structural failure. Do not skimp on this drawing. | Your drafter or the building department's standard detail sheets. IRC R507.9 provides the code reference. Many jurisdictions publish a standard ledger flashing detail that locals must follow — check the building department website or ask during permit intake. |
| Footing calculations or engineer's letter | If your local jurisdiction requires soil-bearing capacity analysis or footing sizing calculations, you'll need this. For standard ground-bearing footings on typical suburban soil, most building departments accept a simple detail showing footing depth (below local frost line), footing width (12 inches is typical for a 4x4 post), and spacing. For sandy soil, soft soil, or a hot tub load, hire a structural engineer to calculate footing size and bearing capacity. | A structural engineer or online footing calculators (search 'deck footing calculator' — these estimate based on frost depth and post load). If the building department bounces your plan for footing details, they'll tell you what calculation format they want. |
| Material and fastening schedule | A list of all framing lumber (pressure-treated for ground-contact posts and ledgers), fastener types and sizes (galvanized bolts, joist-hanger nail schedules, etc.), and decking product specifications. For pressure-treated lumber, specify the grade and treatment type (e.g., ACQ for corrosion resistance in coastal areas). For fasteners, note that galvanized or stainless steel is required for corrosion resistance — hot-dipped galvanized for coastal zones. | You compile this from your framing plan and the building code. Refer to the fastener schedule in IRC R507 and the deck product specifications. Include Simpson Strong-Tie or equivalent product numbers for joist hangers and post bases so the inspector can verify them on site. |
Who can pull: The homeowner, a licensed contractor, or a designer/drafter can pull the permit. Most jurisdictions allow homeowners to file their own permits without a license, but some require a licensed contractor to sign and seal plans (especially in California, Texas, and a few other states). Check your local jurisdiction's rules. If you hire a contractor to build the deck, they'll typically pull the permit as part of their service; if you're doing the work yourself, you'll file in person or online with the building department. Plan-check drawings do not need to be sealed by an engineer unless the building code triggers a structural review (e.g., a hot tub, a large deck over soft soil, or a coastal zone). A simple 12 by 16 deck in a standard residential zone can usually be approved with a contractor-signed (or homeowner-prepared) site plan and detail sheet.
Why deck permits get bounced — and how to fix them
- Ledger flashing detail missing or non-compliant with IRC R507.9.
The ledger is the most-inspected detail because water infiltration causes rot. Your plan must show a cross-section of the ledger-to-house connection including the flashing material (aluminum Z-flashing or self-adhered membrane), bolt spacing and size (typically 1/2-inch bolts 16 inches on center), and sealant. The flashing must extend above the rim joist and down behind the rim — not just wrapped around the front. If your plan doesn't have this detail, add it before you resubmit. Reference IRC R507.9 in the note. Do not use nails alone; code requires bolts. - Footing depth shown above local frost line.
This is a structural failure waiting to happen. Frost heave will lift footings shallower than code, cracking the deck and the house. The building department will reject any footing detail that doesn't bottom out below the published frost line for your jurisdiction. Call or visit the building department and ask for the frost depth at your site (it's usually published in the local building code or on the department's website). Then revise your detail to show footings at least 6 inches below that depth. If the frost line is 48 inches, show footings at 54 inches. Resubmit with the corrected detail and a note citing the local frost depth. - Stair stringer or landing dimensions off code (rise, run, landing size, or width).
IRC R311.7 specifies stair geometry: rise per step 7–11 inches, run per step 10–11 inches, maximum variance between steps 3/8 inch, and landing depth minimum 36 inches. A common mistake is a run that's too short (e.g., 9 inches) or a landing that's too small. Recalculate your stairs using the IRC dimensions, and show each step dimension and landing size on the plan. If your deck height doesn't divide evenly into 7–11 inch rises, adjust the deck height slightly or add an extra step. Resubmit with labeled stair dimensions and the landing size noted. - Guardrail height under 36 inches or baluster spacing non-compliant.
The IRC requires a 36-inch guardrail measured from the deck walking surface. Measure to the top rail, not the bottom. Balusters must not allow a 6-inch sphere to pass through (IRC R312.2), or a 4-inch sphere in some jurisdictions. If your plan shows a railing under 36 inches, it will be rejected. Raise it to 36 inches minimum (or 42 inches if your local code requires it). Show the measurement on the plan. For baluster spacing, measure the largest gap and ensure it's no more than the allowed sphere diameter. If you're using standard pickets or balusters, check the manufacturer's spacing on the data sheet and note it on the plan. - Beam-to-post or post-to-footing connection detail missing (fastener type and size not specified).
The plan must show how the post sits on the footing (post base, bolted or nailed), how the beam bolts or hangs from the posts (bolts, joist hangers, or post caps), and how the rim joist fastens to the beam (nails, bolts, or hurricane ties). Don't just show a line — label each connection with the fastener size and type. Example: '1/2 in. diameter bolt' or '16d galvanized joist-hanger nails' or 'Simpson LUS210 post base, 1/2 in. bolts.' If you're uncertain, reference a standard deck-connection detail from Simpson Strong-Tie or another manufacturer and cite it on the plan. Resubmit with every connection labeled and fastener sizes specified. - No site plan or site plan missing property-line setbacks and HOA restrictions.
The building department needs to verify that the deck doesn't violate setback rules or HOA covenants. Your site plan must show the deck location relative to property lines, the house, existing structures, and utilities. If the deck is close to a property line, ensure it complies with the local setback (typically 5–10 feet from a side property line, 20–25 feet from the rear). If you're in an HOA, overlay the deed restrictions on the site plan and confirm the deck location. If the plan is missing or unclear, redraw the site plan to scale with property lines and setback lines clearly marked, and submit a copy of the HOA approval (if required by your jurisdiction). - Lumber grades and pressure-treatment type not specified.
Pressure-treated lumber must be used for posts, ledgers, and any framing in contact with soil or concrete. The plan must specify the lumber grade and treatment type (e.g., 'Pressure-treated #2 Southern Pine, ACQ' or 'PT #2 Hem-Fir, CCA'). Decking and joists above grade can be untreated if using cedar or composite; specify the product. If the plan is vague ('pressure-treated lumber' without grade or treatment), add a materials schedule and resubmit. Include specific product names or mill certifications if the building department asks. - Composite or non-standard decking product specified without fastening/engineering detail.
If you're using composite decking, PVC, or a non-standard framing system, the plan must show the manufacturer's fastening schedule and load ratings. Some composite decks require wider spacing or thicker joists to avoid deflection and sagging. Download the product's technical data sheet from the manufacturer, include the fastening and joist-spacing schedule on your plan, and cite the product by name and mill number. If it's a completely non-standard system (e.g., modular deck kit, metal frame), the building department may ask for an engineer's certification of the load ratings. Don't guess — get the manufacturer's specs and reference them.
Deck permit costs and timeline
Permit fees are usually based on a percentage of the estimated project cost (called the 'valuation'). A 12 by 16 pressure-treated wood deck costs roughly $3,000–$5,000 to build, so the permit fee is typically $150–$350 (2–5% of valuation, depending on the jurisdiction). Some jurisdictions charge a flat fee for small decks ($75–$150) and a sliding scale for larger ones. Add $50–$100 if you need a separate plan-review fee or zoning verification.
Plan review typically takes 2–4 weeks. If the building department finds issues (missing ledger detail, incorrect footing depth, guard-rail height), you'll revise and resubmit, adding another 1–2 weeks. Some jurisdictions offer expedited review (5 business days) for an extra $50–$150.
Inspection fees are usually bundled into the permit cost, but a few jurisdictions charge per inspection ($50–$100 per inspection). You'll have three inspections: footing pre-pour (before concrete is poured), framing (after posts, beams, and ledger are in place), and final (after decking and railing are done). Budget 1–2 weeks of construction time between each inspection. If the inspector finds issues, you fix them and call back for a re-inspection (usually no extra fee, but can delay your timeline by days).
| Line item | Amount | Notes |
|---|---|---|
| Permit fee (small to mid-size deck) | $150–$350 | Typically 2–5% of estimated project valuation. A 12x16 deck valued at $4,000 = $150–$200 fee. Some jurisdictions cap fees at $200 for simple residential decks. |
| Permit fee (large deck or complex design) | $350–$500+ | Decks over 300 sq ft, decks with electrical or plumbing, hot tubs, or coastal hurricane design may trigger higher fees due to longer plan review. |
| Plan-review or zoning-verification fee | $50–$100 | Some jurisdictions add this separately. Verify with the building department. |
| Expedited review (optional) | $50–$150 extra | Reduces plan-review time to 5 business days. Not all jurisdictions offer this. |
| Inspection fees (if separate from permit) | $50–$100 per inspection | Most jurisdictions bundle three inspections into the permit fee. A few charge per inspection. Clarify with the building department. |
| Design or structural engineer (if required) | $300–$1,500 | Required for complex decks, hot tubs, coastal zones, or soft soil. A simple deck can be designed by a drafter for $150–$400. |
| Total permit cost (simple 12x16 deck) | $150–$350 | Plan, filing, three inspections, no engineer. Add $150–$400 if you hire a drafter to produce the plans. |
| Total permit cost (large, complex, or coastal deck) | $400–$800+ | Includes higher permit fee, plan-review fee, and structural engineer ($500–$1,500). Coastal hurricane-design decks cost more due to complexity. |
Common questions
Can I build a deck without a permit if I keep it under 200 square feet?
No, not if it's attached to your house or over 30 inches high. Attachment is the main trigger — any deck bolted to the house rim joist requires a permit regardless of size. Freestanding ground-level decks under 200 square feet and under 30 inches are exempt in most jurisdictions, but the moment you attach it, raise it, or exceed 200 square feet, a permit is required. Additionally, if the deck has stairs, ramps, or electrical, it needs a permit even if small and low. Skipping the permit is risky: your homeowner's insurance may deny claims related to an unpermitted deck, you could face code-enforcement fines ($100–$1,000+ depending on the jurisdiction), and you may be forced to remove the deck later. A simple permit takes 2–4 weeks and costs $150–$300 — it's worth doing right.
What is the frost line, and why does it matter for deck footings?
The frost line is the depth to which the ground freezes in winter in your region. Water in soil expands when it freezes, a process called frost heave. If a deck footing sits above the frost line, the frozen ground pushes it up, cracking the deck structure and potentially damaging the house attachment. Building codes require deck footings to be dug below the frost line to avoid this damage. The frost line varies: Florida has little to no frost depth (12–18 inches or less), while Minnesota and Wisconsin require 48 inches. Northern New England typically specifies 42 inches. The building department publishes the frost depth for your jurisdiction — ask them or check the local building code before you dig. Footings shallower than code will heave and fail; footings deeper than code are fine but cost more and take longer to install. Get the frost depth right on your first submission, or the building department will reject the plan.
Do I need a separate electrical permit if I'm running outdoor outlets or lights to the deck?
Yes. Any outdoor electrical circuit (outlets, lights, or switches) requires an electrical subpermit, and in most states, the work must be done by a licensed electrician. The electrical permit is separate from the deck permit and typically costs $50–$150. The electrician will run conduit and wire per NEC Article 682 (outdoor installations) and ensure all receptacles are GFCI-protected. You cannot file the electrical permit yourself in most jurisdictions — the electrician's license covers it. Factor this into your timeline: the electrical permit and inspection usually happen after framing but before final inspection. If you're planning outdoor electrical, mention it to the building department during deck permit intake so they can coordinate inspections.
What is a ledger flashing, and why do inspectors care so much about it?
The ledger is the board that bolts the deck to the house rim joist. The ledger flashing is the metal or membrane barrier that prevents water from running between the deck and the house, which would cause rot and structural failure. A flashing-related leak is the single most common failure on residential decks — it can rot the rim joist and house framing in a few years if not done correctly. IRC R507.9 specifies that flashing must be aluminum, galvanized steel, or self-adhered membrane, and it must extend above the rim joist and behind (under) it to direct water out. Bolts must be spaced 16 inches on center and sealed with caulk. Inspectors scrutinize this detail because they've seen too many decks fail due to a missing flashing. Your plan must show a clear cross-section of the ledger-to-house connection with flashing, bolt size and spacing, and sealant noted. Do not skip this detail, and do not install the deck without flashing.
Can an HOA prevent me from building a permitted deck?
Yes and no. A building permit certifies that your deck complies with building code and zoning law. An HOA approval (if required by your deed) certifies that the deck complies with the restrictive covenants and architectural standards in your community. These are separate legal reviews. A few jurisdictions prioritize code over HOA rules, but in most cases, you need both approvals. If your HOA says no, you cannot build legally, even with a permit. If you build over the HOA's objection, they can force you to remove it. Always get HOA approval in writing before you submit to the building department. Many HOAs approve decks quickly (1–2 weeks), but some require architect or engineer review, which adds time. Budget 2–3 weeks for HOA review if you're in a deed-restricted community. Also, some HOAs require specific colors, materials, or railings — factor those into your design.
How long does it take to get a deck permit from start to final inspection?
Plan on 6–12 weeks total, assuming no major revisions. Breakdown: plan preparation 1–2 weeks, permit intake and initial review 1 week, plan review and revisions 2–4 weeks, footing inspection (construction) 1–2 weeks, framing inspection 2–4 weeks, decking and final inspection 2–4 weeks. If the building department rejects the plan for missing details (ledger, footing depth), you lose 1–2 weeks resubmitting. If you're in an HOA or coastal zone requiring additional approvals, add 2–4 weeks. Weather also matters — if you need a footing inspection during frost season (October–April in the North), inspectors may be slow to visit sites, adding delays. The fastest permits are over-the-counter approvals (same-day, for simple exempt decks or decks under the local threshold), which some jurisdictions allow — ask the building department if your project qualifies.
What happens if I build a deck without a permit?
You run legal and financial risks. Code enforcement can order you to remove the deck, costing thousands of dollars. Your homeowner's insurance may deny claims (e.g., injury on the deck) because it's unpermitted. You'll face fines ($100–$1,000+ depending on the jurisdiction) and could owe back permit fees. When you sell the house, the buyer's inspector or lender will flag the unpermitted deck, delaying or killing the sale. If the deck fails structurally (ledger rots, footing heaves, railing breaks), you're liable for injuries and have no permit records to show inspectors signed off. The permit process costs $150–$500 and takes 6–12 weeks — it's cheap insurance against a much costlier problem later. Get the permit.
Do I need a permit for a hot tub on my deck?
Yes, you need a separate permit for the hot tub installation, and the deck itself will require structural design to handle the load. A hot tub can weigh 2,000–3,000 pounds when filled, a concentrated load that typical residential joists cannot support without reinforcement. The building department will require a structural detail showing the joist reinforcement (doubled or sister joists under the tub), footing size and depth, and ledger strength. The hot tub permit includes plumbing and electrical subpermits (drain, water line, 240V circuit). Budget an extra 2–4 weeks for structural design and plan review, and a higher permit cost ($250–$400 for deck plus $100–$200 for hot tub). Do not skip the structural design — an undersized deck will sag, crack, or fail.
Can I file the permit myself, or do I need to hire a contractor?
You can file the permit yourself as the homeowner in most jurisdictions. However, you must provide (or hire a drafter to prepare) the site plan and structural details. A licensed contractor is not required to file a residential deck permit in most states, but some jurisdictions require a licensed contractor's signature on the plans or a contractor's license to pull the permit. Check your local jurisdiction's rules on the building department website or call them. If you're comfortable with basic drawing and measurement, you can sketch the site plan and details yourself and submit them. If not, hire a drafter or design software (SketchUp is free and commonly used) to produce the plans. A simple deck plan costs $150–$400 from a drafter — often less than the permit itself. If you hire a contractor to build the deck, they'll usually pull the permit and provide the plans as part of their service.
What is a guardrail, and when is it required?
A guardrail is a protective railing around a deck or elevated platform designed to prevent falls. IRC R312 requires a guardrail on any deck over 30 inches above the ground. The railing must be 36 inches tall (measured from the walking surface to the top of the rail), resist a 200-pound horizontal force applied to the top, and have baluster spacing of no more than 6 inches (or 4 inches in some jurisdictions) to prevent a child's head from passing through. If your deck is under 30 inches, you don't legally need a guardrail, but many homeowners add one for safety. A guardrail is a structural element and must be detailed on the plan showing rail height, baluster spacing, post connections, and fastener sizes. If your plan doesn't show the guardrail, the building department will ask for it during review.
Cities we cover for deck permits
City-specific deck permit guides with local fees, code editions, and building department contact info. Click your city for the local rules.
Alabama
- Alabaster
- Albertville
- Anniston
- Athens
- Auburn
- Bessemer
- Birmingham
- Cullman
- Daphne
- Decatur
- Dothan
- Enterprise
- Fairhope
- Florence
- Foley
- Gadsden
- Helena
- Homewood
- Hoover
- Huntsville
- Madison
- Mobile
- Montgomery
- Mountain Brook
- Northport
- Opelika
- Oxford
- Pelham
- Phenix City
- Prattville
- Trussville
- Tuscaloosa
- Vestavia Hills
Alaska
Arizona
- Apache Junction
- Avondale
- Buckeye
- Bullhead City
- Casa Grande
- Chandler
- El Mirage
- Flagstaff
- Florence
- Fountain Hills
- Gilbert
- Glendale
- Goodyear
- Kingman
- Lake Havasu City
- Marana
- Maricopa
- Mesa
- Oro Valley
- Peoria
- Phoenix
- Prescott
- Prescott Valley
- Queen Creek
- Sahuarita
- San Luis
- Scottsdale
- Sierra Vista
- Surprise
- Tempe
- Tucson
- Yuma
Arkansas
California
- Adelanto
- Agoura Hills
- Alameda
- Albany
- Alhambra
- Aliso Viejo
- American Canyon
- Anaheim
- Antioch
- Apple Valley
- Arcadia
- Atascadero
- Atwater
- Azusa
- Bakersfield
- Baldwin Park
- Banning
- Barstow
- Beaumont
- Bell
- Bell Gardens
- Bellflower
- Belmont
- Benicia
- Berkeley
- Beverly Hills
- Brawley
- Brea
- Brentwood
- Buena Park
- Burbank
- Burlingame
- Calabasas
- Calexico
- Camarillo
- Campbell
- Carlsbad
- Carson
- Cathedral City
- Ceres
- Cerritos
- Chico
- Chino
- Chino Hills
- Chula Vista
- Citrus Heights
- Claremont
- Clovis
- Coachella
- Colton
- Compton
- Concord
- Corcoran
- Corona
- Coronado
- Costa Mesa
- Covina
- Cudahy
- Culver City
- Cupertino
- Cypress
- Daly City
- Dana Point
- Danville
- Davis
- Delano
- Desert Hot Springs
- Diamond Bar
- Dinuba
- Dixon
- Downey
- Duarte
- Dublin
- East Palo Alto
- Eastvale
- El Cajon
- El Centro
- El Cerrito
- El Monte
- El Paso De Robles Paso Robles
- Elk Grove
- Encinitas
- Escondido
- Eureka
- Fairfield
- Folsom
- Fontana
- Foster City
- Fountain Valley
- Fremont
- Fresno
- Fullerton
- Galt
- Garden Grove
- Gardena
- Gilroy
- Glendale
- Glendora
- Goleta
- Greenfield
- Hanford
- Hawthorne
- Hayward
- Hemet
- Hercules
- Hesperia
- Highland
- Hollister
- Huntington Beach
- Huntington Park
- Imperial Beach
- Imperial
- Indio
- Inglewood
- Irvine
- Jurupa Valley
- La Ca Ada Flintridge
- La Habra
- La Mesa
- La Mirada
- La Puente
- La Quinta
- La Verne
- Lafayette
- Laguna Beach
- Laguna Hills
- Laguna Niguel
- Lake Elsinore
- Lake Forest
- Lakewood
- Lancaster
- Lathrop
- Lawndale
- Lemon Grove
- Lemoore
- Lincoln
- Livermore
- Lodi
- Loma Linda
- Lomita
- Lompoc
- Long Beach
- Los Altos
- Los Angeles
- Los Banos
- Los Gatos
- Lynwood
- Madera
- Manhattan Beach
- Manteca
- Marina
- Martinez
- Maywood
- Menifee
- Menlo Park
- Merced
- Millbrae
- Milpitas
- Mission Viejo
- Modesto
- Monrovia
- Montclair
- Montebello
- Monterey
- Monterey Park
- Moorpark
- Moreno Valley
- Morgan Hill
- Mountain View
- Murrieta
- Napa
- National City
- Newark
- Newport Beach
- Norco
- Norwalk
- Novato
- Oakdale
- Oakland
- Oakley
- Oceanside
- Ontario
- Orange
- Oroville
- Oxnard
- Pacifica
- Palm Desert
- Palm Springs
- Palmdale
- Palo Alto
- Paramount
- Pasadena
- Patterson
- Perris
- Petaluma
- Pico Rivera
- Pittsburg
- Placentia
- Pleasant Hill
- Pleasanton
- Pomona
- Port Hueneme
- Porterville
- Poway
- Rancho Cordova
- Rancho Cucamonga
- Rancho Palos Verdes
- Rancho Santa Margarita
- Redding
- Redlands
- Redondo Beach
- Redwood City
- Reedley
- Rialto
- Richmond
- Ridgecrest
- Riverbank
- Riverside
- Rocklin
- Rohnert Park
- Rosemead
- Roseville
- Sacramento
- Salinas
- San Bernardino
- San Bruno
- San Buenaventura Ventura
- San Carlos
- San Clemente
- San Diego
- San Dimas
- San Fernando
- San Francisco
- San Gabriel
- San Jacinto
- San Jose
- San Juan Capistrano
- San Leandro
- San Luis Obispo
- San Marcos
- San Mateo
- San Pablo
- San Rafael
- San Ramon
- Sanger
- Santa Ana
- Santa Barbara
- Santa Clara
- Santa Clarita
- Santa Cruz
- Santa Maria
- Santa Monica
- Santa Paula
- Santa Rosa
- Santee
- Saratoga
- Seal Beach
- Seaside
- Selma
- Shafter
- Simi Valley
- Soledad
- South Gate
- South Lake Tahoe
- South Pasadena
- South San Francisco
- Stanton
- Stockton
- Suisun City
- Sunnyvale
- Temecula
- Temple City
- Thousand Oaks
- Torrance
- Tracy
- Tulare
- Turlock
- Tustin
- Twentynine Palms
- Union City
- Upland
- Vacaville
- Vallejo
- Ventura
- Victorville
- Visalia
- Vista
- Walnut
- Walnut Creek
- Wasco
- Watsonville
- West Covina
- West Hollywood
- West Sacramento
- Westminster
- Whittier
- Wildomar
- Windsor
- Woodland
- Yorba Linda
- Yuba City
- Yucaipa
- Yucca Valley
Colorado
- Arvada
- Aurora
- Boulder
- Brighton
- Broomfield
- Castle Rock
- Centennial
- Colorado Springs
- Commerce City
- Denver
- Englewood
- Erie
- Evans
- Fort Collins
- Fountain
- Golden
- Grand Junction
- Greeley
- Johnstown
- Lafayette
- Lakewood
- Littleton
- Longmont
- Louisville
- Loveland
- Montrose
- Northglenn
- Parker
- Pueblo
- Thornton
- Westminster
- Wheat Ridge
- Windsor
Connecticut
Delaware
Florida
- Altamonte Springs
- Apopka
- Auburndale
- Aventura
- Bartow
- Boca Raton
- Bonita Springs
- Boynton Beach
- Bradenton
- Cape Coral
- Casselberry
- Clearwater
- Clermont
- Coconut Creek
- Cooper City
- Coral Gables
- Coral Springs
- Crestview
- Cutler Bay
- Dania Beach
- Davie
- Daytona Beach
- DeBary
- Deerfield Beach
- DeLand
- Delray Beach
- Deltona
- Doral
- Dunedin
- Edgewater
- Estero
- Eustis
- Fort Lauderdale
- Fort Myers
- Fort Pierce
- Fort Walton Beach
- Gainesville
- Greenacres
- Groveland
- Haines City
- Hallandale Beach
- Hialeah
- Hialeah Gardens
- Hollywood
- Homestead
- Jacksonville Beach
- Jacksonville
- Jupiter
- Key West
- Kissimmee
- Lake Worth Beach
- Lakeland
- Largo
- Lauderdale Lakes
- Lauderhill
- Leesburg
- Lynn Haven
- Margate
- Melbourne
- Miami Beach
- Miami
- Miami Gardens
- Miami Lakes
- Miramar
- Naples
- New Smyrna Beach
- North Lauderdale
- North Miami Beach
- North Miami
- North Port
- Oakland Park
- Ocala
- Ocoee
- Orlando
- Ormond Beach
- Oviedo
- Palm Bay
- Palm Beach Gardens
- Palm Coast
- Palm Springs
- Palmetto Bay
- Panama City
- Parkland
- Pembroke Pines
- Pensacola
- Pinellas Park
- Plant City
- Plantation
- Pompano Beach
- Port Orange
- Port St Lucie
- Punta Gorda
- Riviera Beach
- Rockledge
- Royal Palm Beach
- Sanford
- Sarasota
- Sebastian
- St Cloud
- St Petersburg
- Sunny Isles Beach
- Sunrise
- Sweetwater
- Tallahassee
- Tamarac
- Tampa
- Tarpon Springs
- Tavares
- Temple Terrace
- Titusville
- Venice
- Wellington
- West Melbourne
- West Palm Beach
- Weston
- Winter Garden
- Winter Haven
- Winter Park
- Winter Springs
- Zephyrhills
Georgia
- Acworth
- Albany
- Alpharetta
- Athens Clarke County Unified Government
- Atlanta
- Augusta
- Augusta Richmond County Consolidated Government
- Brookhaven
- Canton
- Carrollton
- Cartersville
- Chamblee
- Columbus
- Conyers
- Dalton
- Decatur
- Douglasville
- Duluth
- Dunwoody
- East Point
- Fayetteville
- Gainesville
- Griffin
- Hinesville
- Holly Springs
- Johns Creek
- Kennesaw
- Kingsland
- Lagrange
- Lawrenceville
- Mableton
- Macon Bibb County
- Macon
- Marietta
- Mcdonough
- Milton
- Newnan
- Peachtree City
- Peachtree Corners
- Perry
- Pooler
- Rome
- Roswell
- Sandy Springs
- Savannah
- Smyrna
- Snellville
- South Fulton
- St Marys
- Statesboro
- Stockbridge
- Stonecrest
- Sugar Hill
- Suwanee
- Tucker
- Union City
- Valdosta
- Villa Rica
- Warner Robins
- Winder
- Woodstock
Hawaii
Idaho
Illinois
- Addison
- Algonquin
- Alton
- Arlington Heights
- Aurora
- Bartlett
- Batavia
- Belleville
- Belvidere
- Berwyn
- Bloomingdale
- Bloomington
- Blue Island
- Bolingbrook
- Buffalo Grove
- Burbank
- Calumet City
- Carbondale
- Carol Stream
- Carpentersville
- Champaign
- Chicago Heights
- Chicago
- Cicero
- Collinsville
- Crest Hill
- Crystal Lake
- Danville
- Darien
- Decatur
- Dekalb
- Des Plaines
- Dolton
- Downers Grove
- East Moline
- East Peoria
- Edwardsville
- Elgin
- Elk Grove Village
- Elmhurst
- Elmwood Park
- Evanston
- Frankfort
- Freeport
- Galesburg
- Geneva
- Glen Ellyn
- Glendale Heights
- Glenview
- Granite City
- Grayslake
- Gurnee
- Hanover Park
- Harvey
- Highland Park
- Hoffman Estates
- Homer Glen
- Huntley
- Joliet
- Kankakee
- Lake In The Hills
- Lansing
- Libertyville
- Lisle
- Lockport
- Lombard
- Loves Park
- Machesney Park
- Maywood
- Mchenry
- Melrose Park
- Moline
- Montgomery
- Morton Grove
- Mount Prospect
- Mundelein
- Naperville
- New Lenox
- Niles
- Normal
- North Chicago
- Northbrook
- O Fallon
- Oak Forest
- Oak Lawn
- Oak Park
- Orland Park
- Oswego
- Palatine
- Park Forest
- Park Ridge
- Pekin
- Peoria
- Plainfield
- Quincy
- Rock Island
- Rockford
- Rolling Meadows
- Romeoville
- Roselle
- Round Lake Beach
- Schaumburg
- Skokie
- South Elgin
- South Holland
- Springfield
- St Charles
- Streamwood
- Tinley Park
- Urbana
- Vernon Hills
- Villa Park
- Waukegan
- West Chicago
- Westmont
- Wheaton
- Wheeling
- Wilmette
- Woodridge
- Woodstock
- Yorkville
- Zion
Indiana
- Anderson
- Avon
- Bloomington
- Brownsburg
- Carmel
- Clarksville
- Columbus
- Crown Point
- East Chicago
- Elkhart
- Evansville
- Fishers
- Fort Wayne
- Franklin
- Gary
- Goshen
- Greenfield
- Greenwood
- Hammond
- Highland
- Hobart
- Indianapolis
- Jeffersonville
- Kokomo
- La Porte
- Lafayette
- Lawrence
- Marion
- Merrillville
- Michigan City
- Mishawaka
- Muncie
- Munster
- New Albany
- Noblesville
- Plainfield
- Portage
- Richmond
- Schererville
- Seymour
- Shelbyville
- South Bend
- St John
- Terre Haute
- Valparaiso
- West Lafayette
- Westfield
- Zionsville
Iowa
Kansas
Kentucky
Louisiana
Maryland
Massachusetts
- Agawam Town
- Amherst Town
- Attleboro
- Barnstable Town
- Beverly
- Boston
- Braintree Town
- Bridgewater Town
- Brockton
- Cambridge
- Chelsea
- Chicopee
- Everett
- Fall River
- Fitchburg
- Framingham
- Franklin Town
- Gardner
- Gloucester
- Haverhill
- Holyoke
- Lawrence
- Leominster
- Lowell
- Lynn
- Malden
- Marlborough
- Medford
- Melrose
- Methuen
- New Bedford
- Newton
- North Attleborough Town
- Northampton
- Peabody
- Pittsfield
- Quincy
- Randolph Town
- Revere
- Salem
- Somerville
- Springfield
- Taunton
- Waltham
- Watertown
- West Springfield Town
- Westfield
- Weymouth Town
- Woburn
- Worcester
Michigan
- Adrian
- Allen Park
- Ann Arbor
- Auburn Hills
- Battle Creek
- Bay City
- Birmingham
- Burton
- Dearborn Heights
- Dearborn
- Detroit
- East Lansing
- Eastpointe
- Farmington Hills
- Flint
- Garden City
- Grand Rapids
- Hamtramck
- Holland
- Inkster
- Jackson
- Kalamazoo
- Kentwood
- Lansing
- Lincoln Park
- Livonia
- Madison Heights
- Marquette
- Midland
- Monroe
- Mount Pleasant
- Muskegon
- Norton Shores
- Novi
- Oak Park
- Pontiac
- Port Huron
- Portage
- Rochester Hills
- Romulus
- Roseville
- Royal Oak
- Saginaw
- Southfield
- Southgate
- St Clair Shores
- Sterling Heights
- Taylor
- Troy
- Walker
- Warren
- Westland
- Wyandotte
- Wyoming
- Ypsilanti
Minnesota
- Andover
- Apple Valley
- Austin
- Blaine
- Bloomington
- Brooklyn Center
- Brooklyn Park
- Burnsville
- Champlin
- Chanhassen
- Chaska
- Columbia Heights
- Coon Rapids
- Cottage Grove
- Crystal
- Duluth
- Eagan
- Eden Prairie
- Edina
- Elk River
- Faribault
- Farmington
- Forest Lake
- Fridley
- Golden Valley
- Hastings
- Inver Grove Heights
- Lakeville
- Lino Lakes
- Mankato
- Maple Grove
- Maplewood
- Minneapolis
- Minnetonka
- Moorhead
- New Brighton
- New Hope
- Northfield
- Oakdale
- Otsego
- Owatonna
- Plymouth
- Prior Lake
- Ramsey
- Richfield
- Rochester
- Rosemount
- Roseville
- Saint Paul
- Savage
- Shakopee
- Shoreview
- South St Paul
- St Cloud
- St Louis Park
- St Michael
- St Paul
- West St Paul
- White Bear Lake
- Willmar
- Winona
- Woodbury
Mississippi
Missouri
- Arnold
- Ballwin
- Belton
- Blue Springs
- Cape Girardeau
- Chesterfield
- Columbia
- Florissant
- Gladstone
- Grandview
- Hazelwood
- Independence
- Jefferson City
- Joplin
- Kansas City
- Kirkwood
- Lee S Summit
- Lees Summit
- Liberty
- Maryland Heights
- Nixa
- O Fallon
- Ofallon
- Ozark
- Raymore
- Raytown
- Republic
- Rolla
- Sedalia
- Springfield
- St Charles
- St Joseph
- St Louis
- St Peters
- University City
- Webster Groves
- Wentzville
- Wildwood
Nebraska
New Hampshire
New Jersey
- Atlantic City
- Bayonne
- Bergenfield
- Bridgeton
- Camden
- Carteret
- Cliffside Park
- Clifton
- East Orange
- Elizabeth
- Elmwood Park
- Englewood
- Fair Lawn
- Fort Lee
- Garfield
- Glassboro
- Hackensack
- Harrison
- Hawthorne
- Hoboken
- Jersey City
- Kearny
- Lakewood
- Linden
- Lindenwold
- Lodi
- Long Branch
- Millville
- Morristown
- New Brunswick
- Newark
- North Plainfield
- Palisades Park
- Paramus
- Passaic
- Paterson
- Perth Amboy
- Plainfield
- Pleasantville
- Princeton
- Rahway
- Ridgewood
- Roselle
- Sayreville
- Secaucus
- South Plainfield
- Summit
- Trenton
- Union City
- Vineland
- West New York
- Westfield
New Mexico
New York
- Albany
- Auburn
- Binghamton
- Buffalo
- Elmira
- Freeport
- Garden City
- Glen Cove
- Harrison
- Hempstead
- Ithaca
- Jamestown
- Kingston
- Kiryas Joel
- Lindenhurst
- Lockport
- Long Beach
- Lynbrook
- Mamaroneck
- Middletown
- Mineola
- Mount Vernon
- New Rochelle
- New York
- Newburgh
- Niagara Falls
- North Tonawanda
- Ossining
- Peekskill
- Port Chester
- Poughkeepsie
- Rochester
- Rockville Centre
- Rome
- Schenectady
- Spring Valley
- Syracuse
- Troy
- Utica
- Valley Stream
- Watertown
- White Plains
- Yonkers
North Carolina
- Apex
- Asheboro
- Asheville
- Boone
- Burlington
- Carrboro
- Cary
- Chapel Hill
- Charlotte
- Clayton
- Clemmons
- Concord
- Cornelius
- Durham
- Fayetteville
- Fuquay-Varina
- Garner
- Gastonia
- Goldsboro
- Greensboro
- Greenville
- Harrisburg
- Hickory
- High Point
- Holly Springs
- Huntersville
- Indian Trail
- Jacksonville
- Kannapolis
- Kernersville
- Knightdale
- Leland
- Matthews
- Mebane
- Mint Hill
- Monroe
- Mooresville
- Morrisville
- New Bern
- Raleigh
- Rocky Mount
- Salisbury
- Sanford
- Shelby
- Statesville
- Thomasville
- Wake Forest
- Waxhaw
- Wilmington
- Wilson
- Winston Salem
North Dakota
Ohio
- Akron
- Alliance
- Athens
- Avon Lake
- Avon
- Barberton
- Beavercreek
- Bowling Green
- Brunswick
- Canton
- Centerville
- Chillicothe
- Cincinnati
- Cleveland Heights
- Cleveland
- Columbus
- Cuyahoga Falls
- Dayton
- Delaware
- Dublin
- Elyria
- Euclid
- Fairborn
- Fairfield
- Findlay
- Forest Park
- Gahanna
- Garfield Heights
- Green
- Grove City
- Hamilton
- Hilliard
- Huber Heights
- Hudson
- Kent
- Kettering
- Lakewood
- Lancaster
- Lebanon
- Lima
- Lorain
- Mansfield
- Maple Heights
- Marion
- Marysville
- Mason
- Massillon
- Mayfield Heights
- Medina
- Mentor
- Miamisburg
- Middletown
- Newark
- North Olmsted
- North Ridgeville
- North Royalton
- Oxford
- Painesville
- Parma Heights
- Parma
- Perrysburg
- Pickerington
- Piqua
- Reynoldsburg
- Riverside
- Rocky River
- Sandusky
- Shaker Heights
- Sidney
- Solon
- South Euclid
- Springfield
- Stow
- Strongsville
- Toledo
- Trotwood
- Troy
- Upper Arlington
- Wadsworth
- Warren
- Westerville
- Westlake
- Whitehall
- Willoughby
- Wooster
- Xenia
- Youngstown
- Zanesville
Oklahoma
Oregon
Pennsylvania
- Allentown
- Altoona
- Baldwin
- Bethel Park
- Bethlehem
- Carlisle
- Chambersburg
- Chester
- Easton
- Erie
- Harrisburg
- Hazleton
- Lancaster
- Lebanon
- Monroeville
- Murrysville
- New Castle
- Norristown
- Philadelphia
- Phoenixville
- Pittsburgh
- Plum
- Pottstown
- Reading
- Scranton
- State College
- West Chester
- Wilkes-Barre
- Williamsport
- York
Rhode Island
South Carolina
South Dakota
Tennessee
- Bartlett
- Brentwood
- Bristol
- Chattanooga
- Clarksville
- Cleveland
- Collierville
- Columbia
- Cookeville
- East Ridge
- Farragut
- Franklin
- Gallatin
- Germantown
- Hendersonville
- Jackson
- Johnson City
- Kingsport
- Knoxville
- La Vergne
- Lebanon
- Maryville
- Memphis
- Morristown
- Mount Juliet
- Murfreesboro
- Nashville Davidson Metropolitan Government
- Nashville
- Oak Ridge
- Shelbyville
- Smyrna
- Spring Hill
- Tullahoma
Texas
- Abilene
- Alamo
- Allen
- Alton
- Alvin
- Amarillo
- Angleton
- Anna
- Arlington
- Austin
- Balch Springs
- Baytown
- Beaumont
- Bedford
- Belton
- Benbrook
- Big Spring
- Boerne
- Brownsville
- Bryan
- Burleson
- Carrollton
- Cedar Hill
- Cedar Park
- Celina
- Cibolo
- Cleburne
- College Station
- Colleyville
- Conroe
- Converse
- Coppell
- Copperas Cove
- Corinth
- Corpus Christi
- Corsicana
- Crowley
- Dallas
- Deer Park
- Del Rio
- Denison
- Denton
- Desoto
- Dickinson
- Duncanville
- Eagle Pass
- Edinburg
- El Paso
- Ennis
- Euless
- Farmers Branch
- Fate
- Flower Mound
- Forney
- Fort Worth
- Friendswood
- Frisco
- Fulshear
- Galveston
- Garland
- Georgetown
- Grand Prairie
- Grapevine
- Greenville
- Haltom City
- Harker Heights
- Harlingen
- Horizon City
- Houston
- Huntsville
- Hurst
- Hutto
- Irving
- Katy
- Keller
- Kerrville
- Killeen
- Kingsville
- Kyle
- La Marque
- La Porte
- Lake Jackson
- Lancaster
- Laredo
- League City
- Leander
- Lewisville
- Little Elm
- Longview
- Lubbock
- Lufkin
- Manor
- Mansfield
- Marshall
- McAllen
- McKinney
- Melissa
- Mesquite
- Midland
- Midlothian
- Mission
- Missouri City
- Murphy
- Nacogdoches
- New Braunfels
- North Richland Hills
- Odessa
- Paris
- Pasadena
- Pearland
- Pflugerville
- Pharr
- Plainview
- Plano
- Port Arthur
- Portland
- Princeton
- Prosper
- Richardson
- Rockwall
- Rosenberg
- Round Rock
- Rowlett
- Royse City
- Sachse
- Saginaw
- San Angelo
- San Antonio
- San Benito
- San Juan
- San Marcos
- Schertz
- Seagoville
- Seguin
- Sherman
- Socorro
- Southlake
- Stephenville
- Sugar Land
- Temple
- Terrell
- Texarkana
- Texas City
- The Colony
- Tyler
- Universal City
- University Park
- Victoria
- Waco
- Watauga
- Waxahachie
- Weatherford
- Weslaco
- Wichita Falls
- Wylie
Utah
- American Fork
- Bountiful
- Brigham City
- Cedar City
- Clearfield
- Clinton
- Cottonwood Heights
- Draper
- Eagle Mountain
- Farmington
- Herriman
- Highland
- Holladay
- Hurricane
- Kaysville
- Kearns
- Layton
- Lehi
- Logan
- Magna
- Midvale
- Millcreek
- Murray
- North Ogden
- North Salt Lake
- Ogden
- Orem
- Payson
- Pleasant Grove
- Provo
- Riverton
- Roy
- Salt Lake City
- Sandy
- Saratoga Springs
- South Jordan
- South Salt Lake
- Spanish Fork
- Springville
- St George
- Syracuse
- Taylorsville
- Tooele
- Washington
- West Haven
- West Jordan
- West Valley City
Vermont
Virginia
Washington
- Arlington
- Auburn
- Bainbridge Island
- Battle Ground
- Bellevue
- Bellingham
- Bonney Lake
- Bothell
- Bremerton
- Burien
- Camas
- Covington
- Des Moines
- Edmonds
- Ellensburg
- Everett
- Federal Way
- Issaquah
- Kenmore
- Kennewick
- Kent
- Kirkland
- Lacey
- Lake Stevens
- Lakewood
- Longview
- Lynnwood
- Maple Valley
- Marysville
- Mercer Island
- Mill Creek
- Monroe
- Moses Lake
- Mount Vernon
- Mountlake Terrace
- Mukilteo
- Oak Harbor
- Olympia
- Pasco
- Port Angeles
- Pullman
- Puyallup
- Redmond
- Renton
- Richland
- Sammamish
- SeaTac
- Seattle
- Shoreline
- Spokane Valley
- Spokane
- Tacoma
- Tukwila
- Tumwater
- University Place
- Vancouver
- Walla Walla
- Wenatchee
- Yakima
Washington D.C.
West Virginia
Wisconsin
- Appleton
- Beloit
- Brookfield
- Caledonia
- De Pere
- Eau Claire
- Fitchburg
- Fond Du Lac
- Franklin
- Germantown
- Green Bay
- Greenfield
- Howard
- Janesville
- Kenosha
- La Crosse
- Madison
- Manitowoc
- Menomonee Falls
- Mequon
- Middleton
- Milwaukee
- Mount Pleasant
- Muskego
- Neenah
- New Berlin
- Oak Creek
- Oconomowoc
- Oshkosh
- Pleasant Prairie
- Racine
- Sheboygan
- South Milwaukee
- Stevens Point
- Sun Prairie
- Superior
- Watertown
- Waukesha
- Wausau
- Wauwatosa
- West Allis
- West Bend
Wyoming
Ready to file your deck permit?
Start by contacting your local building department to confirm the permit threshold, frost depth, and any HOA requirements. Ask what specific drawings they need — most departments have a checklist on their website. If you have a simple deck design, you can sketch the site plan and details yourself and submit in person or online. For larger or complex decks, hire a drafter or structural engineer to prepare the plans ($150–$1,500 depending on complexity). Expect plan review to take 2–4 weeks, three inspections during construction, and a total timeline of 6–12 weeks from intake to final approval. The permit fee is typically $150–$500. A few minutes on the phone with the building department now will save you weeks of rework and thousands of dollars in wasted materials or forced removal.
Related permit guides
Other guides in the Outdoor & yard category: