How to Build a DIY Outdoor Sofa with Cushions

DIY outdoor sofa with cushions

If you’re a DIYer looking to make your own custom patio seating or simply looking for outdoor furniture ideas, check out this DIY Outdoor Sofa with Cushions that I’ve built for my sister-in-law. I’ve also created plans in PDF format that you could download and print while working on the project. You could easily modify these plans to fit your needs or your style.  

We used 6″ thick foam and outdoor canvas fabric to make the seating cushions. A good place to get your fabrics is through Fabric Wholesale Direct. They have a large collection of fabrics and colors to choose from. I have a link under the material list for the fabric that we used.

The how-to tutorial in this post is for one sofa, but if you want to build a second sofa like it’s shown in the picture, you’ll have to do the math for additional material.

DIY outdoor sofa with cushions

You might also be interested in other outdoor projects that I’ve built, such as a DIY garden arbor with a bench and a DIY outdoor swing bench

Time to Complete

12 hours

Total Cost


Skill Level


Download Printable Plans in PDF

DIY Outdoor Sofa with Cushion PDF


This PDF download includes Cut Diagrams, a List of Supplies, and 3D illustrations with detailed steps to build the project. Measurements are imperial and not metric. Does NOT include SketchUp/CAD files.

The plans are embedded on the webpage for free, but if you would like to support the website, you can pay a small fee to purchase the printable PDFs.

Thank you for your support!

DIY Outdoor Sofa with Cushions

If you are feeling generous today, you could give a small tip to help me create more projects. Thank you!

Tools for this project

Material List

Note: Lumber dimensions are listed as nominal size.  See lumber sizes for actual dimensions vs nominal.

Disclosure: Some of the links on this page as well as links in “tools for this project” and “material list” sections are affiliate links.


DIY outdoor sofa with cushions dimensions

Step 1 – Cut Cushion Foam for the Seat and Backrest

There are several different parts to this sofa that need to be built in a specific order. First, you need to make the sofa cushions. Then based on the size of the cushions, you could determine the dimensions of the sofa. If you already purchased or have existing cushions, use those cushion sizes to figure out the sofa dimensions. 

Take 6″ thick cushion foam and cut two pieces to 48″ x 20″. One piece will be for the seat and the other for the backrest. 

cutting cushions for outdoor sofa
cushion foam for the DIY outdoor sofa with cushions

Step 2 – Cut Fabric for the Cushions

Depending on the design or style of the cushions you want to make, there are several different ways of sewing them. But for this project, we are making cushions looking like a square block. The best way to do this is to use a sewing machine with outdoor thread. You could possibly even sew this manually with just a thread and a needle, but this might take a while. 

Since this is an outdoor sofa, it’s important to use outdoor fabric. Just in case it rains or water gets spilled on the cushions, it will not damage the foam inside. The fabric I’m using is a beige waterproof canvas from Wholesale Fabric Suppliers. You could visit their website and purchase the same material. 

Considering that both the seat and the backrest cushions are the same size, take your canvas and cut four pieces to 50″ x 22″. Then cut four side pieces to 8″ x 50″ and four end pieces to 8″ x 22″. These fabric pieces are intentionally larger by 2″ larger than the actual size of the cushion to make a sewing seam. 

Two of the 8″ x 50″ side pieces will need to be cut in half to install a zipper. 

cutting outdoor fabric for sofa
cutting fabric with scissors

Step 3 – Sew the Fabric Cover Around the Cushions

Start with the bottom piece and sew the front and the side pieces with your sawing machine. Then sew the top piece. 

The last piece in the back will first need to have a zipper installed. You could make the zipper as long as you want, but it makes it easier to remove the foam when the zipper is the full length of the cushion. Once the zipper is attached to the back piece, then sew it to the back. 

Now invert the cushion cover inside out. The seams should now be on the inside. 

When inserting the foam into the cushion cover, it makes the job easier if you cover the foam with thin plastic sheeting. The sheeting makes it easier to slip the foam inside. Now you could zip the cushion cover. Do this for both cushions. 

sewing the cushion fabric for sofa
cushion cover for DIY outdoor sofa with cushions
cushion cover for DIY outdoor sofa with cushions
cushions for DIY outdoor sofa with cushions

Step 4 – Cut Slat Boards for the Top of Sofa

Now the cushions are complete with an overall size of 48×20. When building the sofa, the top platform slat needs to match the length and width of the cushion. 

The top platform of the sofa consists of two sections. A smaller area on the left will be a table, and the bigger 48″ section is for the cushion. The slats for the cushions will have 1×12 boards, and the slats for the table will have 1×8 boards.

Knowing which boards to use for which section, take a 1×12 board and cut four pieces to 23 5/8″ in length for the cushion area. Then take a 1×8 board and cut four pieces to 26 3/4″ in length for the table area. To ensure the pieces are exactly the same length, use a stop block on your miter saw. 

cutting slats for the diy sofa
cutting wood with skill saw
slats for sofa

Step 5 – Drill Pocket Hole and Assemble the Slat Boards

Now take your Kreg Jig and drill pocket holes on both 1×12 and 1×8 boards, as shown in the picture. 

Next, attach the boards together with wood glue and 1 1/4″ pocket hole screws. Make sure to clamp the boards between the joints with a Kreg clamp when driving in the screws. This will prevent the pieces from shifting or misaligning while driving in the screws.  

connecting sofa slats
drilling pocket holes with kreg jig
gluing wood boards together
attaching slat boards together for DIY outdoor sofa with cushions
attaching slats for DIY outdoor sofa with cushions

Step 6 – Attach Rail Board Around the Sofa

To cut the rail boards accurately, you need to make sure the top slats are completely assembled. Sometimes, the boards could be slightly wider or narrower, which might change the overall length of the sofa. 

Take 1×6 board and cut one front rail to 68 1/2″ (your length might be slightly different). Then cut two side rails to 27 1/2″ and one back rail to 67″.

Drill two pocket holes on one end of both 27 1/2″ rails. Then attach the front and the side rails to the top of the sofa with wood glue and 1 1/4″ pocket hole screws. The back rail will need to be installed later on. 

attaching rails around the diy sofa
slats for DIY outdoor sofa with cushions
DIY outdoor sofa with cushions

Step 7 – Cut Main Frame Boards for the Couch

Now you need to build a frame that supports the legs and the weight of the sofa. 

Take 2×4 and cut two pieces to 26 3/4″ in length. Place the sofa face down on your workbench. Then place the 26 3/4″ boards on the ends. Measure the distance between the two 26 3/4″ boards to get the exact length for the frame boards. This measurement should be around 64″. Now cut five 2×4 pieces to 64″ in length. 

Next, take your table saw and rip two of the 64″ boards at 15 degrees. These two boards will support the backrest boards at a 15-degree angle.

Drill two pocket holes on each end of the 64″ long pieces, including the boards that are ripped at 15-degrees.  

cutting frame boards for the sofa
boards for the frame of sofa

Step 8 – Install the Frame Under the Slat Boards

Insert the 64″ frame boards between the two 26 3/4″ end pieces and secure them with 2 1/2″ pocket hole screws. See the picture for measurements on how far apart to place the frame boards. 

Next, attach the 15-degree angle boards with 2 1/2″ pocket hole screws, as shown in the picture. Make sure you have a 1 1/2″ gap between the two boards. You could temporarily insert a 2×4 scrap board while driving in the screws. This will ensure you have a 1 1/2″ gap for the backrest. 

attaching frame to sofa
attaching frame boards to sofa
attaching frame boards to sofa

Step 9 – Attach Legs to the Frame of the Couch

Take 4×4 board and cut four pieces to 8 3/4″ in length. Then trim the bottom of the leg to 77 degrees on all four sides. The top of the leg will need to have two pocket holes on two sides of the leg. 

Now attach the leg to the 2×4 sofa frame with wood glue and 2 1/2″ pocket holes screws. Make sure the legs are the same distance from the ends of the sofa. 

attaching legs to the frame of sofa
cutting legs for DIY outdoor sofa with cushions
cutting legs for DIY outdoor sofa with cushions
attaching legs to frame of sofa

Step 10 – Cut and Assemble the Backrest

Take 2×6 board and cut three pieces to 27 1/2″ in length. Then take 1×6 and cut four pieces to 13 3/8″ in length. Drill two pocket holes on each end of the 13 3/8″ pieces. 

Attach the 13 3/8″ backrest rails to the 2×6 boards with wood glue and 1 1/4″ pocket hole screws. The top rails needs to be installed 1/2″ from the top of the backrest and the bottom rail at 14″. See picture

building a backrest of the outdoor sofa
attaching rails to backrest of sofa
backrest of the sofa

Step 11 – Stain and Poly the Wood

Before attaching the backrest and the back rail to the sofa, it’s a good idea to stain these pieces separately. It makes the staining much easier.

Take your random orbital sander and sand all the pieces to eliminate any rough spots. Then brush off the sawdust. Next, apply a coat of pre-stain to prevent blotchiness. If you’re using hardwood like oak or birch, then pre-staining may not be necessary. 

Next, stain the sofa with a brush and wipe it off with a cloth or a shop paper towel (I used Briarsmoke Stain for this project). After the stain dries, apply a few coats of polyurethane. You might need to sand between the coats to eliminate dried-up bubbles. 

staining sofa boards

Step 12 – Install Backrest to the Sofa

Once the polyurethane is dry and cured, slide in the backrest between the frame boards that are installed at a 15-degree angle. Then drive in 3 ½” wood screws through the frame and into the backrest. This will keep the backrest secured to the sofa frame. 

attaching the backrest to the diy sofa

Step 13 – Nail the Back Rail 

Now the final piece is to install the back rail. This board will need to be attached with 2″ brad nails since it does not bear any load. You’re done with a DIY outdoor sofa with cushions. 

attaching back rail to the sofa
DIY outdoor sofa with cushions
DIY outdoor sofa with cushions

Leave a Comment