6 min read · Updated October 29, 2026

How to quote a job without losing money on it

A quote does two jobs. It wins the work, and it is the thing you argue from when the job turns out to be bigger than anybody thought. Most quotes that lose money were not priced wrong — they were written loosely, and the loose part got expensive.

Markup is not margin, and the gap is bigger than it sounds

This is the single most expensive piece of arithmetic in the trades. Markup is what you add to your cost. Margin is what you keep out of the price. They are different numbers, and people use them interchangeably.

A part costs you $100. Add 20% markup and you charge $120. Your margin on that is $20 out of $120, which is 16.7% — not 20%. To actually keep a fifth of the price, you have to charge $125, which is a 25% markup.

The gap gets worse as the number gets bigger. A 50% markup is a 33% margin. If you have been quoting at what you thought was a 40% margin by adding 40%, you have been running at 28.6% for years. The markup vs margin calculator converts between the two in both directions.

Price the whole job, not the obvious part

The visible work gets priced accurately because it is the part everybody is thinking about. What gets missed is everything wrapped around it.

Go through the job in your head from leaving the yard to driving away, and price what you find.

  • Driving there and back, and a second trip if parts will not all arrive at once
  • Picking up materials, and the time spent at the supplier
  • Protecting the space, and cleaning up afterwards
  • Disposal — of the old unit, the packaging, the spoil
  • Permits and inspections, including waiting for the inspector
  • The apprentice or second person, if you need one for an hour
  • Equipment hire, and the day you pay for but do not use

Write down what the price does not include

Every quote that ended in an argument was missing this section. It costs four lines to write and it is the only thing standing between you and doing the extra work for free.

Say what you are assuming: that the existing wiring is sound, that there is access to the crawl space, that the walls are what they look like. Say what happens if an assumption turns out to be wrong — usually that you stop and re-quote the difference, not that you absorb it.

Say how long the price is good for. Material prices move, and a quote from four months ago is not a price any more.

Give options rather than one number

A single price is a yes-or-no question, and a certain share of those answers will be no. Two or three options turn it into a which-one question, which is a much easier question for a customer to answer.

The useful version is not three prices for the same thing. It is the repair, the proper fix, and the replacement — genuinely different scopes with honestly different prices. Let the customer pick what they can afford rather than deciding for them that they want the cheapest.

Get it out fast

A quote the customer gets while they are still thinking about the problem is worth more than a better quote they get a week later. If three people looked at the job, the one who sends a price that evening is often the one who gets it, whether or not they were cheapest.

Which is really an argument for being able to build a quote from a saved price list on a phone, in the driveway, rather than back at a desk on the weekend.

Handle the change properly

The customer asks for something extra while you are on site. It seems small, you say yes, and it never gets onto the invoice. Do that four times a job and the margin is gone.

Price it, send it as its own small quote, and get a yes before you do it. The conversation feels awkward once. It is a great deal less awkward than an invoice at the end that is $900 more than the number they remember agreeing to.

Then look back at what the job actually cost

This is the step everybody skips, and it is the one that makes next year's quotes better. When the job is done, put the real hours and the real material cost against the quoted figures.

You are looking for the job types where you are consistently wrong in the same direction. Almost every shop has one — the job they have quoted the same way for years and lost money on every time, without ever adding it up.

The short version

  • Decide whether you are working in markup or margin, and convert properly
  • Price the drive, the supplier run, the clean-up and the disposal
  • Write down what the price excludes and what you are assuming
  • Put an expiry date on the quote
  • Offer two or three genuinely different options
  • Send it the same day if you can
  • Price every change as its own quote and get a yes first
  • Compare quoted against actual when the job is done

Questions people ask

What markup should I put on materials?

There is no single right answer, and anyone who gives you one does not know your business. You are carrying the cost, the risk and the warranty on those parts, so a markup is normal and expected in the trades. Pick a number you can defend, apply it consistently, and check it against what your jobs actually return.

Should I charge for quoting?

Many shops charge a diagnostic or call-out fee and credit it against the work if the customer goes ahead. That is the common middle ground: it stops free diagnosis being given away, without making the quote itself a barrier.

How long should a quote stay valid?

Long enough for a normal decision and short enough that material prices have not moved. Thirty days is typical. The important thing is that there is a date on it at all.

Can the customer accept a quote without signing something?

In JobPanel they accept it from the email, and the job is updated when they do. Whether that is enough for your purposes is a question for your own advisor — contract requirements vary by state and by the size of the job.

Doing this on every job?

JobPanel keeps your prices, customers and jobs in one place so the paperwork fills itself in. From $25/mo, 15 days free, no card required to sign up.

Start my free trial →