Is your markup quietly costing you margin?

Margin and markup are not the same number, and the gap on this bid is $20,643. Goal Seek finds the markup that lands the margin you asked for.

Construction Starter Goal Seek free

After you install, this is the model to open.

What Markup Gets This Bid to Target Margin?

  1. In your spreadsheet, click the Sortia icon in the strip of icons down the right-hand edge. No strip? Click the arrow at the bottom-right to open it. You can also use Extensions, then Sortia, then Open Sortia.
  2. Click Start from a template and put that name in the search box.
  3. Pick the card with that name and click Load this template. It arrives on a new tab with real numbers already in it.

The answer

The markup you need
21.95% an 18% markup produces only a 15.25% margin
The corrected bid
$637,134 against $616,491 priced from habit
On one package
$20,643 margin the markup habit was giving away

A groundworks and structures package: $486,000 of direct cost, plus 7.5% preliminaries for site establishment, welfare, supervision and temporary works. The sheet opens the way most bids get priced, with 18% added to the cost because the target margin is 18%. Read the margin on the bid price. What that produces is 15.25%, not 18%. A markup is a percentage of what the job costs and a margin is a percentage of what the client pays, and the client always pays more than the job costs.

Click Run and Goal Seek returns a markup of 21.95%. The bid goes from $616,491 to $637,134 and the margin from $94,041 to $114,684, so the gap on one package is $20,643. The comparison line at the foot of the sheet keeps the old answer in view after the run, which is the quickest way to see what the habit was costing. The conversion is worth carrying without a sheet: markup equals margin divided by one minus margin, so an 18% margin needs a 21.95% markup, a 25% margin needs 33.3%, and a third margin means adding half.

Two more runs earn their time. Set To value to 0.10, which is where a competitive tender sometimes ends up, and the markup falls to 11.11% and the bid to $580,500, so you can see how much room there is before the job is being done for nothing. Then point Set cell at the total cost line and By changing cell at labor, with the price you actually mean to submit already in mind, and you get the labor figure the job would have to hit for that price to work, which turns a bid into a target rather than a hope.

What the sheet cannot tell you is whether 18% is the right margin for this job, and it treats preliminaries as a flat percentage where a long or awkward site builds them up line by line. Replace the four cost lines with your own, put your own preliminaries rate in, and if you carry contingency separately give it its own cost line rather than hiding it inside the markup.

The model

It arrives on a tab called Template: Markup for a Target Margin:

Labor ($)214000
Materials ($)168000
Plant ($)61000
Subcontract ($)43000
Direct cost ($)486,000
Preliminaries rate0.075
Preliminaries ($)36,450
Total cost ($)522,450
Markup on cost0.18
Bid price ($)616,491
Margin ($)94,041
Margin on the bid price0.1525

plus 2 more rows on the sheet.

Once it is in your sheet

  1. The model arrives with real numbers in it and runs as it stands, so you can press the button first and understand it second.
  2. Change the numbers to yours. The sheet marks which cells are inputs and which hold formulas, and most labels carry a note explaining the row.
  3. Press the run button at the bottom of the panel. It is labeled for the tool you are in, and the result lands on its own tab, with a written reading of it beside the figures.

Never used Google Sheets? Start here goes the whole way, in seven steps, and assumes nothing.