Budgeting
You can calculate a markup from net production costs or from a subtotal, and you know why the grand total is not on offer.
A handling fee is normally a percentage of everything the production costs before markups. That figure is `NPC`:
| Base | % | | ----- | - | | `NPC` | 7 |
`NPC` is the sum of all accounts **excluding markups** — which is what makes it usable here at all. A markup calculated on a total that included markups would include itself.
`GT` — the grand total, markups included — **cannot be used in a budget expression at all**, in a markup base or anywhere else. It is available only inside a variable.
The reason is the circle above: markups feed the grand total, so a markup calculated from it has no stable answer. Rather than let you build one that quietly settles on a wrong number, the field does not offer it.
Where a markup genuinely must include an earlier markup — a contingency on production costs *plus* the handling fee — insert a **subtotal** after the handling fee and use that as the base:
| Base | % | | ----------------------- | - | | `SubtotalAfterHandling` | 5 |
The subtotal is a fixed point in the order, so the calculation is well defined in a way `GT` never is — see [use subtotals as variables](/kb/article/use-subtotals-as-variables).
Ask what the base contains. If it could contain the markup you are calculating, you need a subtotal placed before it, not a bigger total.
Markdown