Incentive Pay
Incentive Pay lets you calculate and distribute performance-based bonuses to employees based on their work metrics for a payroll period. You define rules — called models and tiers — that determine which employees qualify and how much they earn. A guided Program → Preview → Review & Submit workflow walks you through each step so you can review totals before any pay records are created.
Incentive Pay is fully integrated into the Payroll workspace. Navigate to Payroll and select the Incentive Pay tab.
If you previously used a standalone Incentive Pay Reports page, that route now redirects to the Payroll workspace automatically. All incentive pay functionality lives in the consolidated payroll view.
Who Can Access This
| Role | Access |
|---|---|
| Payroll Admin | Preview and submit — cannot create or edit models |
| Administrator with the Payroll Admin add-on | Full access — preview, submit, and manage models |
| Administrator without Payroll Admin | Not available |
| Office, Sales, HR Admin | Not available |
| Technician | Not available |
Incentive Pay is a payroll report, so the tab only appears for users with the Payroll Admin add-on. A Payroll Admin can preview and submit incentive pay. Creating, editing, and deleting models and tiers also needs the Administrator role, so only someone with both Administrator and Payroll Admin can manage models.
How Incentive Pay Works
Incentive Pay uses a two-level structure:
- Models — A named program (e.g., "Q1 Performance Bonus"). Each model contains one or more tiers.
- Tiers — Rules within a model that define who qualifies and how much they earn.
Each tier specifies:
- Which employees qualify, based on performance metrics such as hours worked, scorecard average, attendance, and revenue
- How much to pay each qualifying employee (flat amount, percentage, or per-hour rate)
- Which pay type to assign
- Optional defaults for pay date and note that pre-fill the results grid
An employee is only evaluated against the model they are assigned to. Each employee can be on one model, and an employee with no model is skipped in every preview. See Assign employees to a model.
Step 1 — Create a Model
Before running incentive pay, you need at least one model with at least one tier.
- Go to Payroll → Incentive Pay tab
- Click Model Library or Manage Models
- Click New Model
- Enter a Name (required) and optional Description
- Click Create
Payroll → Settings (gear icon) → Advanced → Manage Incentive Pay Models also takes you to this tab.
The Model Library shows models by readiness:
- Ready — active models with at least one tier. These can be included in an incentive pay run.
- Needs setup — active models with no tiers. These stay visible so you know they need work, but they are skipped during preview.
- Inactive — models that are not available for payroll runs.
Use search, status filters, Expand all, and Collapse all to manage larger model lists without opening every model at once.
Step 2 — Add Tiers to a Model
Each tier sets eligibility rules and a pay configuration for a group of employees.
- In the Incentive Pay Models drawer, expand a model
- Click Add Tier
- Fill in the tier form. The form is organized into sections so you can set the pay rule first, then add only the eligibility criteria you need:
Basic info:
- Name — required (e.g., "High Performers")
- Description — optional
Pay Rule:
- Pay Type — required; select from your additional pay types
- Target Rate Type — how the amount applies (flat dollar, per hour, percentage, etc.)
- Amount — the pay value; required and must be greater than zero
- Adjustment Hours — optional hours to add or subtract for rate calculations
Eligibility Criteria:
- Add criteria one at a time, such as Total Allowed Hours, Scorecard Avg, Revenue, Days Late, or Complaints
- Each active criterion accepts a Min and Max value
- Employees must meet all active criteria to qualify
- If a tier has no criteria, the form warns that it can match every employee assigned to this model
Defaults (pre-populate the results grid when run-level values are blank; can be changed per employee):
- Default Pay Date — used when the run's Additional Pay Date is blank
- Default Note — used when the run's Default Note is blank (e.g., "Q1 Bonus")
Employee Tag Filter — optionally restrict the tier to employees who have specific tags assigned to their profile.
| Category | Available Filters |
|---|---|
| Hours | Total Job Hours, Paid Job Hours, Total Allowed Hours, Paid Allowed Hours, Paid Job + Allowed Hours, Clock Hours |
| Financial | Revenue |
| Attendance / Quality | Scorecard Avg, Negative Scorecards, Unexcused Absences, Days Worked, Days Late, Compliments, Complaints, Breakage |
- Click Create Tier
Assign Employees to a Model
An employee only appears in an incentive pay preview under the model they are assigned to. Each employee can be on one model at a time.
- Go to Office → Technicians and open the technician's profile
- Click Edit, then open the Employment & Pay step
- Under Team & Schedule, choose a model in Incentive Pay Model. Inactive models are listed too.
- Click Save Changes
To take an employee off their model, choose None and save.
An employee with no incentive pay model is skipped for every model. The preview shows a warning with how many employees were skipped for this reason. If you built models before assigning employees, previews stay empty until you assign them.
The Incentive Pay Model field appears only when you edit an existing technician and you have the Payroll Admin add-on. See Edit Technician Drawer.
Step 3 — Run a Preview
- On the Incentive Pay tab, keep Run Scope set to All ready models unless you need to narrow the run
- Optional: choose Selected model to preview one model
- Optional: choose one tier, or leave the tier selector on All tiers for that model
- Set the Payroll Period date range
- Set optional Adjustment Hours, Additional Pay Date, and Default Note for this run
- Click Preview
The system calculates which employees meet the tier criteria for that period and loads the results grid. Only employees assigned to a model are checked against that model's tiers. Active models with no tiers, and employees with no model assigned, are skipped and shown as review warnings.
Run-level values apply to the preview and generated pay records. Adjustment Hours overrides any tier-level adjustment for the current run, and the run's Additional Pay Date and Default Note pre-fill rows before tier defaults are used.
When one employee matches multiple tiers in the same model, Pulse creates one payable row using the highest calculated payout. Other matching tiers are shown as runner-up matches for review instead of creating duplicate pay rows.
Step 4 — Review and Adjust Results
After the preview loads, four summary cards appear at the top:
| Card | What It Shows |
|---|---|
| Matched | Total number of qualifying employee/model rows |
| Calculated | Sum of all calculated pay before edits |
| Average | Average pay per matched row |
| Included | Count and dollar total for checked rows after edits |
The results grid shows one row per qualifying employee with grouped columns:
- Model - Tier — the winning model/tier used for the payable row
- Other Matches — runner-up tier matches that were not selected for pay
- Hours — Total Job Hrs, Clock Hrs, and more (toggle additional columns using the column visibility panel)
- Pay — Commission, Revenue, Gross Wage, and more
- Attendance / Quality — Scorecard Avg (displayed as a 0-5 scale), Negative Scorecards, Days Worked, Days Late, Unexcused Absences, Compliments, Complaints, Breakage
The Scorecard Avg column displays scores on a 0-5 scale (for example, "4.2 / 5") to match the rating system used throughout MaidCentral. This provides a consistent view of employee performance across payroll and scheduling.
Use the column visibility panel in the grid sidebar to show or hide columns. This is helpful when your screen is narrow or you only need to review a subset of metrics for a particular tier.
The last four columns are editable directly in the grid:
| Editable Column | Description |
|---|---|
| Pay Type | Override the pay type for this employee |
| Pay Date | Override the pay date for this employee |
| Amount | Adjust the calculated amount for this employee |
| Note | Add or change the note on the pay record |
Selection controls (top right of the grid):
- All — check all employees
- None — uncheck all employees
- Show All — reveal hidden grid columns
- Restore — return columns to the default view
- Individual checkbox per row to include or exclude specific employees
Use bulk controls above the grid to apply the same pay date or note to included rows, or to restore calculated amounts after edits.
Step 5 — Submit Incentive Pay
Submitting incentive pay creates additional pay records immediately. This action cannot be undone.
Before submitting, confirm:
- Every selected employee has a Pay Type chosen (blank pay type will block submission)
- Every selected employee has an Amount that is not zero (positive or negative)
- Click Review & Submit
- Review totals grouped by model and pay type
- Confirm warnings for excluded rows, edited amounts, or runner-up tier matches
- Click Submit Incentive Pay
- A confirmation dialog shows the total number of records and the total dollar amount
- Click Create N Records to confirm
After a successful submission, the results grid clears automatically. The created records appear in each employee's Additional Pay history.
Export the Preview
You can export the grid data before or after submission.
- Click Export (top right of the grid)
- Choose Excel (.xlsx) or CSV (.csv)
The file is named incentive-pay-preview.xlsx or incentive-pay-preview.csv.
Manage Existing Models and Tiers
From the Model Library, you can maintain your programs over time:
| Action | What It Does |
|---|---|
| Activate / Deactivate | Toggles the model. Inactive models are hidden from the main tab dropdowns. |
| Edit | Rename a model or update its description. |
| Duplicate Model | Copies the model and its tiers so you can create a similar program quickly. |
| Delete | Removes the model. If the model has tiers, it will be deactivated instead of deleted. |
| Add Tier | Add a new tier to a model. |
| Edit Tier (pencil icon) | Update an existing tier's name, criteria, or pay configuration. |
| Duplicate Tier | Copies a tier inside the same model. |
| Delete Tier (trash icon) | Permanently removes a tier. This cannot be undone. |
Corrected Calculations
Incentive pay calculations have been refined for accuracy:
- Scorecard averages are computed from actual scorecard results within the selected payroll period, not lifetime averages. This means the tier filter criteria match what you see in the grid.
- Hours columns distinguish between total job hours, paid job hours, total allowed hours, and clock hours. Each column pulls from the correct source so tier thresholds behave predictably.
- Revenue and commission values reflect the payroll period boundaries you selected, not the full pay cycle.
If you notice different results after this update, the new numbers are more accurate. The previous calculations could include data outside the selected period in some edge cases.
Tips
- Start with one tier per model while you learn the system. Add more tiers once you need different pay amounts for different employee groups.
- Use "All ready models" for normal payroll runs. Narrow to one model or tier only when auditing or correcting a specific program.
- Use "All tiers" to process an entire bonus program in a single run. If one employee matches multiple tiers in that model, the highest calculated payout wins and the other matches stay visible for review.
- Uncheck employees you want to exclude rather than deleting them from the grid. The results reset if you click Preview again.
- Use the run-level Additional Pay Date and Default Note for the normal payroll batch. Tier defaults are useful fallbacks when those run-level fields are blank.
- Set a Default Note on tiers when a specific bonus program needs a consistent fallback label (e.g., "Q1 Performance Bonus").
- Use Employee Tags on a tier to limit eligibility to specific groups, such as full-time vs. part-time employees or employees in a particular location.
- Export before submitting to keep a record of who received what amount before pay records are created.
Troubleshooting
| Issue | What to Check |
|---|---|
| No employees appear after Preview | Employees must be assigned to the model: see Assign employees to a model. All filter criteria must also be met simultaneously. Try widening the date range or lowering minimum thresholds to see who qualifies. |
| An employee is missing from the preview | Check the Incentive Pay Model on the technician's profile. An employee is only checked against their assigned model, and an employee with no model is skipped. |
| Preview button is disabled | Confirm at least one active model has a tier, or choose a selected model that has tiers. |
| A model shows "Needs setup" | Add at least one tier before that model can be included in payroll preview. |
| Model is not visible in the selected-model dropdown | Inactive models are hidden. Open Model Library and click Activate to make the model available. |
| An employee matched several tiers | Pulse pays the highest calculated tier for that employee/model and shows the other matches as runner-up matches. |
| Submission blocked with a validation error | Every selected employee must have a Pay Type selected and an Amount that is not zero (positive or negative). |
| "No employees selected" error | At least one employee must be checked before submitting. Use the All button to select everyone. |
Related Articles
- Payroll Workspace Overview — How payroll periods, history, and processing work
- Payroll Summary Workspace — Validate pay details, export files, and close payroll periods