# What Is Markup?

Markup is the amount added to a job's cost to set its selling price, usually stated as a percentage of cost. Markup % = (Price − Cost) ÷ Cost × 100. A water heater that costs a plumber $700 and sells for $980 carries a $280 markup, or 40%. Markup has to cover overhead and profit.

## Key takeaways

- Markup is measured against cost. Margin is measured against price. The same job always shows a bigger markup than margin.
- Price = Cost × (1 + Markup %). A 50% markup on $1,000 of cost is a $1,500 price.
- Markup has to pay for overhead (trucks, office, insurance, phones) and still leave profit. If it only covers overhead, you worked for free.
- Most trades shops use different markups for materials, equipment, subcontractors and labor rather than one number for everything.
- Small, cheap parts usually need a higher markup percentage than big-ticket equipment, because the cost of handling them doesn't shrink with the price.

## How does markup work?

Markup works by starting from what a job costs you and adding a percentage on top to reach the price the customer pays. The added dollars are your gross profit on that item. They're the only money available to pay [overhead](https://www.brix.so/learn/overhead) and leave a profit, so the markup you pick decides whether the job is worth doing.

Take a roofer quoting a full tear-off and replacement. Shingles, underlayment, flashing and vents come to $5,200. The crew's [burdened labor](https://www.brix.so/learn/labor-burden) for three days is $3,800. Dumpster and permit add $600. That's $9,600 of direct cost. If the roofer prices the job at $14,000, the markup is $4,400 on $9,600 of cost, or about 45.8%.

**Markup formulas**

```
Markup % = (Price − Cost) ÷ Cost × 100   |   Price = Cost × (1 + Markup %)
```

Where:
- Cost = everything the job costs you directly: materials, equipment, subcontractors and burdened field labor
- Price = what the customer pays, before sales tax
- Markup % = written as a decimal in the second formula (40% = 0.40)

> **Worked example: pricing a water heater swap**
>
> Illustrative numbers. A plumber buys a 50-gallon gas water heater for $700 and wants a 40% markup on equipment.
>
> Equipment price = $700 × 1.40 = **$980**. Markup dollars = $280.
>
> Fittings, venting and a new flex line cost $85. At a 100% markup on small parts, they bill at $170.
>
> Four hours of labor at a $45 burdened cost is $180 of cost. At a 150% labor markup, that's $450.
>
> Total cost: $700 + $85 + $180 = $965. Total price: $980 + $170 + $450 = **$1,600**. Blended markup = $635 ÷ $965 = 65.8%.

Want to check your own numbers? The [markup and margin calculator](https://www.brix.so/tools/markup-margin-calculator) converts in both directions, and the [job pricing calculator](https://www.brix.so/tools/job-pricing-calculator) builds a full price from materials, labor hours and overhead.

## How much do contractors mark up materials?

There is no single industry markup on materials, because the right number depends on your overhead, your job size and what your market will pay. What does hold across trades: the markup has to recover the real cost of buying, picking up, storing, carrying and warrantying the part, plus profit. A $4 fitting costs you about as much time to source as a $40 one, so cheap parts need a bigger percentage.

That's why many shops use a sliding-scale (tiered) markup instead of a flat percentage. Here's what one looks like. The tiers below are an example to show the shape, not a recommendation; build yours from your own overhead.

**Example sliding-scale markup on parts (illustrative)**

| Your cost per part | Example markup | Example price | Gross profit dollars |
| --- | --- | --- | --- |
| $5 | 200% | $15 | $10 |
| $25 | 120% | $55 | $30 |
| $100 | 75% | $175 | $75 |
| $500 | 45% | $725 | $225 |
| $2,500 | 30% | $3,250 | $750 |

_Percentages fall as cost rises, but profit dollars still climb. Those dollars are what pay the bills._

## What should you mark up on a job?

Mark up every cost that you buy, manage or carry risk on: materials, equipment, subcontractors, rentals, permits you pull and disposal. Labor is marked up too, but usually through your billable hourly rate rather than a line-item percentage. Leaving any cost bucket at zero markup quietly lowers your profit on the whole job.

**Markup by cost type: what it has to cover**

| Cost type | Why it needs a markup | Common mistake |
| --- | --- | --- |
| Materials and parts | Buying time, supply-house runs, truck stock, waste, returns and the warranty callback if a part fails | Passing parts through at cost because the customer can see the price online |
| Major equipment (furnace, condenser, panel, water heater) | Freight, handling, install risk and the labor warranty you stand behind | Using the same percentage as small parts, which can price you out on big tickets |
| Subcontractors | Scheduling, supervision, insurance checks, paying the sub before the customer pays you, and fixing their callbacks | Adding nothing because "the sub does the work". You still carry the risk |
| Labor | Wages plus [labor burden](https://www.brix.so/learn/labor-burden), drive time, non-billable hours and overhead per hour | Billing the tech's wage plus a few dollars, which ignores the hours nobody pays for |
| Rentals, permits and disposal | Pickup, paperwork, inspections and return trips | Forgetting them on the estimate, then eating the cost |

## Markup by trade

Every trade uses markup, but where the money comes from is different. Knowing your trade's cost mix tells you which markup matters most.

**Where markup does the heavy lifting, by trade**

| Trade | Typical cost mix | Where markup matters most | Example (illustrative) |
| --- | --- | --- | --- |
| HVAC | Equipment-heavy on replacements; labor-heavy on service calls | Equipment markup on system swaps; parts markup on repairs | $450 repair ticket: $60 capacitor and contactor, the rest is labor and diagnostic |
| Plumbing | Mostly labor and small parts on service; fixtures on remodels | Small-parts markup and labor rate | $1,600 water heater swap with $700 of equipment |
| Electrical | Labor-heavy; panels and EV chargers are the big material items | Labor rate and panel or charger markup | $2,800 panel upgrade with $650 of panel and breakers |
| Roofing | Materials and crew labor split; dumpsters and permits add up | Whole-job markup over all direct costs | $14,000 replacement on $9,600 of direct cost |
| Landscaping | Plants, stone and mulch plus crew hours; equipment wear | Material markup on installs; hourly rate on maintenance | $4,500 patio with $1,800 of pavers and base |
| Cleaning | Almost all labor; supplies are small | Labor rate (there's little material to mark up) | $180 recurring clean with $8 of supplies |

_Example tickets are illustrative, not industry averages. Use your own job history._

## Is markup the same as margin?

No. Markup is profit divided by cost; margin is profit divided by price. On the roofing job above, $4,400 of profit is a 45.8% markup but only a 31.4% [gross margin](https://www.brix.so/learn/gross-margin). Mixing them up is the most expensive pricing mistake in the trades: a shop that wants a 50% margin and adds a 50% markup ends up with 33%. The full conversion table is in [markup vs. margin](https://www.brix.so/learn/markup-vs-margin).

## How do you choose the right markup?

Work backward from the margin you need, not forward from what a competitor charges. Your markup has to cover overhead as a share of revenue plus your target profit. Once you know that target gross margin, convert it to a markup.

1. **Add up a year of overhead.** Rent, office wages, trucks, insurance, phones, software, marketing and your own salary. See [overhead](https://www.brix.so/learn/overhead) for what belongs in it.
2. **Divide overhead by expected revenue.** $300,000 of overhead on $1,000,000 of revenue is 30% of revenue that every job has to cover.
3. **Add your target net profit.** If you want 10% [net profit margin](https://www.brix.so/learn/net-profit-margin), you need a 40% gross margin across all jobs.
4. **Convert margin to markup.** Markup = Margin ÷ (1 − Margin). 0.40 ÷ 0.60 = 66.7%. That's the blended markup on direct cost you need.

> **Use the blended number as a floor**
>
> Individual line items can go above or below the blended markup (big equipment lower, small parts higher). What matters is that the total job lands at or above it. Check the blended markup on every estimate before it goes out.

## Common markup mistakes

- **Treating markup like margin.** Adding 30% to cost does not give you a 30% margin. It gives you 23%.
- **Marking up unburdened labor.** A tech paid $30 an hour costs you far more once payroll taxes, workers' comp, benefits and paid time off are in. Mark up the [burdened cost](https://www.brix.so/learn/labor-burden).
- **One markup for everything.** A flat 25% on a $5 fitting and a $5,000 condenser leaves money on the small parts and can lose bids on the big ones.
- **Forgetting soft costs.** Permits, disposal, rentals, drive time and the second trip for a forgotten part all belong in cost before you mark it up.
- **Discounting the markup instead of the scope.** When a customer pushes back on price, offer a smaller option (see [good-better-best pricing](https://www.brix.so/learn/good-better-best-pricing)) rather than cutting the markup on the same work.
- **Never checking actuals.** If the job ran two days over, your real markup was lower than the quote. [Job costing](https://www.brix.so/learn/job-costing) shows what you actually earned.

BRIX builds quotes on site from your price list and follows up every open estimate automatically, then turns the finished job into an invoice and syncs it to QuickBooks so you can compare quoted markup with what the job really cost.

- [Quotes and estimates](https://www.brix.so/features/quotes-estimates): Builds accurate quotes on site and follows up on every open estimate.
- [Invoicing and payments](https://www.brix.so/features/invoicing-payments): Turns finished jobs into invoices and politely chases unpaid ones until the money is in your account.
- [QuickBooks sync](https://www.brix.so/integrations/quickbooks): Syncs customers, invoices and payments with QuickBooks so the books match the jobs.

## Frequently asked questions

### How do you calculate a 20% markup?

Multiply your cost by 1.20. A part that costs $150 sells for $180 at a 20% markup, and the $30 difference is your gross profit. That $30 is a 16.7% margin on the $180 price, not 20%.

### What is a good markup for a contractor?

A good markup is one that covers your overhead and leaves the profit you planned. Find your overhead as a share of revenue, add your target net profit to get a target gross margin, then convert it with Markup = Margin ÷ (1 − Margin). A shop needing a 40% margin needs about a 67% blended markup.

### How much do HVAC companies mark up equipment?

It varies by company, market and job size, and there's no reliable published average for small shops. What's consistent is that equipment usually carries a lower percentage markup than small parts because the dollar amounts are large. Set yours from your overhead and target margin, and check it against what replacements actually cost you to install.

### Should contractors mark up subcontractor costs?

Yes, in most cases. You schedule the sub, supervise the work, carry the insurance risk, often pay them before the customer pays you, and handle any callback. A markup on sub costs pays for that. Some commercial contracts cap or fix the allowed markup, so read the contract first.

### Is it legal to mark up materials?

In general, yes. Selling materials for more than you paid is normal business pricing. Some contracts, such as cost-plus or government work, spell out what markup is allowed or require receipts, so follow the contract terms on those jobs.

### What's the difference between markup and profit?

Markup dollars are gross profit: price minus direct job cost. Net profit is what's left after overhead such as rent, office staff, trucks and insurance is also paid. A job can carry a healthy markup and still lose money if overhead isn't covered.

### Do you mark up labor or charge an hourly rate?

Both approaches end in the same place. Some shops add a markup percentage to burdened labor cost; others set a billable hourly rate that already includes overhead and profit. What matters is that the rate covers the tech's wage, labor burden, non-billable hours and overhead before profit.

## Related

- [Markup vs. Margin: What's the Difference?](https://www.brix.so/learn/markup-vs-margin)
- [What Is Gross Margin?](https://www.brix.so/learn/gross-margin)
- [What Is Overhead, and How Do Contractors Calculate It?](https://www.brix.so/learn/overhead)
- [What Is Labor Burden?](https://www.brix.so/learn/labor-burden)
- [What Is Flat Rate Pricing?](https://www.brix.so/learn/flat-rate-pricing)
- [What Is Cost Plus Pricing?](https://www.brix.so/learn/cost-plus-pricing)
- [Markup and Margin Calculator](https://www.brix.so/tools/markup-margin-calculator)
- [Job Pricing Calculator for Contractors](https://www.brix.so/tools/job-pricing-calculator)
- [How to Price Contracting Jobs for Profit: The Complete Guide](https://www.brix.so/guides/how-to-price-jobs)
- [Contractor estimating software that quotes on site and chases every open estimate](https://www.brix.so/features/quotes-estimates)

---
Written by BRIX Editorial Team. Last updated 2026-10-12.
Canonical: https://www.brix.so/learn/markup
