Loading
0x50Lesson 6 of 10

Make the ask

Counter with enthusiasm, a specific number, and reasons.

20 min 5-question quiz 1 code exercise
By the end of this lesson you can
  • Structure a counteroffer conversation.
  • Choose a specific, justified target.
  • Use silence and patience effectively.

Once the written offer is in hand, it is time to counter. A good counter is warm, specific, and grounded in reasons. You are not making demands; you are helping the recruiter - who usually wants to close you - build a case internally to improve the offer.

A structure that works

  1. Thank them and show enthusiasm: make it clear you want to join.
  2. State the gap and your reasons: competing offers, market data for the level, or the scope you bring.
  3. Ask for a specific number or change: “Could you get total compensation to 245,000?” rather than “Can you do better?”
  4. Pause. Let them respond; resist filling silence by lowering your own ask.
  5. Signal commitment where true: “If we can get there, I’m ready to sign this week.”
offer.py
1offer_total = 220_000
2target_increase_pct = 10
3counter = round(offer_total * (100 + target_increase_pct) / 100, -3)
4print(f"Counter at about {int(counter):,}")
Output
Counter at about 242,000

Precise numbers such as 242,000 can come across as researched rather than arbitrary. Aim a little above what you would happily accept, so there is room to meet in the middle. Many people negotiate by phone for warmth and by email for clarity - a common pattern is to discuss by phone, then confirm in writing.

Key takeaways

  • Enthusiasm, reasons, a specific number, then silence.

  • Aim slightly above what you would happily accept.

  • Offer commitment in exchange for movement when you mean it.

Lesson quiz

5 questions · pass with 4 correct · up to 50 XP

Passing this quiz completes the lesson and keeps your streak going. Questions you miss come back in review sessions later.

Practice: run the numbers

Use short Python programs to calculate total compensation, vesting, market percentiles, and counteroffers. These exercises run locally in your browser.

Exercise 1

Calculate a counteroffer

+25 XP

Read the offered total compensation and a target increase percent. Compute the counter as offer * (100 + percent) / 100, rounded to the nearest thousand (halves round up), using integer arithmetic. Print Counter: X with thousands separators.

  • Ten percent
  • Rounds up
  • Rounds down
main.py
Loading editor…

Python runs in a sandboxed browser worker with a 60 second time limit. Its runtime loads from the Pyodide CDN; your code stays in this browser.

Questions about this lesson

Stuck? Ask. Figured something out? Share it. Explaining is one of the best ways to learn.

Loading posts…

Did you like the lesson? 😆👍
Consider a donation to support our work: