Markup vs margin in a freight bid, explained
Two brokers can both say they bid with a 15 percent margin and mean different prices. One added 15 percent to the carrier cost. The other priced so that 15 percent of the sell rate is profit. On a single load the difference is small. Across a few hundred lanes in an RFP it adds up, and if a team mixes the two it can quietly underprice a whole bid.
This guide separates the two, shows the conversion, and works one lane from buy rate to all-in bid. It pairs with the method in how to price a freight RFP from your rate history.
What is the difference between markup and margin?
- Markup is the profit as a share of the carrier's cost, your buy rate. Sell rate = buy rate x (1 + markup).
- Margin is the profit as a share of the sell rate. Sell rate = buy rate / (1 - margin).
The profit in dollars can be identical. Only the base you divide by changes. Markup divides by the smaller number (cost), so for the same dollars it is always the larger percentage. Margin divides by the larger number (price), so it is always the smaller.
What does 15 percent give on one lane?
Take a dry-van lane with an average carrier buy rate of $1,850. This is an invented figure for illustration.
Markup of 15 percent on cost
- Profit = $1,850 x 0.15 = $277.50
- Bid linehaul = $1,850 + $277.50 = $2,127.50
- Margin on the sell rate = $277.50 / $2,127.50 = 13.0 percent
Margin of 15 percent on the sell rate
- Sell rate = $1,850 / 0.85 = $2,176.47
- Profit = $2,176.47 - $1,850 = $326.47
- Markup on cost = $326.47 / $1,850 = 17.6 percent
So "15 percent" produced a linehaul of $2,127.50 one way and $2,176.47 the other, a $48.97 difference on one lane. Multiply that by the number of loads you expect on the lane and then by the number of lanes.
How do you convert a margin into a markup?
| If you want this margin on price | You need this markup on cost |
|---|---|
| 10 percent | 11.1 percent |
| 12 percent | 13.6 percent |
| 15 percent | 17.6 percent |
| 20 percent | 25.0 percent |
| 25 percent | 33.3 percent |
The formula for the table is markup = margin / (1 - margin). Going the other way, margin = markup / (1 + markup).
Should fuel go on the buy rate or the bid linehaul?
Many RFPs ask for fuel to be shown separately or folded into an all-in rate. How you calculate it should follow what the shipper's instructions say and what your carriers charge you. Shippers often publish their own fuel schedule, frequently tied to the weekly average US diesel price that the U.S. Energy Information Administration publishes and commonly expressed per mile, so check the RFP before you assume a method.
If you use a simple percentage of the bid linehaul, the arithmetic continues the example above:
- Bid linehaul = $2,127.50 (15 percent markup)
- Fuel at 20 percent of linehaul = $425.50
- All-in bid = $2,553.00
Notice what this does: because fuel is a percentage of the marked-up linehaul, your markup carries into the fuel line too. Twenty percent of the $1,850 buy rate is $370.00, but 20 percent of the $2,127.50 bid linehaul is $425.50. If you want fuel passed through without markup, apply the percentage to the buy rate instead: $2,127.50 + $370.00 = $2,497.50 all-in, $55.50 less on this one lane.
That simple percentage is a convenient way to model a bid, not a statement about how any particular shipper or carrier handles fuel. If your carriers bill fuel on top of their linehaul, the buy rate in your history may or may not already include it. Decide which, write it down, and use the same treatment on every lane.
How do you keep the two apart on a team?
- Name the base. Write "markup on buy rate" or "margin on sell rate" next to the percentage, every time.
- Show the other number. Display the equivalent margin beside a markup, or the equivalent markup beside a margin, so the team sees what the percentage means in the other terms.
- Name the fuel base too. Write down whether fuel is a percentage of the buy rate or of the bid linehaul, since the two give different all-in bids.
- Do not mix reports. If your accounting reports gross margin on price and your bid sheet uses markup on cost, label both.
- Check your accountant's definitions. How your books define gross margin and treat pass-through charges is a question for your accountant.
For the matching errors that happen alongside these, see freight RFP pricing mistakes.
How LaneMapper does this step
LaneMapper takes a markup on your buy rate (a percentage) and a fuel surcharge percentage as inputs. The workbook labels it "Markup on buy rate %", not margin. For each pre-filled lane it computes the bid linehaul as buy rate x (1 + markup), then the all-in bid as bid linehaul x (1 + fuel). Fuel is applied to the marked-up linehaul, not to the buy rate, so the markup carries into the fuel line as described above. With 15 percent and 20 percent, every all-in bid is the buy rate x 1.38 (that is, 1.15 x 1.20), which turns the example lane above into $2,553.00.
The percentages sit on a settings sheet in the mapped-lanes workbook, and the workbook uses live formulas, so you can change them and see every lane update. The arithmetic is done by code, not by the AI model, and flagged lanes with no history stay empty, so no percentage is applied to a rate that does not exist. The fuel treatment is a simple percentage of the linehaul. If the shipper publishes its own fuel schedule, check how it applies before you submit.
It costs 7 credits per lane, with no subscription. Create an account to try it.
Questions
- Which should I use in an RFP, markup or margin?
- Either works if you use it consistently and label it. Many brokers report margin as a share of the sell rate, so if your bid sheet adds a markup to carrier cost, convert before you compare the two.
- Does fuel count as part of my margin?
- That depends on how the shipper and your carriers treat it. If fuel is passed through at cost, it should not be counted as profit. Check how the RFP wants fuel shown and how your carrier agreements handle it.
- Is the gap between markup and margin always the same?
- No. The gap widens as the percentage grows. A 5 percent margin needs a 5.3 percent markup, while a 25 percent margin needs a 33.3 percent markup.
Your next RFP, mapped before the deadline.
Create an account, upload the file, download the priced lanes.