Quarterly pay-equity retention check across your team
Every quarter, compare each employee's pay against the live market band for their role and city, then post a prioritized retention-risk digest to People Ops in Slack.
On the first Monday of every quarter at 9:00am ET, run a retention-focused pay-equity audit across our current team and post a prioritized digest to a designated People Ops channel in Slack.
Trigger: cron, first Monday of each quarter at 9:00am America/New_York.
Steps the agent should take on each run:
1. Pull the full employee roster from BambooHR using Get Employee Directory. Keep only currently active employees.
2. For each active employee, call BambooHR Get Employee and request their job title, work location (city plus state or country), and current compensation (request the compensation tabular fields so the most recent pay rate, pay period, and currency come back). Use the latest compensation row.
3. Normalize each employee's pay to an annual figure in USD before comparing (e.g. hourly times 2080, monthly times 12). Format the city as "City, State" or "City, Country" so it matches what Job Salary Data expects.
4. For each employee with a usable role and location, call Job Salary Data Get Job Salary Estimate with their job title and city. Iterate the returned data array and take the median of the publisher estimates as the market median; also capture the min and max across publishers as the market band.
5. Compute each employee's gap: market_median minus current_pay, and percent below median. Flag anyone whose pay sits more than 10% below the market median as a retention risk. Treat employees within or above the band as healthy and exclude them from the flagged list.
6. Sort the flagged list by dollar gap (largest gap first).
7. Skip employees who are missing job title or location data. Collect them into a separate "records to clean up" list so HR can fix BambooHR fields.
8. Post a single Slack digest using Send a Message to a People Ops channel the user picks at setup (default: #people-ops). Structure:
- Headline with the quarter (e.g. "Q3 2026 pay-equity retention check") and a one-line summary: how many employees were reviewed, how many flagged, and the largest gap.
- One bullet per flagged employee, ordered by gap size: name, role, city, current pay, market median, dollar gap and percent below median, and a short one-line talking point a manager could use in their next 1:1 (e.g. "Market median for senior backend engineers in Austin moved to $X; consider a Q4 adjustment to retain."). Keep talking points neutral, manager-facing, and free of speculation about the employee.
- At the bottom, a "Records to clean up" section listing each employee whose role or location was missing, so HR knows which BambooHR profiles to fix before the next run.
Constraints: do not write anything back to BambooHR; this workflow is read-only on HR data. Do not DM individual employees. Only the People Ops channel receives output. Use the BambooHR account's currency (default USD) and assume a 2080-hour work year if a salary needs to be annualized.
Inputs to ask me for at setup: the Slack channel to post in, the gap threshold (default 10% below market median), and an optional list of BambooHR employee IDs or departments to exclude (e.g. executives reviewed under a separate process).
Additional information
What does this prompt do?
- Pulls your current roster and each person's role, location, and pay from BambooHR every quarter.
- Looks up the live market pay band for that role and city, then compares it to what each person actually earns today.
- Flags anyone sitting meaningfully below the market median as a retention risk and sorts the list by dollar gap.
- Posts a single prioritized digest to your People Ops Slack channel with a manager-ready talking point next to each flagged employee.
What do I need to use this?
- A BambooHR account with permission to read the employee directory and compensation fields.
- A Job Salary Data subscription (a free RapidAPI plan is enough to try it).
- A Slack workspace and a channel where People Ops wants the digest posted.
- Optional: a list of departments or employees to exclude from the audit (e.g. executives reviewed separately).
How can I customize it?
- Change the cadence: monthly, biannual, or once a year instead of quarterly.
- Tune the retention-risk threshold (default flags anyone more than 10% below the market median).
- Pick a different Slack channel, or send a DM to the head of People instead of posting publicly.
- Exclude specific departments, locations, or employee IDs so executive comp stays out of the report.
Frequently asked questions
Does this change anyone's pay in BambooHR?
Who sees the digest?
What if an employee's role or city is missing in BambooHR?
How is the market band calculated?
Can I run it more or less often than quarterly?
Related templates
Catch retention risk before someone hands in notice.
Connect BambooHR, Job Salary Data, and Slack once, and Geni runs this pay-equity check the first Monday of every quarter.