Pricing

Markup vs margin: why a 20 percent markup is not a 20 percent profit

By Holden Marsh, Editorial Director6 min read

A rusty lumber yard cart loaded with pressure-treated posts, a cardboard box, and a bag of concrete mix, with a gloved hand on the handle and a supply-house receipt lying on top of the wood, on wet gravel under an overcast sky.

TL;DR: A 20% markup produces a 16.7% margin. To earn a 20% margin, you need a 25% markup. A 10% discount on a job with a 20% margin cuts the gross profit in half.

A pattern comes up again and again when shop owners talk about pricing. The owner says, “I put 20 percent on everything,” and in the same breath says the year was the busiest they have had but there is nothing left in the account.

When you walk through one real job with them, the 20 percent was markup, not margin. It was taken off cost that left out the truck, the insurance, and the hours spent on estimates. Then a “10 percent off if you sign this week” took half of what was left.

Nobody did anything wrong on the job site. The math was wrong at the kitchen table.

Markup and margin use the same dollars on different bases

Markup is the amount you add on top of job cost, shown as a percent of cost.

Margin is the amount left after job cost, shown as a percent of the selling price.

The dollars can be the same. The percentages cannot.

Take a job with $10,000 in cost. That includes labor, materials, subs, dump fees, and permits for that job. Add a 20% markup:

  • Job cost: $10,000
  • Markup: $2,000
  • Selling price: $12,000
  • Margin: $2,000 divided by $12,000, or about 16.7%

The markup is 20%. The margin is about 16.7%.

Price is bigger than cost. That is why margin is always the smaller percentage.

These are simple illustrative examples. They are not industry averages.

The margin you want tells you the markup to charge

If you know the margin you need, the math gives you the markup.

Markup = margin divided by (1 minus margin)

The simple pricing version is:

Price = cost divided by (1 minus margin)

For a 20% margin:

  • $10,000 divided by 0.80 equals $12,500
  • Gross profit is $2,500
  • $2,500 divided by $12,500 equals 20%

Gross profit means the money left after the direct cost of that job, before overhead comes out.

For a 30% margin:

  • $10,000 divided by 0.70 equals about $14,286
  • The markup is about 42.9%

Here are the same calculations in a short table:

Margin you want Markup you need
10% About 11.1%
20% 25%
25% About 33.3%
30% About 42.9%

Use the formula when you set prices. Do not add a percentage to cost and call that same percentage your profit.

A 10% discount can remove half the gross profit

Start with the $10,000 job cost and a $12,500 selling price. That price produces a 20% margin and $2,500 in gross profit.

The customer asks for 10% off.

The new price is $11,250. The cost is still $10,000. Gross profit is now $1,250.

The price went down by 10%. Gross profit went down by 50%.

That is why a discount is not a small change when your margin is already built into the price. If you give a discount, take scope out with it, or know exactly what it costs you before you say yes.

Overhead gets paid before the job creates real profit

Job cost does not include every cost of running your shop.

Overhead includes truck payments and fuel between jobs, insurance, licenses, phone, software, office costs, tools that wear out, and the owner’s time spent estimating and on the phone instead of working.

The margin on each job has to pay overhead first. What remains after overhead is the real profit.

That is why a busy year can still leave little money in the account. The jobs may have produced gross profit, but the gross profit may have only covered the shop’s overhead.

Add up last year’s overhead from your books. Compare it to last year’s total gross profit, which is sales minus job costs. If gross profit barely covered overhead, the markup is too low, no matter how busy the year was.

Ask your bookkeeper or accountant to help pull the numbers if the books are messy. This is a pricing check, not a tax decision.

One flat percentage can lose money on small jobs

Small jobs carry the same drive time, estimate visit, and phone calls as big jobs. A flat percentage on a small job often does not cover that job’s share of overhead.

Many shops use a minimum job charge for this reason.

Labor and materials can also be priced differently. Keep them on separate lines in your own estimate so you can see each one.

That separation gives you a clearer record of what changed. If labor ran high, you can see it. If material cost moved, you can see that instead. A single percentage over the whole job hides those differences.

Finished jobs tell you which estimates are wrong

Check every finished job against its estimate.

Do it the week the job closes, while receipts and memory are fresh. Write down:

  • Estimated labor hours versus actual labor hours
  • Estimated material cost versus actual material cost
  • Any change orders

After a handful of jobs, patterns show up. One type of job may always run over on labor. One supplier’s prices may keep rising.

Fix the estimate for that job type, not just the one job.

This also gives you a test for your markup. If the estimate says a job should produce a certain margin but actual labor and material costs erase it, the price was not strong enough for the work being sold.

Bella can repeat the price range you approve

Bella is Nail the Call’s AI receptionist. She answers every call 24/7, works out the job, and books the visit on your real calendar while your hands are full.

On price, Bella can give the range you set. She will never quote a number you did not approve.

Your price ranges are part of her setup, and you can change her answers any time. When you redo your markup math, update the ranges she gives callers the same day. Every caller then hears the new range, instead of an old number living on in your head and in old habits.

After every call, Bella texts you a summary, including the job and the caller’s budget. You know before the visit whether the job fits the price you need.

Bella does not do your estimates, job costing, or bookkeeping. Your books and finished-job checks still belong to you.

Pricing is flat monthly:

  • Starter: $95 per month
  • Growth: $295 per month
  • Pro: $495 per month

There are no per-call limits, no per-minute meter, and no overage fees. Call Nail the Call at (628) 895-9788.

Check these numbers before your next estimate

Write down the direct cost of the job. Decide the margin you need. Use this formula:

Price = cost divided by (1 minus margin)

Keep labor and materials visible on separate lines. Do not treat the markup percentage as the margin. Do not approve a discount until you know what it removes from gross profit.

Then, the week each job closes, compare estimated labor and materials with actual results. Update the estimate for the job type when the pattern appears.

If you change your price range, update Bella’s approved range the same day. Your estimate, your caller’s expectation, and the price you need should all say the same thing.

Keep reading

See it in action

Book a short walkthrough and we’ll show you Bella taking a call for a shop like yours.

  • Book a walkthrough

    15 minutes, no pitch deck.

  • Or just call us

    (628) 895-9788