Compensation Elements


After completing this lesson, you will be able to Define and create compensation elements.

Compensation Elements

Compensation Plan Elements, or simply Compensation Elements, are reusable objects that contain an expression or value. They make it easier to create and maintain compensation plans.

Compensation Elements merely store data. Until a Compensation Element is associated with a Rule, Variable, or Plan, it is not used in calculating compensation.

Access to Compensation Elements is available from the Plans menu. Each type of Compensation Element has its own workspace.

Naming Conventions

As we go through the next few lessons, we will be creating many types of objects: fixed values, territories, variables, plans, and rules. While the system does not have strict naming requirements, we will be using a widely accepted set of naming conventions.

  • While spaces are allowed, we will substitute an underscore ( _ ) for spaces.
  • Each object is preceded by an acronym to identify the type of object. For example, territories are preceded by T_ , and territory variables are preceded by TV_.
  • Objects that can be periodic, such as a fixed value that contains a quarterly quota, will contain the period somewhere in the name, such as FV_Quarterly_Quota or FV_Quota_Quarter.
  • Compensation plan rules are preceded with the type of rule. For example, a direct credit rule will be preceded by DCR_, and a deposit rule will be preceded by DR_.

Advantages of Compensation Elements

Compensation Elements store data that can be used in rules. They have three advantages that simplify the management of rules:

  • They allow the encapsulation of data in distinct objects rather than storing everything in a large, complex compensation plan.
  • They have special abilities that allow certain tasks to be accomplished easily.
  • They are Effective Dated, which makes it easier to manage changes in plans.

Types of Compensation Elements

The types of compensation elements are:


A Territory is a named object defined by groups of categories and classifiers that is used to filter input to credit and primary measurement rules.

Territories filter transactions based on how they are classified. They can be used for a number of scenarios, but a common one is to allocate credit for a Transaction to a payee based on a criterion, such as the location, product or customer type.

Consider the scenario we saw earlier. Stacey Palowski, the Sales Rep for the western region, should get credit for any transaction in the US states of California, Nevada, or Arizona. Let’s add one more requirement: the transactions must also be for sales of bike products or accessories, but not repair services.

Stacey’s territory would be defined using the data in the category hierarchy we saw in the previous topic, and would look like (Bike Products OR Accessories) AND Western Region.


Are defined using Categories and Classifiers.

Can be simple or complex.

Can be referenced in Credit or Primary Measurement Rules.

Best Practices for Territories

  • Use Parenthesis and Logical order of operations to make sure the statement is logically processed.
    • For an AND condition, both parts must be true for the territory to succeed.
    • For an OR condition, the match succeeds if either clause is true.
  • Never leave a Territory object Blank, this will cause errors in the pipeline.
  • Have a "dummy" Territory that evaluates as FALSE. You can then use this territory as the default for variables, which will prevent an error if a variable is not assigned.

Fixed Values

Fixed values store static period-specific numeric values. 

Fixed Values:

  • Can be effective dated, allowing you to create a new version when values change instead of versioning the entire plan or rule.
  • Can have a Period Type that allow you to preset values for different periods in a single record.
  • Can be referenced in many other objects, including Formulas, Rules, Rate Tables or Lookup Tables.

Let’s look at two examples in which Fixed Values can be used in a plan.

Scenario 1: Quarterly Bonus

Bikes In Motion pays a quarterly bonus of $1000 to all Sales Reps that meet their quarterly quota. The bonus does not change over time, but it may be adjusted in the future. Storing the bonus in a Fixed Value allows you to create a new version of the bonus if the amount changes without having to change the compensation plan.

Scenario 2: Quarterly Sales Quota

While the bonus amount is the same for all quarters, sales of bikes are very seasonal, so the sales quota changes with the seasons. The quota is low in the first quarter of the year, when temperatures are cold in the US and Canada. In Q2, the weather is warmer, and bike shops are ordering stock for the Summer months. As a result, the quota will be much higher in Q2 and Q3. In Q4, the holiday gift-giving season may mean a high quota as well.

As a result, our quarterly sales quotas might look like this:

  • Q1: $125,000
  • Q2: $400,000
  • Q3: $600,000
  • Q4: $350,000

To make a fixed value periodic, set the period type to quarter. This will allow you to enter a separate entry field for each quarter.

Best Practices for Fixed Values

  • Only use a period specific fixed value if you are certain the Client does not allow that value to change mid-period. If they do, it is better to use a non-period specific Fixed Value, and version it when it changes.
  • In period specific fixed values, be sure to populate every period of the current fiscal year with a value (do not leave null) or it will create errors in the pipeline.
  • Have a process documented to ensure that fixed values are populated each year.
  • Use a variable when referencing a fixed value in a rule. Avoid hard coding a fixed value into a rule or plan object.

Rate Table

A Rate Table is a special-purpose table used to hold a matrix of commission rates. Use a rate table in cases where the commission rate increases as achievement crosses thresholds.

Rate Tables:

  • Can calculate per-credit or aggregate credit commissions
  • Are built with numeric values, fixed values, formulas, or values from data fields.
  • Depend on the selections in the Incentive rule to make calculations
  • Can be used in multiple rules.
  • Can be effective dated


To understand rate tables, it’s helpful to understand what Attainment means in this context. Attainment is, put simply, achievement as a percent of quota or target. For example, if a sales quota is US$100,000 and a payee achieves total sales of $104,000, attainment is 104%.

The rate table then holds a list of rates for ranges of attainment.

Rate tables are generally used in Incentive Rules. The rule can calculate attainment and look up the rate, based on that attainment, in a rate table.

Step Commission vs. Straight Commission

Commission rates can be evaluated two ways: Step and Straight.

When Step Commission is used, the commission rate steps up as the payee reaches each attainment threshold. In contrast, when straight commission is used, only a single commission rate is applied at the final attainment threshold.

Figure 27: Step vs. Straight Commission in Rate Tables

Let’s look at the above example of a rate table that pays a 3% commission for sales below 100% attainment and 5% for sales above 100%. Using step commission, all sales up to 100% of quota are compensated at 3%, and only the remaining 4% of sales are paid out at the higher rate. In contrast, if straight commission is used, the full amount is paid out at the higher rate.

Step Commission is more complex than straight commission but is more common. A single rate table can be used to calculate both step and straight commission, depending on the settings in the rule.

Best Practices for Rate Tables

  • Don’t leave the rates in a rate table blank.
  • Use a variable when referencing a rate table in a rule. Avoid hard coding a rate table into a rule or plan object.

Lookup Tables

Lookup Tables are customized tables that house values based on multiple sets of criteria, where the output value represents the intersection of multiple dimensions.

Lookup Tables:

  • Contain a table of values based on multiple sets of criteria where the stored values represent the intersection of multiple dimensions.
  • Are also known as Multi-Dimension Lookup Tables (or MDLTs) and locate values as a result of the intersection of multiple dimensions or axes.
  • Are constructed using dimensions and indices
  • Can be populated manually or through data loads.

Let’s look at the image below as an example. In this case, the Region, Products, and Sales Status are the Dimensions.

This Lookup Table tells the system the commission rate is 4%, when the Region is EMEA, the Product is Bikes, and the Sales Status is Silver. The value returned can be used in the Incentive Rule.

Lookup Tables vs Rate Tables

Some similarities exist between Lookup Tables and Rate Tables. The matrix below shows the differences and similarities between the two and may help you decide when to use each one.

Rate TablesLookup Tables
Easy to set upComplex initial setup
Handles step commissionDoes not handle step commission
Only calculates commission rates based on attainment or a calculated result.Can calculate any numeric value based on any input of any data type including strings and categories
Can only be used in Incentive RulesCan be used in any rule or formula
Can be effective datedEach individual cell in the matrix can be effective dated.

Best Practices for Lookup Tables

  • Map out your lookup table before creating them.
  • If you leave values null, check the box to make all null values zero or use conditioning to ensure a rule does not attempt to calculate using a null value.
  • Avoid many nested Lookup Table references. Keep them as simple as possible.
  • Use Lookup Tables when the list of indices is relatively static.


Formulas are reusable objects that contain an expression, such as a mathematical equation. A formula can be used in compensation rules, rate tables, lookup tables, and other formulas.

Formulas can reference many other objects, such as fixed values, lookup tables, values from data fields, and other formulas. Formulas can have the following output types:

  • Currency
  • Boolean
  • Date
  • Integer
  • Percent
  • Quantity
  • String

Because you can add many types of input to a Formula, the Rule Usage box displays the types of rules in which the Formula can be used, depending on where the data is coming from. 


Functions are predefined formulas that you can use to calculate and specify values or conditions. Types of functions include date functions, sum functions, and text functions. When using a function, you will be prompted for the parameters the function requires.

Some common functions you may use may include:

  • Concatenate Two Strings (string1, string2)
    • Combines two text strings into a single string.
    • Output type: string
    • Example: Concatenate Two Strings (Participant.First Name, Participant.Last Name)
  • isNull (string)
    • Test if a field has no value
    • Output type: Boolean
    • Example: isNull (Transaction.Channel)
  • Fiscal Date (Period Type, Period Offset, Start Date or End Date)
    • Returns the start or end date of a fiscal period, such as a month
    • Output type: date
    • Example: Fiscal Date (Month, 0, End Date)

Best Practices for Formulas and Functions

  • Keep formulas readable and straight forward.
  • Use the Description field to describe what the formula does.
  • Don’t leave a formula expression blank. Instead, populate with a value that returns nothing in the result, depending on the result type. For example if the formula has a Boolean result, populate the formula with false.


Earlier, we saw that quotas can be stored in a Fixed Value. Another way to store quotas is in the Quota object, a type of compensation element used to store multiple quotas across the organization for multiple periods. When creating a Quota, you can select the time frame for which the quota is applicable, and enter different values for each individual position assignment and period.

Ideally, Quotas are good for smaller organizations, or smaller teams within a larger organization.

The image below shows an example of a Quota that contains quarterly and yearly sales goals for Regional Directors.

Exercise: Create Compensation Elements

Business Example

In this exercise, you will create the compensation elements that will be used in the compensation plan. This includes territories, fixed values, rate tables, lookup tables, and formulas.


  1. Create two Territories: Americas and EMEA.

    1. From the home page, select Compensation Elements in the Manage plans tile.

    2. Select Territories.

    3. Select Create icon.

    4. Select OK to accept the default Effective Dates.

    5. Type T_Americas in the Name field in the Territory Details pane.

    6. Select BikesInMotion for the business unit .

      • Select Create to save the Territory.
      • Repeat the steps above to create a second Territory called T_EMEA. In the Expression box, reference Category, then reference EMEA:Postal Code Tree.
  2. Create Fixed Values to contain the quarterly bonus and quarterly quotas for Sales Representatives.

    1. Create a Fixed Value to hold a $1000 quarterly bonus for the Sales Reps. 

      • Select Compensation Elements – Fixed Values in the Manage Plans tile.
      • Select the Create icon .
      • Accept the Default Effective Dates.
      • Type FV_Sales_Bonus in the Name field.
      • Type Quarterly Sales Bonus in the Description field.
      • Select BikesInMotion for the Business Unit.
      • Leave the Period Type empty.
      • Enter the value $1000 and set the Unit Type to USD.
      • Select Save .
    2. Create a Fixed Value to hold the quarterly quota amounts for the Sales Reps.

      • Select the Add icon.
      • Accept the Default Effective Dates.
      • Type FV_Quarterly_Sales_Quota in the Name field.
      • Type Quarterly Sales Quota in the Description field.
      • Select BikesInMotion for the Business Unit.
      • Set the Period Type to Quarter.
      • Enter the following values, setting the unit type to USD:
        • §Q1: $125,000
        • §Q2: $400,000
        • §Q3: $600,000
        • §Q4: $350,000

      Select Save.

  3. Create a rate table.

    All Sales Reps will share a rate table in our plan. You will create a rate table for the sales representatives that will calculate a 2% commission on sales below quota and a 3% commission on sales above quota.

    1. Select Compensation Elements - Rate Tables from the Manage Plans tile.

    2. Select the Create icon .

    3. Accept the default effective dates.

    4. In the name field type RT_Commission Rates.

    5. Select Percent for the input and return types.

    6. In the Rate Table section, enter the following for the two levels:

      • In row 1 select (<=) less than or equal to sign under the operator column.
      • In row 1 type 100% for the Attainment column and type 3% in the Rate column.
      • In row 2 select (>) greater than sign under the operator column.
      • In row 2 type 100% for the Attainment column and type 5% in the Rate column.
    7. Select Create.

  4. Create a lookup table.

    In this step, you will create a lookup table that uses two different input values to calculate the bonus amount that should be paid to each participant. This will use two custom fields enabled in the Participant record: GA1: Sales Status and GN1: Bonus Level.

    LT_Bonus LookupUSDBikesInMotion 
    Sales Status (String)Bonus Level (Numeric, Integer)
    1. Select Compensation Elements – Lookup Tables from the Manage Plans tile.

    2. Select the Add icon and accept the default effective dates.

    3. Enter the standard fields:

      • Name: LT_Bonus_Lookup
      • Return Type: USD
      • Treat Empty Values as Zero: Check this box
    4. Enter a dimension for the sales status.

      • Click the Add icon in the Lookup Table Structure section.
      • Enter the Dimension name Sales Status.
      • Set the type to String.
      • Select Finish.
    5. Add Indices to the Dimension with values GOLD, SILVER and BRONZE.

      • In the Define Indices section, click the New icon.
      • Enter the value GOLD.
      • Leave the Effective Dates at the default and select Finish.
    6. Repeat these steps to add two more index values for SILVER and BRONZE, being sure to enter the values in all caps.

    7. Use the same steps as above to add a Dimension called Bonus Level with the following settings:

      • Type: Numeric
      • Input Unit Type: Integer
    8. Add the Index values for the Bonus Level dimension.

      • Select on the new icon on the Define Indices window.
      • Set the value to 1/Integer
      • Repeat these steps to add the values 2,3, and 4.

      Select Save.

    9. Add the Values to the table.

      • Select the Value tab.
      • Select the Edit (pencil) button.
      • Enter the values as shown in the table on the previous page.
      • Save changes to the Lookup Table.
  5. Create formulas.

    In this step, you will create two formulas that reference a lookup table to calculate the amount of the annual bonus. Since lookup tables need an exact date, you will first create a Formula that uses the Fiscal Date function to extract the last day of the current month. You will then create a Formula that references the lookup table created in the previous step.

    1. Create the Formula to extract the last day of the current month.

      • Select Compensation Elements – Formulas from the Manage Plans tile.
      • Select the Create icon .
      • Accept the default Effective Dates.
      • Name the Formula F_LastDayOfPeriod.
      • Set the Return Type to Date.
      • Open the Window Editor.
      • Click the Function button and select function:Fiscal Date.
      • In the Period Type parameter, type per and select reference:Period Type from the list.
      • In the flashing cursor after the colon, type mo and select month.
      • In the Period Offset parameter, enter 0 and set the unit type to integer.
      • In the last parameter, enter End and select End Date from the list.
      • Select the checkmark to close the window.
      • Select Create.
    2. Create a Formula called F_Bonus_Lookup that calculates the bonus using the Lookup Table. In this formula, we will tell the Lookup Table where to retrieve the three parameters: Date, Sales Status and Bonus Level.

      • Select the Create icon.
      • Accept the default Effective Dates.
      • Name the Formula F_Bonus_Lookup.
      • Set the Return Type to Currency.
      • Open the Window Editor.
      • Select Reference and select reference: Lookup Table from the list.
      • Type LT and select LT_Bonus Lookup from the list.
      • In the Date parameter, type For and select reference:Formulafrom the list.
      • Type f_ and select F_LastDayOfPeriod from the list.


        This is the formula you created in the previous step.
      • In the Sales Status parameter, type part and select Participant.GA1 :Sales Status.
      • In the Bonus Level parameter, type part and select Participant.GN1 :Bonus Level.
      • Select the checkmark to close the window.
      • Select Create.
      • Your formula should look like this:

Log in to track your progress & complete quizzes