Compensation review board for your CharlieHR pay round
See every team member's salary, time since their last raise, and pay band position in one place, then draft and log your raise decisions.
Build me a compensation review board that I open each time we run a pay round. It reads from CharlieHR and gives me one screen where I can see everyone's pay, spot outliers, draft proposed raises, and then get the round logged, exported, and communicated.
The main screen is a roster table listing every active team member with their name, job title, team, office, current salary, the date that salary last changed, and how many months it has been since their last raise. Build the roster from CharlieHR's List Team Members, current pay and effective dates from List Salaries, and resolve names for team and office using List Teams and List Offices. Calculate months since last raise from the effective date of the most recent salary record. Let me filter the table by team and by office, and let me sort by months since last raise so the people who have waited longest rise to the top.
Alongside the table, show a per team pay spread with the lowest, median, and highest salary for each team so outliers are obvious at a glance. When I filter to a single team or office, the spread recalculates for that selection. Visually flag anyone whose salary sits well outside the range for their team.
Clicking a person opens their detail view showing their full salary history from List Team Member Salaries, newest first, with each amount, its effective date, and the percentage change from the previous figure. Include a compact timeline so I can see the shape of their pay progression over time.
Optionally I can point the app at a Google Sheet of pay bands per role and level. Let me enter a spreadsheet ID and range in the app's settings, read it with Google Sheets Get Values, and expect columns for role, level, minimum, midpoint, and maximum. When bands are configured, flag each person as below band, within band, or above band, and show where they sit relative to the midpoint of their range. When no sheet is configured, hide the band column entirely rather than rendering empty cells.
For each person I can draft a proposed new salary with a rationale, in a form on their detail view. Persist proposals in the app's own storage, keyed by the pay round, so I can work through a round across several sittings and come back to a half finished draft. Next to each proposal show the increase amount, the increase percentage, and the resulting band position, plus a running total of what the whole round would cost.
Three actions close out the round. First, log the decision back to CharlieHR as a note on the person's record using Create Team Member Note, capturing the proposed figure, the rationale, and the date. Second, export the whole proposed round to a Google Sheet for finance sign off using Append Values, one row per person with current salary, proposed salary, increase, team, office, band position, and rationale. Third, send each manager a Slack message summarizing their team's proposals using Slack Bot's Send a Message, with the destination channel or user chosen in the app. Confirm with me before any of these run, and track which people have already been noted, exported, or messaged so nothing gets double posted.
Two CharlieHR rules are important. CharlieHR is read only for salaries, so the app must never claim to write a new salary back to CharlieHR. It proposes, logs a note, and exports, and the copy in the app should make clear that the actual pay change still has to be made by a person inside CharlieHR. Salary data is also restricted to Super Admin credentials, so if salary fields come back empty or partial, show a clear explanation that the connected CharlieHR key lacks Super Admin access to salary data, rather than rendering a blank table.
CharlieHR list endpoints return at most 25 records per page and paginate with a next page link in the response metadata, so every handler must page through until results run out rather than assuming a single response holds the whole company. Keep the design calm and dense, since this is a serious internal tool handling sensitive data, and put a quiet note on the main screen reminding whoever opens it that only Super Admins can see salary figures.
What does this prompt do?
- Lists every active team member with their current salary, when it last changed, how many months it has been since their last raise, and their team and office.
- Shows the pay spread for each team, lowest, median and highest, so anyone sitting outside the range is easy to spot.
- Optionally checks everyone against your own pay bands, flagging each person as below, within, or above band for their role and level.
- Lets you draft a proposed new salary with a rationale, then log the decision to the person's record, export the round to a spreadsheet for finance sign off, and send each manager a Slack summary of their team's proposals.
What do I need to use this?
- A CharlieHR account connected with Super Admin access. Salary figures are only visible to Super Admins.
- A Google account, if you want to read pay bands from a spreadsheet or export the round for finance sign off.
- A Slack workspace, if you want managers to receive a summary of their team's proposals.
- Your pay bands per role and level in a spreadsheet. This one is optional.
How can I customize it?
- Point it at your own pay band spreadsheet, or run without bands and compare each person to their team's range instead.
- Change what counts as an outlier, for example flagging anyone who has gone more than 18 months without a raise.
- Choose whether managers get a Slack message, and whether it lands in a channel or a direct message.
FAQs
Does this change anyone's salary in CharlieHR?
Who can see the salary figures?
Do I need pay bands set up to use this?
Will it work for a company of a few hundred people?
Can I work through the review over several sessions?
Related templates
Stop buying stale lists. Reps run a saved search, work the results like an inbox, and only the accounts they approve ever reach your CRM.
See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.
One screen showing every social post waiting on approval, sorted by deadline, so reviewers can approve or reject without leaving the page.
Every Monday, find the past champions and closed-won contacts who changed jobs, update Attio, and get the moves worth chasing in Slack.
Staff submit what happened, your social manager edits the copy, picks the accounts and puts it on the calendar without a single spreadsheet.
Drag creators through Sourced to Wrapped on a board grouped by campaign, with audience stats on every card and a one-click brief for each creator.
Stop running your pay round in a spreadsheet.
Open one board that shows current pay, time since the last raise, and band position, then log and export every decision.