Hello Anaplan Ecosystem,

Have you implemented Anaplan in the "pre-Planual" era? Are you looking to improve or optimize your Anaplan models? Below is a list of 10 things you should watch out for as common mistakes in Anaplan modeling.

1. Using "Row ID" or "Sequence Number" as a dimension

This is a far too common practice I have seen in some Anaplan models. Use of Row ID and Sequence Number ends up creating more harm than good. Anaplan lists are dimensions which can be applied in modules. If dimensions can only be uniquely identified by their Row ID, it renders them meaningless, as it oftentimes means you will be forced to create subsequent flat lists or you will be forced to see your data by the row it came in. The power of Anaplan is connecting 1 dimension with another dimension utilizing lists, attributes, and SUMS/LOOKUPS. Row IDs diminish this concept OR introduces extra steps in that occurring.

What should you do instead: use SMART keys! Find ways beyond the Row ID to make each entry unique. Think about creating a SMART key leveraging several properties and creating a concatenated string or ID.

2. Poor naming conventions/dirty modeling

Lists and Modules with no naming convention make it extremely difficult to navigate an Anaplan model. Furthermore, lists with similar names as modules or list properties with similar names to line items, can make retracing formulas a nightmare.

Likewise, the Actions menu should follow a naming/numbering system.

What should you do instead: use DISCO naming conventions or create your own naming convention. The point is, have clear, organized, and distinguishable naming convention!

3. Making all changes directly in a production model

Some smaller use cases or models may be able to get away with this one. However, generally speaking, it is advisable to utilize Anaplan's ALM functionality for implementing new models.

Too often, end users or inexperienced modelers can inadvertently cause harm by making undesired changes in the model. If there is no ALM enabled, this can cause data integrity issues and can throw off the output reports from their true values.

Whenever a structural change, formula change, or architectural change is desired, it is best practice to leverage ALM and make use of the following 3 environments: DEV, UAT, and PROD.

This will help streamline your change management processes and ensure changes have been tested properly prior to pushing them to production.

4. Not using a Data Hub

This one will be much like number 3 above, some smaller use cases or models can get away without this one. General best practice is to always load external data into an Anaplan Data Hub as the first checkpoint within Anaplan.

The Data Hub serves as a central data resource where we can manipulate the data in such a way that it is ready for arrival in spoke models and reporting. Here we can create any mappings, hierarchies, and general list structures.

The Data Hub is also where any ETL would occur when required. The separation of responsibilities between the Data Hub and spoke models also helps Anaplan from a performance standpoint as resources can appropriately be split between data prep and data modeling.

5. Doing major ETL in Anaplan

Similar to number 4 above, it is best practice to perform major ETL ahead of time before the data reaches Anaplan. Though very capable of ETL, ETL takes up a lot of performance resources in Anaplan. Major text concatenations, text parsing, and manipulation should all be performed in a ETL or data integration tool.

Furthermore, if you absolutely must perform ETL in Anaplan, then you should do so in the Data Hub.

See my previous article on Anaplan Data Integrations to see which option may be best for your needs.

6. Using SELECT statements instead of LOOKUPs

In earlier implementations of Anaplan, SELECT statements used to be a more common practice. More recently, the community has shifted to using LOOKUP statements and referencing Constants modules instead.

Hardcoded formulas are a blocking mechanism when attempting to mark a list as "Production Data". If a large list of data is not marked as "Production Data", list members will carry over in both DEV and PROD environments, thus taking up a little more space!

Constants modules offer easier auditability. Referencing line items in modules are easier to track than hardcoded formulas pointing to specific list members.

7. Repeating the same conditional statement

When in doubt, always use a boolean! Booleans are the most performance-friendly line item format in Anaplan. When you need to use IF-THEN-ELSE logic in Anaplan, it is advised that you maintain your conditional inside a boolean. This will help reduce the calculation engine's strain by not having to recalculate the same condition for every cell.

Instead, a boolean allows you to capture that repeated conditional and is already calculated for you.

Instead of this: IF conditional THEN x ELSE y

Do this: IF boolean THEN x ELSE y

Where boolean = conditional

8. Repeating calculations across many line items

When you are performing data modeling in Anaplan, you may run into scenarios where you need to reuse the same formula many times inside the same module.

Say you have 10 line items in 2 modules Module A & Module B.

The formulas for each line item in Module B goes something like this:

Line Item 1 = Module A.Line Item 1[SUM: Module A.List Formatted Line Item]

Line Item 2= Module A. Line Item 2[SUM: Module A.List Formatted Line Item]

etc...

Notice that all parts of the formulas for Line Items 1 and 2 are the same besides the source value. In this instance it would be more efficient to leverage a Line Item Subset.

  1. Create a Line Item subset using Module A
  2. Create an intermediary collect module utilizing the same dimensions as Module A plus your newly created LISS
  3. Create target Module B with the new LISS

Now you should be able to reduce 10 line items down to 1 and perform 1 formula to pull in all 10 values and consolidate it to 1 line item.

New formula= Module C.CollectLineItem[SUM: Module A.List Formatted Line Item]

9. Not using a saved view

This is also another common error which I see. When you are creating imports within Anaplan modules, you should always leverage saved views. If an import is pulled directly from a module rather than a saved view within a module, it creates additional administrative overhead.

Saved views allow modelers to create specific views for each import action and does not require any changes to the source module. This makes for a cleaner, more efficient mapping process as well as administration maintenance.

10. Not using the NUX or Apps

The NUX or Apps feature in Anaplan was introduced a few years ago now. To this day, there are still modelers who lean on utilizing Classic dashboards and delay the desire to adopt the NUX or Apps. While there may be a couple small features that they may be awaiting, generally speaking, I have observed higher satisfaction from Customers when they use the NUX.

The NUX offers a clean user interface that is more modern and offers better end user experience for viewing reports and interacting with Anaplan models. Furthermore, the Anaplan development teams are placing all of their energy towards the NUX instead of classic dashboards. The NUX team does a great job of responding to feedback and delivering updated functionality on a regular basis. From when it originally came out to where to feature is now shows a major improvement, kudos to the Anaplan Product team.

Final Thoughts

Anaplan is the true leader in the Connected Planning space. Anaplan continues to evolve and introduce new functionality and best practices. There is an important choice all of us modelers have to make: will we also update our skill sets, trainings, and abilities or will we be stuck in the old way of doing things.

Personally, I love seeing all of the new features and functionality that Anaplan continues to release. Yes, some of the features may still need to be improved but that is where we as a Community can help raise our voices and share feedback. Ultimately, we all are trying to deliver the same thing: a Rockstar planning experience for our customers and help make their lives easier. We should enable and facilitate that process rather than inhibit it.

The choice is yours.

No alt text provided for this image