Quarterly pay-equity retention check across your team

By General Input

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.

Integrations

  • BambooHR
  • Job Salary Data
  • Slack

Type

Agentic Task

Categories

  • HR & People

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).

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredChat quality review board for LiveChat support leadsWin back no-show and cancelled appointments every morningLive Loop returns analytics with product-level drill-downNewsletter pre-flight and approval board for Mailjet sendsTurn a prospect spreadsheet into personalized sequence enrollmentsMailjet email delivery lookup console for support teamsCatch feature flags that never got switched on in productionKajabi customer support console for member access fixes