← All guides

How a package turns measurements into a materials list

The one concept that makes the rest of the estimate build itself. Read this first.

6 min read

A package is a recipe. Its lines read the measurements off a roof, multiply each one by a coverage rate, and tell you exactly how much of each material to buy. Build it once, and every estimate for that trade prices itself.

One formula does the whole job:

quantity = (sum of the measurements) × multiplier × (1 + waste)

The multiplier is not a magic number

It is always the same thing: how many units of the material you need per one unit of measurement. A package size, or a coverage rate. Nothing else.

Here is a real roofing package, run against a 30-square roof:

Line Reads × Where that number comes from
Shingles roof_squares 3 Three bundles cover one square
Ridge cap ridges_ft + hips_ft 0.0286 1 ÷ 35 — a bundle covers 35 linear feet
Drip edge eaves_ft + rakes_ft 0.1 1 ÷ 10 — sticks come in 10-foot lengths
Ice & water eaves_ft + valleys_ft 1 Sold by the linear foot, so one-to-one
Pipe boots plumbing_vent_count 1 One boot per vent
Tear-off & labor roof_squares 1 Priced per square

So 0.0286 isn't arbitrary — it's "one bundle per 35 feet". If you can answer "how much does one of these cover?", you can write the multiplier. Every number in the table is a package size or a coverage rate you already know from the supply house.

Worked through

A 30-square roof with 200 ft of eaves and rakes, 140 ft of ridges and hips, 4 vents:

Line Arithmetic Quantity
Shingles 30 × 3 × 1.10 waste 99 bundles
Ridge cap 140 × 0.0286 4 bundles
Drip edge 200 × 0.1 20 sticks
Pipe boots 4 × 1 4 boots
Labor 30 × 1 30 squares

You entered eight measurements. You got a priced materials list and a labor line, with no arithmetic done by hand and none of it to redo when the customer changes their mind about the shingle.

Waste is per line, not per job

Waste is switched on for shingles and off for everything else, and that's deliberate. You cut shingles and bin the offcuts. You do not waste pipe boots. Applying one blanket waste percentage across a whole estimate is how you end up quietly overcharging on the parts that don't get cut.

Good, Better and Best is a small edit

Each level is its own package, but they barely differ. The base lines — starter, ridge cap, drip edge, ice & water, boots, tear-off and labor — are identical in all three:

  • The base — everything that doesn't change no matter what the customer picks. The same lines in all three packages.
  • The graded lines — usually just the shingle and the underlayment, each pointed at a Good, Better or Best item in your price book.

That's what makes three options cheap to offer: you aren't building three estimates, you're changing one or two lines. It's also the clearest thing you can say to a homeowner: "the tear-off, the labor and the flashing don't change. You're choosing the shingle."

Setting one up

  1. Put the material in your price book with its real unit — bundle, roll, stick, linear foot.
  2. Add a line to the package and pick that item.
  3. Tick the measurements it should read. Several add together — eaves and rakes both take drip edge.
  4. Set the multiplier by asking "how many of these per one of those?" If one covers 35 feet, the multiplier is 1 ÷ 35.
  5. Turn waste on only if the material gets cut.

Get it right once and it's right on every estimate afterwards. That is the entire point — the arithmetic stops being something a person does, so it stops being something a person gets wrong at 9pm on a Thursday.

ExteriorPro does this arithmetic for you

From $199 a month per location. All six trades, unlimited users, 30-day free trial.

Start your free trial