Find what's wrong with your Anaplan model before it hurts.

Upload the line-items blueprint. MaxCheck runs 32 documented rules on a real Anaplan formula tokenizer and pins every finding to a line item and the exact part of its formula, with why it matters and how to fix it.

Free. Built by MaxPlan, an independent Anaplan consultancy that fixes models like these for clients.

Drop the line-items blueprint here

.xlsx or .csv, exported from Modules › Line Items. It is read in this browser; nothing is sent until you run the full analysis.

or drag it onto this panel

What you get

A plain verdict first, five area scores, then every finding on its line item with the exact part of the formula marked, why it matters, and how to fix it.

Demand Planning (sample)

Sample report

Two errors sit in one module, 30 Revenue: SUM and LOOKUP in one reference. Fix those first: they account for 22% of the model's calculation time. Most of the other warnings are the same hard-coded SELECT, in 7 line items.

Performance61/1002 errors in 30 Revenue
Logical88/1003 warnings
Auditable96/1001 warning
Necessary84/1003 warnings
Sustainable79/1007 warnings

ErrorNet Revenue by Regionin 30 Revenue

SUM and LOOKUP in one reference P_SUMLOOKUP · error · rule 1.0.0

'20 SKU Calc'.Net Revenue[SUM: 'SYS Store'.Region, LOOKUP: 'SYS Store'.Reporting Month]

Why it matters. Anaplan evaluates the combined mapping cell by cell, which is one of the slowest patterns in the engine.

Sample report. The model, names and numbers are made up.

Useful without an email

The basic check runs in your browser. Give a work email and the full analysis runs on our server.

Basic check, no email

Runs in this browser. Nothing is stored or sent.

  • 25 rules that look at one line item or one module at a time, plus dimensions a formula doesn't use
  • Five area scores and findings by module
  • Each formula with the problem part marked
  • Where calculation time goes, when the export has Calculation Effort

Full analysis, with a work email

Runs on our server. Sign-in is a link by email; no password.

  • All 32 rules, including 7 that compare across modules: repeated conditions, duplicated line items, repeated SELECTs, Applies To order, totals nothing reads, RANK on large lists, numbers used as flags
  • AI explanations, and a suggested formula only when it passes three checks
  • Report history per model, and a PDF to share
  • Private mode: names are swapped for codes in your browser before anything is sent

Facts from rules, words from AI

Every finding is a rule
Each rule is documented, versioned, and tested on cases it must flag and cases it must not. The report shows the rule and its version.
The AI only explains
It never adds a finding or moves a score. A formula it suggests is shown only if it parses, names only things in your model, and no longer trips the rule.
Your model stays yours
No data values are ever read, only structure. You choose what is stored, and you can delete a model or your whole account in one step.

Export the blueprint

You need workspace admin rights on the model. The export has 26 columns; MaxCheck needs 12 of them.

  1. 1Open the model as workspace admin.
  2. 2Go to Modules and switch to the Line Items tab.
  3. 3Click Export.
  4. 4On the Layout tab, choose Excel (.xlsx). CSV works too.
  5. 5On the Labels tab, tick "Include Row Label Headers".
  6. 6Run the export and upload the file.

The rules

Grouped by PLANS area. Severity is a shape: error, warning, hint. Hints never count toward a score.

AreaRuleSeverityRuns
PerformanceSUM and LOOKUP in one referenceP_SUMLOOKUPerrorBasic and full
PerformanceTEXTLIST usedP_TEXTLISTwarningBasic and full
PerformanceCUMULATE on a day time scaleP_CUMULATEDAYSerrorBasic and full
PerformanceCUMULATE usedP_CUMULATEhintBasic and full
PerformanceVery large line itemP_TOOBIGLISwarningBasic and full
PerformanceModule with many line itemsP_TOOMANYLIShintBasic and full
PerformanceSame dimensions in a different orderP_ORDERAPPLIESTOwarningFull analysis
PerformanceDimensions the formula doesn't useP_OVERDIMENSIONEDwarningBasic and full
PerformanceTotals calculated that nothing readsP_SUMMARYNOTNEEDEDwarningFull analysis
PerformanceTIMESUM in a line item with timeP_TIMESUMONTIMEwarningBasic and full
PerformanceLong text joinP_TEXTJOINwarningBasic and full
PerformanceFINDITEM without a blank checkP_FINDITEMBLANKhintBasic and full
PerformanceRANK on a large listP_RANKLARGEwarningFull analysis
PerformanceNumber used as a yes/no flagP_NUMBERFLAGwarningFull analysis
LogicalIF that returns TRUE or FALSEL_TTEFwarningBasic and full
LogicalIF with a TRUE or FALSE branchL_TTEF_lighthintBasic and full
LogicalSame IF condition in several line itemsL_REPEATEDCONDITIONSwarningFull analysis
LogicalLong ELSE IF chainL_LONGELSEIFCHAINhintBasic and full
AuditableLong formulaA_FORMULALENwarningBasic and full
AuditableDeeply nested IFA_LONGNESTEDwarningBasic and full
AuditableNo notesA_EMPTYNOTEShintBasic and full
AuditableMany subsidiary viewsA_SUBSIDIARYVIEWShintBasic and full
NecessaryDuplicated line itemN_DUPLICATEDwarningFull analysis
NecessaryTemporary-looking nameN_UNUSUALNAMESwarningBasic and full
NecessaryNot referenced by other line itemsN_NOTREFERENCEDhintBasic and full
SustainableHard-coded list item in SELECTS_SELECThintBasic and full
SustainableSame hard-coded list item in several line itemsS_SELECT_REPEATEDwarningFull analysis
SustainableHard-coded time periodS_HARDCODEDTIMEwarningBasic and full
SustainableHard-coded list item in a comparisonS_HARDCODEDITEMhintBasic and full
SustainableMany dimensionsS_MANYDIMENSIONShintBasic and full
SustainableMany dimensions with a time summaryS_MANYDIMENSIONS_TIMESUMwarningBasic and full
SustainableMany dimensions with a list summaryS_MANYDIMENSIONS_SUMwarningBasic and full

Check a model Read every rule in full