CostRule

Site information

Methodology

Data current as of: August 27, 2026 · Page revised September 5, 2026

On this page 13

Every cost on CostRule is built from three separately sourced parts — material, labor, and the accessories a standard installation needs — each priced on its own and then added together. A 340 sq ft carpet job at mid grade works out to $1,301.33 of material, $535.65 of labor and $446.05 of extras: $2,283.03 installed, or $6.71 per square foot, on data current as of August 27, 2026. This page shows the formula, the numbers that feed it, the checks it has to survive, and the points where it stops being able to help you.

What a range on this site means

Low, average and high are three complete runs of the same formula. They are not one number with a percentage tacked on either side.

Scenario Material price Waste allowance Margin Labor hours
Low 25th percentile of the products we priced in that grade low end low end low end
Average median midpoint midpoint midpoint
High 75th percentile high end high end high end

The headline range on a cost page is one step wider still, because it spans grades rather than sitting inside one: the low end is the low case of the cheapest grade, the high end is the high case of the most expensive grade, and the average is the mean of the three grades, each in its own average case. That is why the carpet page opens at $3.25 to $14.75 per square foot with a $7.25 average, while the calculator set to mid grade works from a material rate of $3.83. Both are correct; they answer different questions. The page range describes the market from budget to premium. The calculator describes one grade, one room, one state.

The formula

Each of the three parts is a straight line: a rate per square foot, times your area, plus a flat amount.

component = (rate per sq ft × area) + flat amount
total     = material + labor + extras

Four things act on that skeleton, in this order:

  1. Size band. Larger jobs carry less setup time per square foot, so the labor rate steps down as area grows. Material and extras rates do not move with size.
  2. State factor. One number per state, applied to the labor rate and to the part of the extras that is mostly somebody’s time. It never touches material.
  3. Minimum job charge. If the calculated work comes to less than $300, the shortfall is added.
  4. Rounding. Cents, half-up, at each step — the same arithmetic in the same order on both sides of the site, so the browser and the pipeline cannot drift apart.

Worked example: 340 sq ft of carpet, mid grade, national average

These are the exact steps the calculator runs for its default room. Nothing is summarized or re-derived for this page.

# Step The arithmetic Result
1 Project size 340 sq ft (default project size) 340 sq ft
2 Size band 340 sq ft falls into band d2 (up to 500 sq ft)
3 Material $3.82743 per sq ft × 340 sq ft + $0.00 $1,301.33
4 Labor (1 × $1.575436) per sq ft × 340 sq ft + (1 × $0.00) $535.65
5 Extras ($1.311902 + 1 × $0) per sq ft × 340 sq ft + ($0.00 + 1 × $0.00) $446.05
6 Subtotal $1,301.33 + $535.65 + $446.05 $2,283.03
7 Minimum job charge max(0, $300.00 − $2,283.03) added to extras $0.00
8 Total (average) $2,283.03 + $0.00 $2,283.03
9 Per square foot $2,283.03 ÷ 340 sq ft $6.71

The 1 in steps 4 and 5 is the state factor for the national average. Pick a state and that single number changes; every other figure in the table stays where it is. Run the same nine steps with the low coefficients and the same room costs $1,587.36; with the high coefficients, $3,187.54.

What the size band does

Carpet, mid grade, average scenario — the four bands, and what each part of the price does across them:

Band Project size Labor rate Material rate Extras rate
d1 under 100 sq ft $1.969295 $3.82743 $1.311902
d2 100 to 500 sq ft $1.575436 $3.82743 $1.311902
d3 500 to 1,500 sq ft $1.417893 $3.82743 $1.311902
d4 above 1,500 sq ft $1.339121 $3.82743 $1.311902

Labor per square foot falls by about a third between the smallest and the largest band. A closet does not get a volume discount on carpet, and it does not get one on pad — it gets one on the installer’s setup time, spread over more floor.

The material term

Our material rate is not a shelf price. For each grade, and for each of the three scenarios, the same short chain runs:

list-price percentile × (1 + waste allowance) × (1 + margin) = material rate

For mid-grade carpet, the priced set is 7 products from 3 retailers at $2.09, $2.19, $2.39, $2.58, $2.89, $3.21 and $3.50 per square foot, which gives a 25th percentile of $2.29, a median of $2.58 and a 75th percentile of $3.05.

Scenario Price Waste Margin Material rate
Low $2.29 5% 33% 2.29 × 1.05 × 1.33 = $3.197985
Average $2.58 7.5% 38% 2.58 × 1.075 × 1.38 = $3.82743
High $3.05 10% 43% 3.05 × 1.10 × 1.43 = $4.79765

The waste allowance is the published overage for the material and installation pattern, not a buffer we invented. The margin covers contractor overhead and profit and comes from NAHB Remodelers’ gross-margin data, converted from margin on revenue into a markup on direct costs: the record-low year (24.9% gross margin) works out to 33%, the two-decade-high year (29.9%) to 43%, and 38% is the midpoint of the two documented years.

The margin sits inside each part, not on top of the sum. The calculator shows material, labor and extras as three separate lines, so each carries its own margin before the three are added. There is no fourth step in which a markup is applied to the total.

Four things that are not in the material rate, because they are the questions people ask most often:

  • No base fee. The material rate is pure dollars per square foot; its flat amount is zero.
  • No blending across grades. Basic, mid and premium each carry their own independently computed rate. The 3.3× spread between basic and premium is price spread from the survey, not a model setting.
  • No size discount. The rate is identical in all four bands.
  • No pad. Cushion and tack strip are their own required lines and run through extras.

The labor term

Labor is a wage times an amount of time, and both halves are sourced separately.

  • The wage comes from the U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, May 2025 release, read by occupation code and state. Each item on the site is tied to one code — carpet installation to SOC 47-2041 — rather than to a generic construction wage. BLS data is public domain (17 U.S.C. §105) and the release is linked on every page that uses it.
  • A published wage is not what an hour costs an employer, so the wage is lifted to full employer cost using a factor of 1.44 for construction, inside a band of 1.39 to 1.67 across nonunion and union compensation structures. All three come from the BLS Employer Costs for Employee Compensation survey, the ratio of total compensation per hour worked to wages and salaries alone.
  • The time comes from published productivity figures — public-domain estimating handbooks issued by U.S. military engineering commands, trade sources that state a crew, an area and a duration, and installer figures with a stated quantity behind them. Sources are recorded per item and listed on the page that uses them. For carpet, the model works from 0.011, 0.021 and 0.029 labor hours per square foot, which is 3.74, 7.14 and 9.86 hours for that 340 sq ft room.

Where a source measures hands-on installation only, its figure is scaled once to full job time, which is what a homeowner is actually billed for. That adjustment applies to hours, never to prices, and it is applied a single time rather than tuned until the output matches something.

We publish the honest caveat that goes with those hours: several underlying sources do not state crew size or the exact scope of work, so the hours behind an estimate are a range, not a measured crew day.

Why 44 states and not 50

State figures cover 44 of the 51 US state-level areas (the 50 states plus the District of Columbia). Six are absent because the May 2025 BLS release does not publish a wage for the relevant occupation there: District of Columbia, Maine, North Carolina, North Dakota, Rhode Island and Wyoming. One more, New Jersey, has a published wage that produces a state factor outside the plausibility band we fixed before looking at the data, so we treat it as an artifact. In all seven cases we leave the row out rather than quietly show a national number wearing a state’s name.

Because only labor moves with geography, the geographic spread on the finished price is far narrower than the spread on wages. For carpet the state factor runs from 0.6715 to 1.7066 — roughly two and a half times on that one line — while the installed average across the 44 states travels only from $6.75 to $8.50 per square foot.

Extras: what is in the base price, and what is a switch

The extras line is not a contingency. It holds named items with their own sourced prices, split into two groups.

Required, because the standard method needs them. Each item has one standard installation method — the method its labor hours were researched for — and whatever that method cannot be done without is in the base price. Carpet is stretch-in over cushion, so the base price carries carpet pad ($0.46–$1.17 per sq ft), tack strip ($0.05–$0.07 per sq ft) and transition strips ($0.02–$0.13 per sq ft). Alternative methods are documented in the text, not added as extra charges — gluing a floor down instead of nailing it is a different job, not a surcharge on the same one.

Optional, and off until you switch them on. For carpet that is four switches: removing old carpet ($0.70–$1.60 per sq ft), moving furniture ($25–$75 per room, figured for one room), stairs ($10.00–$45.00 per step, figured for a 13-step run) and subfloor preparation ($1.75–$10.00 per sq ft). They are off by default because they are not part of the job everyone means when they ask what a floor costs — and because the published prices for them disagree with each other more than any other line in the model.

How the band around each item is set. With three or more independent data points, the low and high ends are the 25th and 75th percentiles, which keeps a single outlying price from stretching the band. With one or two, we use the minimum and maximum instead. Narrowing a source’s own published spread by 25% on each side, purely because we only have one source for it, would make the model look more certain than the evidence is.

The $300 minimum job charge

Below $300 of calculated work, the shortfall is added and the difference goes to the extras line, which keeps material + labor + extras equal to the total in every case. Small jobs really are priced this way: most of what you pay for a closet is the trip, the measure and the setup, not the floor. The consequence is visible and intended — the per-square-foot number for a tiny room is much higher than for a bedroom.

Where each number comes from

Layer Source Vintage What we do with it
Wages BLS Occupational Employment and Wage Statistics, by SOC code and state May 2025 release Base hourly wage per trade per state
Employer cost factor BLS Employer Costs for Employee Compensation Construction, Q4 2025; union/nonunion band from the 2022 release 1.39 / 1.44 / 1.67
Margin NAHB Remodelers’ Cost of Doing Business Study FY2021 and FY2024 gross margins 33% / 38% / 43% markup on direct costs
Material prices Online list prices, collected item by item at one reference market (Dallas, Texas) with product, retailer, price and date recorded Carpet: 23 products from 3 retailers, collected August 24, 2026 Percentiles per grade
Labor hours Public-domain government estimating handbooks and trade sources that state a quantity Recorded per item, listed per page Consolidated hours per square foot
Accessories and job extras Published product and service prices, per line item August 2026 Band per item, per the rule above

Every page carries the sources behind its own numbers, with the date each was retrieved.

What the number does not include

  • Removal and disposal of the floor you have now — optional switch, off by default.
  • Furniture, stairs and subfloor repair — optional switches. The furniture line is figured for one room per job, so a whole-home quote needs more than the box allows.
  • Sales tax, permits and floor-level surcharges. The model has no line for them.
  • Local material pricing. Material is priced at one reference market and does not move by state; only labor does. In a state with unusual freight or a thin local market, the material side of our number will be off in a way our state factor cannot see.
  • Anything the model cannot see. Layout, site access, stair count, the condition under your old floor, and how badly a contractor wants the job in April.

How we handle conflicting sources

Published sources disagree, and the order we trust them in is fixed in advance.

  1. Installation standards and trade association guidelines rank first: they describe the method the work is measured against.
  2. Manufacturer instructions and warranty conditions come next, because they bind the specific product you are buying.
  3. A retailer’s figure comes after that — current and real, but written to sell one item.
  4. Cost guides and cost portals rank last.

A disagreement is only named on a page when it changes what you should do. Then it gets one sentence and a recommendation: plan on the more conservative figure and confirm it with the installer before you order. Where the difference does not change the decision, the higher-ranked source is used and the other still appears in the source list.

We never average two sources into one number. A midpoint between figures measured different ways looks precise and supports nothing.

Every source behind a page is listed there with the date it was read. Passages trimmed from a page do not take their evidence with them; the source stays listed.

Our own cost figures sit outside this ranking: material, labor and extras come from BLS wage data, list prices we collected ourselves, and researched labor hours. A cost guide is something we check the result against, never an input.

How the numbers get checked

Thresholds are written down before a measurement runs, so a failing check cannot be talked into a pass afterwards.

  • No page without complete data. A cost page is only built when all three layers exist for that item, with sources. There are no category averages and no placeholder defaults filling a gap — items whose labor or price data we could not source stay unpublished, and several currently are.
  • Automated gates. Each page passes six checks before it can be exported, covering data completeness, plausibility bands per material, the ordering between materials, and the calculator’s own numbers.
  • Comparison against the published market. Our finished ranges are compared with other published cost guides across items and states — most recently 20 comparison points, of which 17 (85%) came out plausible or were resolved by individual analysis, against a threshold of 80%. The median difference across those points was −11.6%, inside the ±15% band that would otherwise force a recalibration round. Three points remain flagged, all of them one material sitting below one guide’s range; the gap is documented rather than smoothed away.
  • Two implementations, checked against each other. The calculator that runs in your browser and the pipeline that builds the page are separate pieces of code. Sixty stored test cases are run through both, and the build stops if any result differs by a cent. The pipeline is also run twice on the same data and the outputs compared byte for byte, so a number that changes without a reason changes nothing.

How current this is, and when it changes

Every page shows the date of the data behind it, and that date does not move unless the data moved. The page’s structured data and the sitemap carry the day the page was published and the day it last changed, written from the same fields.

Layer Refresh
Wages Annually, on the BLS release cycle
Material prices Rolling; a page is rebuilt when the underlying median moves by more than a few percent
Labor hours Reviewed annually, and whenever a better source turns up

Pages are refreshed when the data behind them changes, not on a calendar. A cost page that updates every morning is not fresher than one that updated when a price moved — it just has a script running. The year in a page title moves when the data moves, for the same reason.

Limits

These are national and state-level ranges built from published data. They are not a quote, and they are not a number to hold a contractor to. A contractor pricing your actual job can see things this model cannot: the exact layout, the access, the local permit situation, the condition under the old floor, and their own overhead. Published sources also disagree with each other far more than most cost guides admit — for some line items the published bands do not even overlap. Where that happens we say so on the page instead of averaging the disagreement into a single confident-looking number.

Use these figures to build a budget, to sanity-check a bid, and to know which line of a quote to ask about. Then get the quote.

Corrections

If a source has been updated, or a number here looks wrong, tell us: [email protected]. Corrections are made on the page concerned, not edited in silently. How pages are written, checked and funded is set out in the Editorial Policy.