Caldergate Distribution Group: Anaplan estate (fictional example)

Generated with CodelessOps Estate Review

4 Anaplan models, 426 line items, 145M cells as exported. Export date unknown. Latest recorded action run 2026-09-21. Analysis generated 2026-09-24.

GroupMet the barModels with an action worth doing
Make heavy calculations cheaper2 of 2Caldergate FP&A
Check whether modules are still used1 of 4Caldergate FP&A
Look at where the calculation time goes0 of 2none
Remove duplicated calculations0 of 2none
All candidates3 of 10

Make heavy calculations cheaper (2 of 2 met the bar)

Formulas that take a large share of a model's measured calculation effort and match a pattern with a known, safer alternative.

  1. 1. Consider replacing the long chain of IF tests in the line item 'Forecast Opex' in the module 'CAL03 Opex' with a lookup table

    Caldergate FP&A

    Why
    A long chain of 'if this then that' tests is hard to maintain: each new case means editing the formula, and the mapping is easier to check when it sits as rows in a small table read with one lookup. Whether the table also calculates faster depends on the engine and the formula (Anaplan documents that IF stops at the first true branch), so treat the performance side as something to measure, not assume. In Caldergate FP&A, the line item 'Forecast Opex' in the module 'CAL03 Opex' carries 16.0% of the model's measured calculation effort, which is why it is worth a trial.
    The line item
    Line itemModuleEffortCellsFormula
    Forecast OpexCAL03 Opex16.0%5.0MIF ITEM(Accounts) = Accounts.'6100 Rent' THEN 'INP02 Opex Drivers'.Rent ELSE IF ITEM(Accounts) = Accounts.'6110 Rates' THEN 'INP02 Opex Drivers'.Business Rates ELSE IF ITEM(Accounts) = Accounts.'6120 Utilities' THEN 'INP02 Opex Drivers'.Utilities ELSE IF ITEM(Accounts) = Accounts.'6200 Travel' THEN 'INP02 Opex Drivers'.Travel ELSE IF ITEM(Accounts) = Accounts.'6210 Subsistence' THEN 'INP02 Opex Drivers'.Subsistence ELSE IF ITEM(Accounts) = Accounts.'6300 Marketing' THEN 'INP02 Opex Drivers'.Marketing Events ELSE IF ITEM(Accounts) = Accounts.'6310 Digital' THEN 'INP02 Opex Drivers'.Marketing Digital ELSE IF ITEM(Accounts) = Accounts.'6400 Software' THEN 'INP02 Opex Drivers'.Software Licences ELSE IF ITEM(Accounts) = Accounts.'6410 Hardware' THEN 'INP02 Opex Drivers'.Hardware ELSE IF ITEM(Accounts) = Accounts.'6500 Professional Fees' THEN 'INP02 Opex Drivers'.Consultancy ELSE IF ITEM(Accounts) = Accounts.'6510 Audit' THEN 'INP02 Opex Drivers'.Audit Fees ELSE IF ITEM(Accounts) = Accounts.'6600 Recruitment' THEN 'INP02 Opex Drivers'.Recruitment Fees ELSE 0
    Steps
    1. In a development copy, load the 'case to value' table (listed below) into a small mapping module keyed by the list the tests refer to.
    2. Replace the chain in the line item 'Forecast Opex' in the module 'CAL03 Opex' with a single lookup on that table; keep the old formula in a note until the check below passes.
    3. Export the line item before and after and confirm every cell is equal; read Calculation Effort before and after and keep the change only if it is at least as good.
    Done when
    Every cell is equal before and after, the table holds every case the chain held, and the measured effort is no worse.
  2. 2. Stop repeating text-to-item lookups (FINDITEM) on every cell in Caldergate FP&A (1 formula)

    Caldergate FP&A

    Why
    Anaplan runs a formula once for every cell of a module. When a formula only turns a text value into a label or a list item (for example a month code into a Time item), and that answer is the same for every cell that shares the code, working it out on every cell of a large grid is wasted effort. Moving the formula into a small helper module that has only the list the answer depends on means it is worked out once per item and simply looked up from there. In Caldergate FP&A this applies to the line item 'Journal Cost Centre' in the module 'DAT01 Actuals GL': together 5.0M cells and 6.2% of the model's measured calculation effort.
    The line item
    Line itemModuleEffortCellsFormula
    Journal Cost CentreDAT01 Actuals GL6.2%5.0MFINDITEM(Cost Centres, Source Journal)
    Steps
    1. Open the line item 'Journal Cost Centre' in the module 'DAT01 Actuals GL' (6.2% of measured effort) and note which list its value actually changes with (often Time, or one list).
    2. In a development copy of the model, create a small system module with just that list, put the formula there, and point the places that used the old formula at the new one. Keep the old line item until the check below passes.
    3. Compare the results before and after, and read the Calculation Effort column before and after.
    Done when
    Every value that used the result still matches the original, cell for cell, and the measured effort share has fallen.

Check whether modules are still used (1 of 4 met the bar)

Modules that no formula reads and no export uses; someone has to check pages and views before they can be kept or retired.

  1. 3. Find out whether anyone still uses the module 'CAL05 Opex OLD' in Caldergate FP&A

    Caldergate FP&A

    Why
    A module that no formula reads and no export uses may be left over from earlier work, or it may be read only by pages and views, which the exports do not show. Until someone checks, it can neither be removed nor trusted. In Caldergate FP&A, no formula outside the module 'CAL05 Opex OLD' reads any of its 14 line items and no export reads it; it occupies 70.2M cells and 50.8% of the model's measured calculation effort. That is what it takes up now, not a saving.
    Steps
    1. Ask the page builder whether any page, dashboard, saved view or line item subset still uses 'CAL05 Opex OLD'.
    2. Ask whether another model imports from a saved view on it.
    3. Record the decision: keep, or retire. If retire: make the change in a development copy first, keep the original for comparison, check the owner's key outputs over a full cycle, then sign off.
    Done when
    Every question above has a recorded answer and the owner has signed a keep-or-retire decision.
  2. 5. Find out whether anyone still uses the module 'SYS01 Time' in Board Reporting

    Board Reporting

    Why
    A module that no formula reads and no export uses may be left over from earlier work, or it may be read only by pages and views, which the exports do not show. Until someone checks, it can neither be removed nor trusted. In Board Reporting, no formula outside the module 'SYS01 Time' reads any of its 2 line items and no export reads it; it occupies 72 cells and 2.8% of the model's measured calculation effort. That is what it takes up now, not a saving.
    Steps
    1. Ask the page builder whether any page, dashboard, saved view or line item subset still uses 'SYS01 Time'.
    2. Ask whether another model imports from a saved view on it.
    3. Record the decision: keep, or retire. If retire: make the change in a development copy first, keep the original for comparison, check the owner's key outputs over a full cycle, then sign off.
    Done when
    Every question above has a recorded answer and the owner has signed a keep-or-retire decision.

    Below the bar: the module holds 72 cells and 2.8% of its model's measured effort, below the 50M cells or 5% of effort at which a consumer check is worth someone's time before the actions above.

  3. 9. Find out whether anyone still uses the module 'zz Archive - 2021 Cost' in Workforce Planning

    Workforce Planning

    Why
    A module that no formula reads and no export uses may be left over from earlier work, or it may be read only by pages and views, which the exports do not show. Until someone checks, it can neither be removed nor trusted. In Workforce Planning, no formula outside the module 'zz Archive - 2021 Cost' reads any of its 3 line items and no export reads it; it occupies 13.4K cells. That is what it takes up now, not a saving.
    Steps
    1. Ask the page builder whether any page, dashboard, saved view or line item subset still uses 'zz Archive - 2021 Cost'.
    2. Ask whether another model imports from a saved view on it.
    3. Record the decision: keep, or retire. If retire: make the change in a development copy first, keep the original for comparison, check the owner's key outputs over a full cycle, then sign off.
    Done when
    Every question above has a recorded answer and the owner has signed a keep-or-retire decision.

    Below the bar: the module holds 13.4K cells, below the 50M cells or 5% of effort at which a consumer check is worth someone's time before the actions above.

  4. 10. Find out whether anyone still uses the module 'SYS01 Time Settings' in Caldergate Data Hub

    Caldergate Data Hub

    Why
    A module that no formula reads and no export uses may be left over from earlier work, or it may be read only by pages and views, which the exports do not show. Until someone checks, it can neither be removed nor trusted. In Caldergate Data Hub, no formula outside the module 'SYS01 Time Settings' reads any of its 5 line items and no export reads it; it occupies 180 cells. That is what it takes up now, not a saving.
    Steps
    1. Ask the page builder whether any page, dashboard, saved view or line item subset still uses 'SYS01 Time Settings'.
    2. Ask whether another model imports from a saved view on it.
    3. Record the decision: keep, or retire. If retire: make the change in a development copy first, keep the original for comparison, check the owner's key outputs over a full cycle, then sign off.
    Done when
    Every question above has a recorded answer and the owner has signed a keep-or-retire decision.

    Below the bar: the module holds 180 cells, below the 50M cells or 5% of effort at which a consumer check is worth someone's time before the actions above.

Look at where the calculation time goes (0 of 2 met the bar)

The heaviest calculations in a model that match no known pattern: a place to look with the owner, not a change to make.

  1. 4. Look at the five heaviest calculations in Caldergate Data Hub

    Caldergate Data Hub

    Why
    Anaplan records how much of a model's calculation effort each line item takes. In Caldergate Data Hub, ten line items take 99.9% of it, led by the line item 'Loaded?' in the module 'DAT01 GL Transactions' at 88.3%. None of them matches a known pattern this report can name, so this is a place to look, not a change to make: heavy calculation is often simply the model doing its main job.
    The 5 line items
    Line itemModuleEffortCellsFormula
    Loaded?DAT01 GL Transactions88.3%1.3MJournal Count > 0
    UnitsCAL01 Volume Summary2.9%9.1K'DAT06 Sales Orders'.Units[SUM: 'DAT07 Customer Master'.Region]
    RevenueCAL01 Volume Summary2.9%9.1K'DAT06 Sales Orders'.Order Revenue[SUM: 'DAT07 Customer Master'.Region]
    OrdersCAL01 Volume Summary2.9%9.1K'DAT06 Sales Orders'.Order Count[SUM: 'DAT07 Customer Master'.Region]
    Weighted PipelineDAT05 CRM Pipeline1.8%17.3KOpen Pipeline * Probability
    Steps
    1. With the owner, read the five heaviest formulas (listed below) and note what each one is for and how often it changes.
    2. For each, decide: leave as is, or one named change to try (for example the patterns in the other actions).
    3. Try at most one change in a development copy, reading Calculation Effort before and after.
    Done when
    Each of the five has a recorded decision (keep, or one named change to trial) agreed with the owner.

    Below the bar: this is an observation of where calculation time goes, not a change with a measured benefit; the five line items hold 1.3M cells (under 50M), so it is not worth someone's time before the actions above.

  2. 8. Look at the five heaviest calculations in Board Reporting

    Board Reporting

    Why
    Anaplan records how much of a model's calculation effort each line item takes. In Board Reporting, ten line items take 89.7% of it, led by the line item 'Revenue per FTE' in the module 'CAL01 KPIs' at 11.2%. None of them matches a known pattern this report can name, so this is a place to look, not a change to make: heavy calculation is often simply the model doing its main job.
    The 5 line items
    Line itemModuleEffortCellsFormula
    Revenue per FTECAL01 KPIs11.2%144'DAT02 Board Lines'.Revenue / FTE
    Opex RatioCAL01 KPIs11.2%144DIVIDE('DAT01 P&L'.Opex, 'DAT01 P&L'.Revenue)
    Revenue GrowthCAL01 KPIs11.2%144DIVIDE('DAT02 Board Lines'.Revenue - Revenue Prior Year, Revenue Prior Year)
    EBITDA MarginCAL01 KPIs11.2%144DIVIDE('DAT02 Board Lines'.EBITDA, 'DAT02 Board Lines'.Revenue)
    FTECAL01 KPIs7.5%144'DAT03 Headcount'.FTE
    Steps
    1. With the owner, read the five heaviest formulas (listed below) and note what each one is for and how often it changes.
    2. For each, decide: leave as is, or one named change to try (for example the patterns in the other actions).
    3. Try at most one change in a development copy, reading Calculation Effort before and after.
    Done when
    Each of the five has a recorded decision (keep, or one named change to trial) agreed with the owner.

    Below the bar: this is an observation of where calculation time goes, not a change with a measured benefit; the five line items hold 720 cells (under 50M), so it is not worth someone's time before the actions above.

Remove duplicated calculations (0 of 2 met the bar)

The same calculation kept under more than one name; one copy can be dropped once the reason for the second is ruled out.

  1. 6. Remove 1 duplicate copy of one calculation in Caldergate FP&A

    Caldergate FP&A

    Why
    The same calculation exists more than once under different names, with the same formula and the same dimensions. Two copies can drift apart when one is changed, and each copy takes space and calculation time. In Caldergate FP&A, the line item 'Depreciation' in the module 'OUT01 Management Pack' is the same calculation as the line item 'Depreciation' in the module 'CAL07 P&L by Cost Centre'; the copies occupy 19.2K cells and 0 other formulas read them.
    The 2 line items
    Line itemModuleRoleCellsFormula
    DepreciationCAL07 P&L by Cost Centrekept19.2K'CAL10 Depreciation'.Charge
    DepreciationOUT01 Management Packcopy19.2K'CAL10 Depreciation'.Charge
    Steps
    1. Ask the owner and page builder whether any copy exists for a reason: a page that shows it under that name, an export column, or different access rights.
    2. In a development copy, point the 0 formulas that read the copies at the line item 'Depreciation' in the module 'CAL07 P&L by Cost Centre' instead; keep the copies until the check below passes.
    3. Compare the outputs that depend on them cell for cell, get sign-off, then remove the copies.
    Done when
    Everything that read the copies gives the same values from the kept line item, and the copies are gone with no blank page or missing export column.

    Below the bar: the footprint is small (under 1% of its model's measured effort and under 1M cells), so the gain is unlikely to repay the work.

  2. 7. Remove 1 duplicate copy of one calculation in Workforce Planning

    Workforce Planning

    Why
    The same calculation exists more than once under different names, with the same formula and the same dimensions. Two copies can drift apart when one is changed, and each copy takes space and calculation time. In Workforce Planning, the line item 'Headcount' in the module 'zz Archive - 2021 Cost' is the same calculation as the line item 'Headcount' in the module 'Calcs - Attrition'; the copies occupy 4.5K cells and 1 other formulas read them.
    The 2 line items
    Line itemModuleRoleCellsFormula
    HeadcountCalcs - Attritionkept4.5K'Data - Employees'.FTE[SUM: 'Data - Employees'.Role]
    Headcountzz Archive - 2021 Costcopy4.5K'Data - Employees'.FTE[SUM: 'Data - Employees'.Role]
    Steps
    1. Ask the owner and page builder whether any copy exists for a reason: a page that shows it under that name, an export column, or different access rights.
    2. In a development copy, point the 1 formulas that read the copies at the line item 'Headcount' in the module 'Calcs - Attrition' instead; keep the copies until the check below passes.
    3. Compare the outputs that depend on them cell for cell, get sign-off, then remove the copies.
    Done when
    Everything that read the copies gives the same values from the kept line item, and the copies are gone with no blank page or missing export column.

    Below the bar: the footprint is small (under 1% of its model's measured effort and under 1M cells), so the gain is unlikely to repay the work.

    The module 'zz Archive - 2021 Cost' may no longer be used: do that check first, since a retired module needs no tuning.

All 10 candidates are shown; 3 met the bar for being worth doing. The order is a hypothesis, not a verdict. How chosen · Coverage · All findings

The findings catalogue and the Change impact explorer apply to any model the exports describe. The action cards are pattern-matched suggestions from a small set of known patterns (per-cell text labels, SUM with LOOKUP, long IF chains, duplicated calculations, modules with no detected reader); on an estate whose problems lie elsewhere they will be few or absent, and the catalogue is the place to look.