Budgeting
You can base a markup on net production costs, or on net production costs plus an earlier markup, and you know why the grand total is not offered.
A markup, such as a handling fee or a contingency, is a percentage of the value in its **Base**. As a base, KOSMA offers `NPC`, the net production costs without markups.
In the markups grid, double-click the markup's **Base** cell and enter `NPC`. You can also pick `NPC` in the menu that opens, under  **Functions** or under  **Variables**, then  **Subtotals**. To find the markups grid and add a markup, see [add and edit markups](/kb/article/add-and-edit-markups).
| Base | % | | ----- | -- | | `NPC` | 10 |
`NPC` adds up the totals of all accounts that are not deactivated, including the accounts where KOSMA collects fringes and taxes. It leaves out every markup, so a markup based on `NPC` never includes itself or any other markup. In the demo budget *How KOSMA Calculates*, **Contingency** is 10 % on `NPC`: with `NPC` at 14,750, KOSMA shows 1,475.
`GT` is the grand total: `NPC` plus every markup that is not deactivated. A markup based on `GT` would be part of `GT` itself and could never be calculated. No field in accounts, markups or fringes offers `GT`, not even **Base**. If you type `GT` into **Base**, KOSMA keeps the previous formula when you leave the cell.
Three places accept `GT`: the formula of a variable, a value in the **Info** widget on the topsheet, and the **Amount** of a financing plan.
To include an earlier markup, multiply `NPC` by 1 plus that markup's rate. For a 5 % contingency on the costs plus a 7 % handling fee, enter `NPC*1.07` in **Base**:
| Base | % | | ---------- | - | | `NPC*1.07` | 5 |
In a formula, write decimals with a point, because a comma separates the arguments of a function. Only a field that holds a plain number and no formula also accepts a comma: `1,07` is stored as `1.07`.
Instead of the formula, you can enter a variable in **Base**, for example `NPC_Handling` defined as `NPC*1.07`. For the steps, see [calculate a fee on costs plus the handling fee](/kb/article/use-subtotals-as-variables).
A **Subtotal** row in the markups grid is not a variable and does not appear under **Subtotals**. No formula can read it, so it cannot be a base.
Markdown