Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Plan a compensation negotiation grounded in numbers and leverage, not nerves. Use when asked to negotiate salary, evaluate or counter a job offer, prepare for a comp conversation, or compare offers. Produces a negotiation plan — total-comp comparison across offers, your target/walk-away and BATNA, the value-based justification, the counter scripts, and what to negotiate beyond base.
.claude/skills/mohitagw15856-salary-negotiation/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -1% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 53% | 0% |
| case-22 | ✓→✓ | = Same ✓ | 12% | 0% |
| case-03 | ✓→✓ | = Same ✓ | -7% | 0% |
Most people leave money on the table because they negotiate from anxiety instead of preparation. This skill replaces nerves with a plan: compare offers on total comp (not just base), set a target and a walk-away anchored to your BATNA, justify the ask with your value, and script the counter — including the levers beyond base salary that are often easier wins.
Ask for these only if they aren't already provided:
1. Total-comp comparison — never compare base-to-base. Lay out total annual comp across the offer(s) and your current/alternative (use the helper script). Equity and bonus often flip the ranking.
2. Your numbers — target (ambitious but justifiable), walk-away (below which you decline), and anchor (open slightly above target). All three anchored to market + your BATNA.
3. Leverage read — how much you have (competing offer? scarce skills? they've invested in the process?) and how to use it without bluffing.
4. The justification — the value-based case for the ask: your evidence (impact, comparable comp, the competing offer), framed collaboratively ("I'm excited; to make this work…").
5. Counter scripts — exact wording for: countering the base, responding to "that's our max", and the non-base levers (sign-on, equity, title/level, start date, remote, review timing) that often move when base can't.
6. The walk-away plan — what you do if they won't meet the walk-away (and why having decided this in advance is your real power).
scripts/comp_compare.py (stdlib only) computes total annual comp across offers so you compare apples to apples (equity amortised, sign-on annualised):
bash# offers.json: [{"name":"Offer A","base":160000,"bonus":24000,"equity_total":200000,"equity_years":4,"signing":20000}, ...] python3 scripts/comp_compare.py offers.json python3 scripts/comp_compare.py offers.json --signing-years 1 --json
Principled-negotiation practice (Getting to Yes — Fisher & Ury: BATNA, interests over positions) applied to compensation.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-22 | pass→pass | 25,966 | 26,877 | +4% | 1 | 1 | 0% | 2,681 | 3,001 | +12% | 0 | 0 | — |
case-01 | fail→pass | 33,680 | 29,807 | -11% | 1 | 1 | 0% | 5,666 | 5,634 | -1% | 0 | 0 | — |
case-02 | fail→fail | 21,005 | 39,951 | +90% | 1 | 1 | 0% | 3,068 | 5,140 | +68% | 0 | 0 | — |
case-03 | pass→pass | 19,094 | 11,531 | -40% | 1 | 1 | 0% | 2,030 | 1,885 | -7% | 0 | 0 | — |
case-04 | pass→pass | 21,873 | 30,128 | +38% | 1 | 1 | 0% | 2,499 | 4,688 | +88% | 0 | 0 | — |
case-05 | pass→pass | 21,696 | 16,008 | -26% | 1 | 1 | 0% | 2,017 | 2,348 | +16% | 0 | 0 | — |
case-06 | pass→pass | 19,279 | 27,288 | +42% | 1 | 1 | 0% | 2,142 | 3,695 | +73% | 0 | 0 | — |
case-07 | pass→pass | 13,452 | 17,607 | +31% | 1 | 1 | 0% | 2,124 | 2,612 | +23% | 0 | 0 | — |
case-08 | pass→pass | 22,648 | 18,440 | -19% | 1 | 1 | 0% | 2,367 | 2,704 | +14% | 0 | 0 | — |
case-09 | fail→pass | 10,619 | 3,159 | -70% | 1 | 1 | 0% | 1,569 | 1,358 | -13% | 0 | 0 | — |
case-10 | pass→pass | 20,033 | 14,610 | -27% | 1 | 1 | 0% | 2,268 | 3,066 | +35% | 0 | 0 | — |
case-11 | pass→pass | 8,213 | 12,521 | +52% | 1 | 1 | 0% | 1,190 | 2,236 | +88% | 0 | 0 | — |
case-12 | pass→pass | 16,590 | 21,863 | +32% | 1 | 1 | 0% | 1,963 | 4,189 | +113% | 0 | 0 | — |
case-13 | pass→pass | 23,666 | 31,302 | +32% | 1 | 1 | 0% | 3,007 | 4,822 | +60% | 0 | 0 | — |
case-14 | pass→pass | 21,163 | 26,437 | +25% | 1 | 1 | 0% | 2,309 | 3,161 | +37% | 0 | 0 | — |
case-15 | pass→pass | 17,826 | 22,286 | +25% | 1 | 1 | 0% | 2,106 | 3,430 | +63% | 0 | 0 | — |
case-16 | pass→pass | 25,120 | 29,613 | +18% | 1 | 1 | 0% | 2,614 | 4,276 | +64% | 0 | 0 | — |
case-17 | pass→pass | 24,270 | 30,822 | +27% | 1 | 1 | 0% | 3,368 | 4,702 | +40% | 0 | 0 | — |
case-18 | pass→pass | 17,809 | 25,829 | +45% | 1 | 1 | 0% | 2,975 | 4,573 | +54% | 0 | 0 | — |
case-19 | fail→pass | 23,350 | 26,171 | +12% | 1 | 1 | 0% | 2,351 | 3,594 | +53% | 0 | 0 | — |
case-20 | pass→pass | 31,988 | 28,232 | -12% | 1 | 1 | 0% | 4,058 | 4,724 | +16% | 0 | 0 | — |
case-21 | pass→pass | 31,326 | 23,585 | -25% | 1 | 1 | 0% | 4,667 | 4,682 | +0% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +14 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.