Custom Key Performance Indicators (KPIs) are a powerful tool that can be leveraged to identify trends and measure your organizational goals.

Custom KPIs can be configured in the Formulate module, by defining an actual value (the value to be measured), a target value (your goal), and a status value (the calculation that defines how the actual value should be measured against the target value). The KPI can then be added to queries in Discover (see Using KPIs for details).

Users can also create quick KPIs from within Discover, without configuring a KPI formula, simply by adding measures to the Indicator and Color drop zones.

As with other Formulate components, formulations are written in PQL or MDX.

Accessing Custom KPIs

To launch the custom KPI designer, open the Formulate module and select the KPI component:

Choose the server, database, and model where you want to build your custom KPI:

Building a Custom KPI

The custom KPI designer is comprised on five main steps, where users configure the KPI style, the actual value, target value, status value, and the dynamic bands.

NOTE: The core elements of the KPI use the same logic as custom members. This should be reviewed first before reading further below.

KPI Style

Start here by selecting the required KPI indicator style. When the KPI is visualized in Discover, the chosen KPI style will be used in the visual as the status indicator. These indicators can be used to visualize the KPI status in both matrix grids and gauges.

In the example below, the Reverse Signs style was selected and then added to a gauge visual.

Dials and Bullets

The dial and bullet styles behave differently than the other KPI styles. The rest of the styles can be used as a status indicator in both matrix grid and gauge visualizations. Dials, however, are designed specifically for use in the gauge visual; if a dial indicator is added to a grid, the text indicator will be rendered instead of the dial.

Likewise, the 'bullet' style is designed for use with the bullet chart. While it does not produce a status indicator, it updates the drop zones to remove the indicator zone, which is not required for the bullet chart.

Actual Value

The value representing the level of ACTUAL performance. Using the tool panel, add the required blocks and functions in order to write the actual value expression. Element, Aggregation, and Date blocks (red highlight below) must be injected with the required model metadata from the properties panel (blue highlight).

Context Panel

The context panel (green highlight above) displays the location where the KPI will be saved. Each KPI must have a designated parent dimension and hierarchy (in the Properties panel). Building a KPI creates custom measures, and as such, they are automatically saved in the measures dimension and hierarchy.

Format Panel

The value's format string may be changed from the Format panel (orange highlight). Users can apply a format string to each custom measure within the KPI, in order to determine how metrics for the custom measure are formatted. Format string options include a variety of presets, like currency, percentage, and standard number masks like "#,#".

Step Preview Panel

Users can test KPIs at any step in the KPI builder, by clicking the execute button (yellow arrow). The Step Preview panel (yellow highlight) will display a preview of the results for that step.

Target Value

The intended GOAL or TARGET of performance the actual is to be measured against. Use the tool-panel to create the target value.

Status Value

The logic for the KPI's status calculations and the graphical representation of the KPI. “Status” is how the actual compares to the target. Use the tool-panel to write the status value formulation, or choose a formula from the Templates drop down in the ribbon. The formula that you configure is used to generate the status value.

Template Formulas

There are five formulas available from the Templates drop down:

Ratio: Actual/ Target

Reverse Ratio: Target/ Actual

Growth Percentage: Actual - Target / Target

Variance Percentage: Actual - Target / Actual

Difference: Actual - Target


Define the ranges (bands) for the KPI. Start by enabling bands:

Next, choose the KPI model; the model selected determines the number of bands. The following options are available:

Next, insert static or dynamic values into each band; the band ranges affect the KPI color display. You may select a static value, a formula, parameter, or evaluation set:

Click here for more information about KPI dynamic banding.