Detected country: US
logo
‌
‌
‌
logo

Powered by

  • Home
  • Market Pricing
  • Step 1: Build Foundation
  • Match employees to bands

Match employees to bands

6min read

Share

Employee Matching

Employee matching automatically assigns your employees to jobs, grades, and pay zones based on data from your HRIS. This guide covers how matching works and how to set it up.

What Is Employee Matching?

Employee matching is the process of automatically assigning employees to:

  1. Jobs or Grades - Based on their role information from HRIS
  2. Pay Zones - Based on their location information from HRIS

Once matched, employees see their compensation bands in Team View and Total Rewards, and you can analyze their position within those bands.

Important: Your company will use ONE of the following HRIS matching methodologies:

  • HRIS Family + HRIS Level
  • HRIS Title
  • HRIS Title + HRIS Level
  • HRIS Job Code

The methodology is set when you create your band set and applies to all jobs in that band set.

Unmatched Employees Alert

When employees don't match to any band, you'll see an alert in the band set header:

🔺 1 unmatched

image.png

Clicking this opens the Unmatched employees modal showing:

  • List of employees that don't match any band in this band set
  • Their HRIS data (Job family, Job level, City, Country, Metro)
  • What job and pay zone they would need to match

Why this matters:

  • Unmatched employees can't see their compensation bands
  • They won't appear in Team View
  • You need to either add bands for their jobs or update their HRIS matching configuration

How Matching Works

The Matching Process

When Pave syncs data from your HRIS, it automatically matches each employee:

  1. Read HRIS data - Pave pulls employee job and location information
  2. Match to job/grade - Using HRIS matchers you've configured
  3. Match to pay zone - Using pay zone matching rules
  4. Assign to band - Employee sees their job/grade's band, adjusted for their pay zone

Example:

Employee: Jane Smith
HRIS Data:
  Job Title: "Senior Software Engineer"
  Job Family: "Engineering"
  Job Level: "P3"
  City: "San Francisco"

Matching Results:
  → Job: Senior Backend Engineer (matched via HRIS matchers)
  → Pay Zone: San Francisco (matched via location rules)
  → Band: $160K-$180K-$200K (Senior Backend Engineer × SF pay zone)

Matching Priority

Jobs/Grades:

  • If using jobs-based band set: Matches to a specific job
  • If using grades-based band set: Matches to a grade
  • If no match: Employee appears as "unmatched"

Pay Zones:

  • Matches to the highest-priority pay zone with matching rules that match the employee's location
  • If no match: Assigned to catch-all zone (if exists)
  • If no catch-all: Remains unmatched

Job/Grade Matching

HRIS Matchers

HRIS matchers are rules that map HRIS field values to jobs or grades.

HRIS fields used for matching:

  • HRIS Family - Job family from HRIS (e.g., "Engineering", "Sales")
  • HRIS Level - Job level from HRIS (e.g., "P3", "IC3", "Level 3")
  • HRIS Title - Job title from HRIS (e.g., "Senior Software Engineer")
  • HRIS Job Code - Job code or ID from HRIS (e.g., "ENG-003")

Editing HRIS Matchers

For each job:

  1. Go to Jobs tab

  2. Select a job

  3. Click Edit or open job details

  4. Scroll to HRIS Matching section

  5. Add values for relevant fields:

    • HRIS Family: Add family names from your HRIS
    • HRIS Level: Add level codes/names
    • HRIS Title: Add job titles
    • HRIS Job Code: Add job codes
  6. Save

Change HRIS Matcher.gif

For grades-based band sets

HRIS matching works the same way, but at the job level. Jobs are then assigned to grades.

Workflow:

  1. Create jobs with HRIS matchers
  2. Assign jobs to grades
  3. Employees match to jobs via HRIS matchers
  4. Jobs inherit grade's compensation bands

Pay Zone Matching

Location Fields

Pay zone matching uses location fields from your HRIS:

  • City - Employee's city
  • Metro - Metro area (e.g., "San Francisco-Oakland-Hayward")
  • State - State or province
  • Country - Country

Pay Zone Matching Rules

Each pay zone can have multiple matching groups, and each group has matching clauses.

Matching clause:

  • Field - Which location field to check (City, Metro, State, Country)
  • Operator - How to compare (Is, Is one of, Contains, Starts with)
  • Values - The values to match against

Example:

Pay Zone: San Francisco Bay Area

Matching Group 1:
  Metro IS "San Francisco-Oakland-Hayward"

Matching Group 2:
  City IS ONE OF ["San Francisco", "Oakland", "San Jose", "Palo Alto"]
  State IS "California"

Matching Logic

Within a group: All clauses must match (AND logic)

Multiple groups: Any group can match (OR logic)

Example:

Employee matches SF Bay Area if:
  (Metro = "San Francisco-Oakland-Hayward")
  OR
  (City IN ["San Francisco", "Oakland", "San Jose", "Palo Alto"] AND State = "California")

Hierarchy Order

If an employee matches multiple pay zones, Pave uses hierarchy order (lower numbers = higher priority).

Example:

Pay Zone: San Francisco (hierarchy: 1)
  City = "San Francisco"

Pay Zone: California (hierarchy: 2)
  State = "California"

Employee in San Francisco:
  → Matches both zones
  → Assigned to "San Francisco" (hierarchy 1 wins)

Catch-All Pay Zone

The catch-all zone captures employees who don't match any other zone.

Setup:

  1. Create or edit a pay zone
  2. Check Is Catch-All
  3. No matching rules needed

Employees only match catch-all if they don't match any other zone.

Troubleshooting Unmatched Employees

Common Reasons for No Match

Job/Grade matching issues:

  1. No HRIS matchers configured for any job
  2. HRIS matchers don't match employee's HRIS values
  3. HRIS data is missing or null for employee
  4. HRIS values have unexpected format or spelling

Pay zone matching issues:

  1. No pay zone matching rules configured
  2. Employee's location doesn't match any rules
  3. Location data is missing or null
  4. No catch-all zone exists

Diagnostic Steps

Step 1: Check employee's HRIS data

  1. Click on the unmatched employee
  2. View their HRIS values:
  • What's their HRIS Family, Level, Title, Job Code?
  • What's their City, Metro, State, Country?
  1. Note any missing or unexpected values

Step 2: Check if matchers exist

  1. Look for a job that should match this employee
  2. Check if that job has HRIS matchers configured
  3. Look for a pay zone that should match this employee's location
  4. Check if that pay zone has matching rules

Step 3: Compare values

Do the employee's HRIS values match the matcher values exactly?

  • Check spelling
  • Check capitalization
  • Check for extra spaces
  • Check for special characters

Example issue:

Employee HRIS Title: "Sr. Software Engineer"
Job matcher: "Senior Software Engineer"
Result: No match (different abbreviation)

Fix: Add "Sr. Software Engineer" to the matcher

Fixing Unmatched Employees

Option 1: Update HRIS matchers

If many employees have the same HRIS values:

  1. Update the job's HRIS matchers to include those values
  2. Employees will automatically re-match

Option 2: Fix HRIS data

If employee's HRIS data is wrong:

  1. Update the data in your HRIS system
  2. Wait for next sync (or manually trigger sync)
  3. Employee will re-match automatically

Option 3: Expand pay zone rules

If employees aren't matching pay zones:

  1. Go to Pay Zones tab
  2. Edit the relevant pay zone
  3. Add matching rules for the missing locations
  4. Or create a catch-all zone

Option 4: Manual assignment

For edge cases:

  1. Create a specific job for this employee type
  2. Set up HRIS matchers for their specific values
  3. Or assign them manually if it's truly a one-off

HRIS Fields Reference

Standard HRIS Fields

Different HRIS systems use different field names. Pave normalizes these:

Job Family:

  • Workday: "Job Family"
  • BambooHR: "Department"
  • ADP: "Department"
  • Rippling: "Department"

Job Level:

  • Workday: "Job Level" or "Job Profile"
  • BambooHR: "Job Level" (custom field)
  • ADP: "Job Code"
  • Rippling: "Job Level" (custom field)

Job Title:

  • All systems: "Job Title" or "Title"

Job Code:

  • Workday: "Job Code"
  • BambooHR: "Job Code" (custom field)
  • ADP: "Position Code"
  • Rippling: "Employee ID" or custom field

Location fields:

  • City: Employee's work city
  • State: Employee's work state/province
  • Country: Employee's work country
  • Metro: Metro area (enriched by Pave based on city/state)

Checking HRIS Field Values

To see what values employees have:

  1. Go to Unmatched Employees
  2. View the HRIS columns
  3. Note common patterns
  4. Use those values in your matchers

Or download unmatched employees to CSV for analysis in Excel.

Related Articles

  • Manage & Edit Jobs: Setting up HRIS matchers for jobs
  • Manage Pay Zones: Configuring pay zone matching rules
  • Job Architecture Overview: Understanding jobs, grades, and pay zones
  • Create & Manage Band Sets: Setting up your band set structure

Share