Framing Calculator

Wall Framing Stud & Plate Calculator

Estimate lumber requirements for your construction project

12″ O.C. 16″ O.C. (Standard) 24″ O.C.
8 Foot Boards 10 Foot Boards 12 Foot Boards 16 Foot Boards

Estimated Lumber List:

How to Use the Framing Calculator

This tool is designed to provide professional contractors and DIY enthusiasts with an accurate estimate of the vertical studs and horizontal plates required for a standard wood-framed wall. It accounts for "On Center" (O.C.) spacing, which is the distance from the center of one stud to the center of the next.

Understanding the Inputs

  • Wall Length: The total horizontal distance of the wall you are building.
  • Stud Spacing: Standard framing is typically 16 inches on center. Exterior walls or heavy load-bearing walls might use 12 inches, while non-load bearing interior walls might use 24 inches.
  • Corners: Each corner typically requires 2 additional studs to provide a nailing surface for interior drywall.
  • Openings: Each window or door usually requires 2 extra studs (king studs and jack studs) to support the header and frame.
  • Waste Factor: It is standard practice to add 10% to your order to account for warped boards, mistakes, or short off-cuts.

The Calculation Logic

The calculator uses the following formulas:

  1. Base Studs: (Wall Length in inches / Spacing) + 1.
  2. Add-ons: 2 studs per corner and 2 studs per opening.
  3. Plates: Most walls require 3 horizontal plates (1 bottom plate and 2 top plates). We calculate the total linear feet and divide by your chosen lumber length.

Practical Example

If you are building a 20-foot wall with 16″ O.C. spacing, 2 corners, and 1 door:

  • Base studs: (240″ / 16″) + 1 = 16 studs.
  • Corner/Opening studs: (2*2) + (1*2) = 6 studs.
  • Subtotal: 22 studs. Plus 10% waste = 25 studs.
  • Plates: 20ft * 3 = 60 linear feet. If using 16ft boards, you need 4 boards.
function calculateFraming() { var length = parseFloat(document.getElementById('wallLength').value); var spacing = parseFloat(document.getElementById('studSpacing').value); var corners = parseInt(document.getElementById('numCorners').value) || 0; var openings = parseInt(document.getElementById('numOpenings').value) || 0; var plateLen = parseFloat(document.getElementById('plateLength').value); var waste = parseFloat(document.getElementById('wasteFactor').value) / 100; if (isNaN(length) || length <= 0) { alert("Please enter a valid wall length."); return; } // Convert length to inches for stud calculation var lengthInches = length * 12; // Calculate basic studs var baseStuds = Math.ceil(lengthInches / spacing) + 1; // Add studs for corners and openings var extraStuds = (corners * 2) + (openings * 2); var totalStudsRaw = baseStuds + extraStuds; var totalStudsWithWaste = Math.ceil(totalStudsRaw * (1 + waste)); // Calculate Plates (usually 3 plates: 1 bottom, 2 top) var plateLinearFeet = length * 3; var plateBoardsRaw = plateLinearFeet / plateLen; var plateBoardsWithWaste = Math.ceil(plateBoardsRaw * (1 + waste)); // Display Results var resultDiv = document.getElementById('framingResult'); var output = document.getElementById('resultOutput'); resultDiv.style.display = 'block'; output.innerHTML = 'Vertical Studs: ' + totalStudsWithWaste + ' pieces' + 'Horizontal Plates: ' + plateBoardsWithWaste + ' pieces (' + plateLen + "\' lengths)" + 'Total Linear Feet of Plate: ' + plateLinearFeet.toFixed(2) + ' ft' + '
' + '* Includes ' + (waste * 100) + '% waste factor and additional lumber for ' + corners + ' corners and ' + openings + ' openings.'; // Smooth scroll to result resultDiv.scrollIntoView({ behavior: 'smooth', block: 'nearest' }); }

Leave a Comment