- 5 Minutes to read
- Print
- DarkLight
- PDF
Attributes of Custom Compensation
- 5 Minutes to read
- Print
- DarkLight
- PDF
Custom Compensation allows you to create expressions that define how specific compensations are calculated. To support building expressions for advanced compensation items, we have further introduced two new attributes: By Period and Range.
Note:
While the custom compensation refers to all of the attributes mapped to that scenario, certain attributes are not supported for use in custom formulas. These include:
Employee Type
Position/Position Description
Pay Plan
Home Budget Entity
Position Budget Entity
Adjusted Annual Salary
Current Review Amount
Budget Review Amount
Review Type
Attribute names may vary. For example, 'Rate/Hr.' appears as 'Rate' in some interfaces, so reference the correct attributes while creating expressions.
If an attribute is not mapped to an employee and no default value is defined, the system skips the compensation calculation for that item entirely, leading to incomplete or missing results.
By Period Attribute
The By Period attribute is a newly added workforce attribute that allows you to assign and manage values that vary across specific periods, such as months or years. This attribute type is particularly useful for scenarios where compensation elements, such as overtime factors or bonus adjustments, need to change dynamically over time rather than remain fixed.
Accessing By Period Attribute
Adding the By Period attribute follows a process similar to adding a Workforce Attribute. Click here to learn how to add a workforce attribute.
When the Attribute Type is set to Value Source, the Varies dropdown will include the newly added attributes: By Period, along with other options like Range (which is also a new attribute), and Annually (an existing one).
Based on the selection, a table is displayed, allowing you to define values for each period (e.g., months in a year) on the Add Attribute page. Multiple years are supported, with columns for each month.
Note:
The number of years is based on the budget input years defined in the Define Budget Parameters configuration task. Click here to learn more.
Note
By-Period Attributes are linked to custom compensation items, not directly to individual employees. So, by-period attributes and custom compensation items cannot be loaded during an employee load using Data Load Rules.
Use Case: Overtime Salary for Hourly Employees
While there are multiple ways to calculate overtime pay for hourly employees, let's explore one of the most effective approaches.
To calculate the overtime salary, do the following:
Create a By Period Attribute, called Overtime Factor, which is set as follows:
From January to March 2024, the overtime factor is 1.5.
From April to September 2024, the factor changes to 2.
From October to December 2024, the factor reverts to 1.5.
Create a custom compensation, Overtime Salary.
This item calculates overtime salary based on standard working hours, overtime percentage, applicable overtime factor, and hourly rate.
Overtime Salary Calculation: An employee’s Overtime Hours%, a compensation item, is multiplied by their Standard Working Hours per Month, an employee attribute, to determine total overtime hours. This is then multiplied by the Overtime Factor, a by-period attribute created, and the Hourly Rate, another employee attribute, to calculate overtime pay. The system ensures fair and consistent pay adjustments by applying organization-specific multipliers to reflect overtime policies.
Once the custom compensation item is created, map this to an employee.
The Overtime Salary will be calculated accordingly.
For example, the Over Time Salary calculation for an employee, Pattie Morin, is shown in the employee report.Note:
By Period Attributes are linked to custom compensation items, not directly to individual employees. So, by-period attributes and custom compensation items cannot be loaded during an employee load using Data Load Rules.
Range Attribute
The Range attribute is introduced to maintain data at a range or threshold level, which can be used as a reference table to do calculations such as UK NI, CPP, or maintain the ranges for PS Billing hours, and so on.
Accessing Range Attribute
Adding the Range Attribute follows a process similar to adding a Workforce Attribute. Click here to learn how to add a workforce attribute.
When the Attribute Type is set to Value Source, the Varies dropdown will display the newly added Range attribute, along with other options such as By Period (which is another new attribute) and Annually (an existing one).
Based on the selection, the following fields appear on the Add Attribute page:
Applicable Value: Dropdown to specify the type of values the range applies to:
Number: Used for numeric values, such as counts or monetary amounts.
Percentage: Suitable for percentage-based thresholds.
Values Configuration: A table to define the specific ranges, including:
Condition: Descriptive phrases like Anything less than or Anything greater than.
Lower/Upper Bound: Specify the minimum or maximum limits for the range.
Applicable Value: Include associated or mapped values relevant to the defined range.
Adding Additional Ranges: Use the + button to add more range conditions to the attribute as needed.
Delete Range: Use the delete button to remove the range conditions as needed.
Once the Range Attribute is fully defined, it can be referenced and utilized while building logic within the Custom Compensation Canvas.
Once the Range Attribute is fully defined, it can be referenced and utilized while building logic using the Custom Compensation.
Use Case: Range Attribute for UK National Insurance (NI) Calculation
The UK National Insurance (NI) calculation has range attributes and tier-based calculations. So first, a range attribute called UK NI is created where the following thresholds are configured. Click here to learn more about how this attribute is used when using the RangeCalculation.Floor and the RangeCalculation.Tier functions.
Position Description Attribute
Position Description is a read-only attribute that can be used in custom compensation expressions to reference an employee's job title or role (e.g., "Director", "Senior Engineer").
It enables logic-driven compensation outcomes, like assigning bonuses or adjusting salaries based on job functions.
Notes:
This attribute is only available within the Expression Builder.
It is not visible in the Workforce Attributes list.
It cannot be edited or renamed.
Syntax
Attr[Position Description]
Let's understand this with a use case
Use Case: Assign Bonus Based on Position
To determine bonus eligibility based on position and performance, the HR team wants to ensure that only Director-level or above employees receive a performance-based bonus.
The system should evaluate the employee’s role and performance rating before awarding the bonus.
This can be configured using the condition: Attr[Position Description] = "Director" AND Performance Rating > 90. When this condition is met, the system will apply a bonus equal to 20% of the employee’s base salary.
For example, if an employee holds the title of "Director" and has a performance rating of 92, the system will calculate the bonus as 20% of their base salary.
Additional Use Cases
Use Case | Condition | Outcome |
---|---|---|
Assign a higher base salary to Senior Engineers | Attr[Position Description] = "Senior Engineer" | Set Base Salary = $90,000 |
Exclude Interns from merit increases | Attr[Position Description] = "Intern" | Set Merit Increase = $0 |
Provide relocation bonus to Managers | Attr[Position Description] = "Manager" | Add $5,000 to Total Compensation |