Fence Calculator
Estimate posts, rails, and pickets for a fence run.
Enter your total fence length and spacing to get the number of posts, rails, and pickets you'll need. Adjust the picket width and gap to match your design.
How it works
Posts equal the number of sections plus one. Rails are sections × rails-per-section. Pickets are the fence length divided by the picket-plus-gap width. Posts are usually spaced 6–8 feet apart; closer spacing makes a stronger fence.
Worked example
For a 150 ft straight run of fence with posts 8 ft apart: 150 ÷ 8 = 18.75 spaces, so you need about 20 posts (round up, then add one for the end). With pre-built 8-ft panels you'd need about 19 panels. Add a post at every corner and on each side of every gate beyond the straight-line count.
What changes your estimate
- Corners and gates add posts. Every direction change and every gate needs its own post, over and above the evenly spaced line posts.
- Post spacing vs. panel width. Pre-made panels fix your spacing (usually 6 or 8 ft); building rail-by-rail lets you adjust spacing to the run.
- Terrain. Slopes mean either stepping or racking the fence, which changes panel count and post height.
- Concrete per post. Each post hole needs concrete — roughly one to two 50-lb bags per hole depending on post and hole size.
Frequently asked questions
How many fence posts do I need?
Divide the fence length by your post spacing and round up for the number of sections, then add one. A 100-ft fence with 8-ft spacing needs about 14 posts.
How far apart should fence posts be?
Typically 6 to 8 feet. Closer spacing makes the fence sturdier and is better in high-wind areas.
How many pickets do I need?
Divide the fence length (in inches) by the picket width plus the gap. A 100-ft fence with 5.5-inch pickets and 1/4-inch gaps needs about 209 pickets.
Is this calculator free and private?
Yes. Every CubicCabin calculator runs entirely in your browser, so the numbers you enter are never uploaded or stored. There's no sign-up, no limits, and it keeps working even if you lose connection after the page loads.