Lumber & Material
Linear Feet ↔ Board Feet Converter
Translate between running feet of a known cross-section and board feet — useful for trim, decking, and 2× lumber.
Calculator
What makes this different
Most converters assume a single standard cross-section. This one lets you pick common nominal sizes (1×2, 2×4, 2×6 …) or enter a custom cross-section, and shows the formula. It also handles the actual (not nominal) dimensions after surfacing.
Who it's for & when to use it
Ordering baseboard, crown, or 2×4 framing; comparing per-linear-foot quotes to per-BF quotes.
How to use
- Enter the dimensions of your material or the parameters of your project.
- Adjust the optional knobs (waste factor, kerf, planer allowance) to match your shop practice.
- Click Calculate and read the output. Use the per-item breakdown for ordering, the totals for budgeting.
- Compare the result to your lumber yard's quote — the effective $/BF column is the apples-to-apples number.
Formula: BF = LF × (actual_t × actual_w) / 144. Nominal dimensions shown for reference; actual dimensions are used for the math.
Notes & tips from the shop
- A 2×4 is not 2 in × 4 in. Surfaced it is 1.5 × 3.5 in. That difference adds up across 100 linear feet.
- Linear feet is a length, board feet is a volume. You cannot convert without knowing the cross-section.
- Trim is usually sold per LF, structural lumber per BF or per piece.
Frequently asked questions
Is 8 ft of 2×4 really 5.33 BF?
Yes — 1.5 × 3.5 × 96 in / 144 in³/BF = 3.5 BF per 8 ft stick. A 2×4 stud is normally 92-5/8 in or 96 in. Use the actual length you order.
Can I mix nominal and actual dimensions?
You can, but the answer will be misleading. Always use actual dimensions for purchased material.
Why do I get a different answer than the lumber yard?
Yards may round to whole BF per piece. Always buy at least one extra piece for offcuts and mistakes.
Limitations
Linear feet of a single cross-section only. Compound cross-sections or tapered boards not supported.
All calculations happen in your browser — nothing you type is sent to a server.