Plan Bookkeeping
Purpose
The bookkeeper tallies tactic, group, and subgroup investments in real time so you have full transparency into the constraints you’ve applied, and can verify none of them conflict with a higher-level constraint, or the overall plan budget.
This feature supplements the bulk constraint and uploaded budget workflows by reflecting and summing uploaded/entered values.
Accessing the Feature
The feature is automatically enabled in all single-segment plans (and is slated to expand into portfolio plans in the future). It includes two major pillars:
Plan-Level Totals
The Applied field sums all investments across the plan
For plans with the Optimize Fixed Budget objective, the Target and Left Over fields reflect (a) the top-level budget and (b) the remaining optimizable budget, after accounting for everything that has been Applied.
In-Table Sums
Every tactic within a group or subgroup is tallied
Applied Summation Logic
Your plan is a tree:
Group
Subgroup
Tactic
Ungrouped tactics roll up directly to the overall plan.
We always calculate from the bottom up (tactics → subgroups → groups). As we move up the tree, each node contributes exactly one number to its parent:
If a node has its own investment set (a group or subgroup budget), we use that number.
If it doesn’t have its own investment, we use the sum of its children.
Ungrouped tactics contribute their tactic amount directly to the nearest parent group.
So a group’s subtotal =
(subgroup investments, if present) + (sum of tactics from subgroups without a set amount) + (ungrouped tactics).
Tip: When a subgroup (or group) has a budget set, that single number “stands in” for all of its children when the parent subtotal is computed.
Constraint Types
Constraints can be any of four types:
Fixed (an exact number)
Minimum only
Maximum only
Range (both min and max; if equal, that’s Fixed)
Validation & Requirements
In all cases, conflicting inputs are flagged at the level where the problem occurs. Every group/subgroup is validated against its own children and adjustment is required before proceeding the plan simulation.
No individual investment may exceed the overall plan budget, if one exists.
No individual investments may exceeds its parent’s budget.
No child’s minimum can exceed its parent’s budget.
The sum of all children’s minimums cannot exceed the parent’s fixed budget.
The sum of n‑1 children’s minimums cannot exceed the parent’s fixed budget.
(So there’s still room for the last child.)The sum of all children’s maximums must be at least the parent’s fixed budget.
(Otherwise there isn’t enough capacity to reach the parent’s number.)If the parent is fixed and all children are fixed, the totals must match exactly.
Overconstraining a plan in this way is permissible but not recommended, i.e. if a group includes 5 tactics, with investment constraints of $10K apiece, it is permissible but unnecessary to constrain the group to $50K.
Note: when tactics use non-fixed constraints, the Applied field uses the lower end of the range (the minimums defined) to compare against higher-level requirements.
Pro Tip
If you wish to leverage this functionality on a fully constrained plan, select the Maximize Profit objective and use the Upload Budgeted Tactics button (instead of the Forecast a Plan objective).