The do it yourself resource for homeowners from home improvement professionals.

How to Build Roof Trusses

Learning how to build roof trusses requires patience and attention to detail. A typical residential roof will need a truss called a Fink truss that brings added stability. This truss style has four internal joists that make the shape of a “W” aligned with the centerline of the truss’s triangle. Building a roof truss correctly is incredibly important so please do not attempt it if you are not confident in your ability.

Tools Needed How to Build Roof Trusses

  • Tape measure
  • Graph paper
  • Ruler
  • Triangle square
  • Work gloves
  • Safety glasses
  • Jig saw
  • Sawhorses
  • Table clamp
  • Circular saw
  • Putty knife
  • Power drill

Directions for How to Build Roof Trusses

  1. Consult local building codes to learn the minimum height necessary for the roof on your building.
  2. Measure the width of the building that the truss will span.
  3. Determine the height of the roof that you intend to build.
  4. Apply these dimensions to figure out the length of the 3 chords that form the truss triangle.
    1. The bottom chord will be the width of the building plus 0.25 inches.
    2. The two top chords must connect in the middle to form the peak of the roof gable.
  5. Calculate the lengths needed for the 4 internal joists that form the “W” bracing the truss internally.
  6. Draw a detailed sketch of the truss design on graph paper or use architectural software to create the diagram.
  7. Find out if you may use homemade plywood gusset plates or if building codes require factory-made steel gusset plates.
  8. If you can use plywood gusset plates, cut the pieces with a circular saw.
  9. Take your building plan to local authorities for approval.
  10. Upon approval, arrange your lumber on a flat surface.
  11. With the assistance of a triangle square, mark cut lines on the lumber and double check measurements as you go.
  12. Clamp your first board to a table or across sawhorses.
  13. Perform all cuts with a jigsaw and proceed through all pieces of lumber.
  14. Fit the chords and internal joists together on the ground to form your first truss.
  15. Spread construction adhesive with a putty knife on the joints and glue all pieces together.
  16. After glue sets, brace all joints by attaching the gusset plates.
    1. Glue plywood gussets first and then drive screws into the wood.
    2. Glue steel gussets and drive screws through the holes already in the metal.
  17. Let truss cure overnight.

Experienced Delaware Valley Roofers

If you’re not a professional, learning how to build roof trusses yourself might not be a great idea, consider asking PJ Fitzpatrick for help. We have been replacing roofs in the Delaware Valley for decades. Join our thousands of satisfied customers and ask us for a roof estimate today.

Need help with this project?

We have trained professionals that can help.

Contact us today. 1-877-246-4354 Get Estimate

P.J. Fitzpatrick, Inc.

21 Industrial Blvd
New Castle, DE 19720

1-877-246-4354

  • NJ Lic. #13VH10727200
  • DE Lic. #2009603070
  • PA Lic. #PA011323
  • MD Lic. #105494

© 2021 P.J. Fitzpatrick, Inc.

Website by the Prager Microsystems, Inc. Digital Marketing Agency

[gravityform id="20" title="false" description="false"]
<div class='gf_browser_chrome gform_wrapper' id='gform_wrapper_20' ><form method='post' enctype='multipart/form-data' id='gform_20' action='/diy/roofing-installation/how-to-build-roof-trusses/'> <div class='gform_body'><ul id='gform_fields_20' class='gform_fields top_label form_sublabel_below description_below'><li id='field_20_1' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_20_1' >Your Name:<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_1' id='input_20_1' type='text' value='' class='medium' aria-required="true" aria-invalid="false" /></div></li><li id='field_20_4' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_20_4' >Phone Number:<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_phone'><input name='input_4' id='input_20_4' type='text' value='' class='medium' aria-required="true" aria-invalid="false" /></div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_20' class='gform_button button' value='Submit' onclick='if(window["gf_submitting_20"]){return false;} window["gf_submitting_20"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_20"]){return false;} window["gf_submitting_20"]=true; jQuery("#gform_20").trigger("submit",[true]); }' /> <input type='hidden' class='gform_hidden' name='is_submit_20' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='20' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_20' value='WyJbXSIsIjExY2Q2ODU0YWI0Y2RiZGJiMzBhMmEyNzEwY2IwZDM1Il0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_20' id='gform_target_page_number_20' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_20' id='gform_source_page_number_20' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 20) {jQuery('#input_20_4').mask('(999) 999-9999').bind('keypress', function(e){if(e.which == 13){jQuery(this).blur();} } );} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [20, 1]) } ); </script>