Building a Deck Patio Cover from Scratch
Table of Contents
We get a lot of rain in Bothell. The Pacific Northwest is beautiful, but from October through June you are going to get wet if you stand outside for more than five minutes. We have a deck, and for years we just didn’t use it for most of the year. A proper cover would change that.
So in June 2025, I built one. A 20×12 foot patio cover over the entire deck — wooden structure, vaulted polycarbonate roof, gutters draining to the nearest rainwater inlet. Designed entirely in SketchUp, permitted through the HOA, and built by hand over the course of a month. My first project of this scale.
This post is a complete walkthrough: the design, the permitting, the build phases, the materials, and what I’d do differently.
The Design #
Before touching a single piece of lumber I spent time in SketchUp getting the design right. I wanted to know exactly what I was building before I started — dimensions, angles, lumber sizes, fastener placements. When you are figuring things out as a first-time builder, having a 3D model you can rotate and interrogate beats sketching on paper by a long margin.
The structure covers the full 20×12 ft deck footprint. The roof is vaulted — a ridge at the centre, sloping down on both sides — rather than a single flat lean-to pitch. The slope runs side to side. One side covers the flat deck area; the other, shorter side covers the stairs leading up to the deck (8 ft wide).
For the roof pitch I referenced the Snohomish County residential building standards. The minimum slope for a solid residential roof is approximately 2:12 pitch (~9.5°). I went with exactly that — enough slope to shed water reliably without making the structure feel heavy or imposing.
📐 [SketchUp design screenshot / render — add here]
Roof panel layout:
- Flat deck side: 12×4 ft polycarbonate panels — 2 opaque (near house), remaining clear
- Stair side: 8×4 ft clear polycarbonate panels
The combination of clear and opaque was deliberate. The far end of the deck gets full light. The two opaque panels near the house cut glare into the interior rooms while still letting diffused light through.
HOA Permit #
Before any ground was broken I submitted drawings to the HOA and received written approval. If you are building anything structural in Snohomish County — even on your own property — check with your HOA and local authority first. The permit process was straightforward because I had the SketchUp drawings: dimensions, materials, and slope were all clearly documented and easy to review.
Don’t skip this step. A covered patio structure of this size has setback requirements, height limits, and minimum roof slope rules. Getting approval upfront costs a few weeks. Dealing with a stop-work order costs much more.
Structure Overview #
| Element | Spec |
|---|---|
| Footprint | 20 × 12 ft (deck coverage) |
| Stair-side extension | 8 ft wide |
| Columns on deck | 6 × 4×4 posts, 8 ft tall |
| Columns off deck (stair side) | 2 × 4×4 posts, 12 ft tall (ground to ridge) |
| Roof pitch | 2:12 (~9.5°), vaulted |
| Roof panels — deck side | 12×4 ft polycarbonate: 2 opaque + clear |
| Roof panels — stair side | 8×4 ft clear polycarbonate |
| Drainage | Gutters routing to nearest rainwater inlet |
Phase 1: Footings #
The deck sits 4 feet above ground. The two stair-side columns needed to be anchored directly into the ground — not attached to the deck — because they carry significant downward and lateral load from the taller side of the vaulted roof.
For each ground footing:
- Dug a hole into the ground
- Filled with gravel for drainage and stability
- Set a concrete block on top of the gravel bed
- The 12 ft 4×4 post stands on the concrete block
The six deck-side columns are anchored to the existing deck framing. Before installing them I added blocking and reinforced the deck joists to make sure the structure could handle the new load without flex or bounce.
📸 [Photo: hole dug with gravel fill — add here] 📸 [Photo: concrete block set, before post — add here] 🎬 [Video: footing installation — add here]
Phase 2: Columns #
With footings solid, the columns went up. Six 4×4 posts at 8 ft on the deck, two 4×4 posts at 12 ft on the stair side.
Getting columns plumb — perfectly vertical in both planes — is the most important thing at this stage. Everything else follows from it. I used a digital angle gauge to check each post before securing it, checking both faces.
Post base hardware anchors the deck columns to the framing. Post cap brackets connect the beam to the top of each column.
📸 [Photo: first column going up — add here] 📸 [Photo: all columns standing, before beams — add here] 🎬 [Video: column installation — add here]
Phase 3: Beams and Framing #
With all eight columns plumb, the beams went across. The vaulted roof means there is a ridge beam running along the apex and two sets of rafters sloping down from it on each side.
Rafter spacing had to be laid out precisely to match the polycarbonate panel widths. If the spacing is off, panel seams land in the wrong place or panels need to be cut on site. I laid it all out in SketchUp first and transferred the measurements directly.
Every rafter-to-beam connection used joist hanger hardware — no toenailing into structural members. The hurricane ties added a second layer of connection between rafters and the top plate, which matters in a structure that will see decades of wind and snow load.
📸 [Photo: beams in place — add here] 📸 [Photo: ridge beam and rafters taking shape — add here] 🎬 [Video: framing assembly — add here]
Phase 4: Roof #
The most satisfying phase to watch come together. Polycarbonate panels go on one by one, starting from the low edge and working up toward the ridge.
A few things that matter here and that I had to figure out:
Flute direction. Multi-wall polycarbonate has internal channels running along its length. These channels must run in the direction of slope — so water drains out at the bottom. Installing panels with the flutes running across the slope traps water inside the panel and leads to algae growth and eventual structural failure of the panel.
Foam sealing at edges. Every panel edge needs a foam tape seal — closed-cell foam that blocks insects and debris from entering the flutes while still allowing drainage at the bottom edge. The top (ridge) edge gets a solid foam strip. The bottom (eave) edge gets a vented foam strip that allows condensation to escape.
Thermal expansion. Polycarbonate expands and contracts significantly with temperature. Pre-drill oversize holes and use the correct washer/screw system — don’t clamp panels rigidly.
Ridge cap. The ridge cap covers the junction where both roof sides meet. It needs to allow thermal movement while being completely watertight.
📸 [Photo: first panels going on — add here] 📸 [Photo: roof half complete — add here] 📸 [Photo: ridge cap installation — add here] 🎬 [Video: roof going up — add here]
Phase 5: Gutters and Drainage #
A roof without gutters deposits all the water at the drip line. In Bothell, that means a significant volume of water hitting the deck perimeter and the ground directly below the stair-side columns. Gutters were not optional.
I ran gutters along the lower edges of both roof sections — deck side and stair side — and routed downspouts to the nearest residential rainwater inlet. Getting consistent gutter slope right matters: too shallow and water pools; too steep and it drains so fast it splashes past the downspout opening in heavy rain.
📸 [Photo: gutter installation — add here] 📸 [Photo: downspout routing — add here] 🎬 [Video: first rain test, water flowing correctly — add here]
Phase 6: Finishing #
Raw lumber weathers poorly without protection — it greys, checks, and can warp if moisture cycles through it repeatedly. Once all structural work was done I applied a weather-resistant exterior wood finish to every exposed surface: posts, beams, rafters, and fascia boards.
Two coats, letting each dry fully before the next. Pay extra attention to end grain — that is where moisture enters fastest and causes the most damage.
📸 [Photo: finishing/staining in progress — add here] 📸 [Photo: finished structure — add here]
Before and After #
📸 [Before photo: deck without cover — add here] 📸 [After photo: completed patio cover — add here] 🎬 [Walkthrough video of finished structure — add here]
Materials #
Everything below was sourced from Amazon.
Structural hardware:
| Item | Link |
|---|---|
| Pergola Brackets — 4×4 modular post hardware (2-pack) | B0BD1HLKM4 |
| Pergola Bracket Kit — 4×4 post hardware (4-pack) | B0B2DFRY5G |
| Concealed Joist Hangers 2×4, 24-pack (YVHFWOY, powder-coated steel) | B0BRN5GQQR |
| Hurricane Ties for Rafters, 14-gauge galvanised, 15-pack (Garaook) | B0F43SBCPV |
Tools:
| Item | Link |
|---|---|
| Metabo HPT Palm Nailer NH90AB — pneumatic, for joist hanger nails | B07MSL5X4W |
| Klein Tools 935DAG Digital Electronic Level and Angle Gauge | B07ZWW3BW5 |
| YOTOO Hybrid Air Hose 3/8" × 50 ft, 300 PSI | B08R1HY6G2 |
Roofing & sealing:
| Item | Link |
|---|---|
| Polycarbonate panels — 12×4 ft | B0DQTS6JV1 |
| Polycarbonate panels — 8×4 ft | B0DK8MRPJ8 |
| Foam weather stripping tape — 1/2" × 1/8", 3 rolls (Yotache) | B07PZTQRHL |
| Neoprene foam weatherstrip — 1" × 1/8", 2 rolls (Yotache) | B07PYWT92G |
Additional hardware:
Note: The following items need product names filled in — Amazon blocked fetching their titles.
| ASIN | Link |
|---|---|
| B0BFL7WQJ5 | View on Amazon |
| B0D37GXJYP | View on Amazon |
| B0CY5C28J3 | View on Amazon |
| B0D37JH6NZ | View on Amazon |
| B0010X7J78 | View on Amazon |
| B013XIW35K | View on Amazon |
| B09DGGRZV3 | View on Amazon |
| B07ZWQ7P4Z | View on Amazon |
| B0D384815V | View on Amazon |
| B0DJSMRP68 | View on Amazon |
What I Would Do Differently #
Work out the SketchUp model even more thoroughly. I thought I had everything locked before I started, but a few framing dimensions needed adjusting on the fly. The more completely you resolve things in 3D first, the fewer surprises mid-build.
Get a helper for beam day. Setting the ridge beam solo requires more clamps and problem-solving than it should. Two hours with a second pair of hands would have saved half a day.
Order more joist hanger nails than you think you need. They disappear fast with a palm nailer. Running out mid-connection is annoying.
Apply foam tape to panels before going up. Sealing the panel edges on the ground is easier than reaching up to do it once the panel is in position at height.
Plan gutter slope from the start. I added the gutters after the roof was on and had to work backward to get the slope right. Incorporating the gutter pitch into the initial framing layout would have been cleaner.
The Result #
The deck is usable year-round now. On a rainy afternoon — which in Bothell is most afternoons from October to May — you can sit outside, hear the rain on the polycarbonate roof, and stay completely dry. The clear panels bring in enough natural light that it doesn’t feel enclosed. The opaque panels near the house keep the living room from becoming a greenhouse.
A month of weekends, a lot of first-time problem solving, and a structure that will outlast the deck it sits on.
📸 [Final photo — deck in use, ideally on a rainy day — add here] 🎬 [Final walkthrough video — add here]