The Waiting Game · McCall 1970

Every week brings
a new offer.
When do you say yes?

A job offer just arrived. It's decent — but is it good enough? What if something better shows up next week? And what if you wait too long and the bills pile up?

This is the job search problem. It's been studied by economists for 50 years. You're about to feel exactly why it's hard — and then learn the math that solves it.

scroll to begin
Act I · The Search

You're unemployed.
Offers arrive randomly.

Each week, one wage offer appears. Accept and you earn that wage for the rest of your career. Reject and collect $10 in unemployment benefits while you wait for the next one.

Offers follow a realistic salary distribution — about % will fall somewhere between $ and $. A few will be much lower. A few will be much higher. You won't know which until it arrives.

Your goal: maximize your lifetime income. The catch — you must decide on each offer before seeing the next one.

Tutorial · Step 1 of 3
Your turn

Now that you understand the mechanics, practice it for real. Twenty offers. One chance at each.

Week 1
Benefits collected: $0
Weeks: 0
Best seen:
Act II · Utility

Money doesn't go
as far as you think.
Feel it.

The last game treated every dollar equally — a $50 offer twice as good as a $25 one. But that's not how people actually experience money. The difference between $0 and $25 feels nothing like the difference between $975 and $1,000.

Before the math can work properly, we need a better model of what a dollar is actually worth.

This next game will show you what we mean. It's a clicker — your clicks per second represent your wage. Click faster and you can afford more, but you'll notice the value of each new luxury tapers off. At some point it just takes too much effort to sustain, and the extra income buys you almost nothing new.

clicks / sec
You've hit the ceiling. No amount of effort gets you higher — you'd need something working for you while you sleep.
🍕
Pizza night
Ordering without checking the price. No guilt.
≥ 1/s
🍽️
Dinner out
A real restaurant. You don't look at the right side of the menu.
≥ 2.5/s
🏨
Weekend away
A hotel that doesn't make you nervous to touch things.
≥ 4/s
📦
Hired movers
Someone else carries the couch. Worth every dollar.
≥ 5.5/s
🧹
Housekeeper
Every two weeks. You come home to clean floors.
≥ 7/s
✈️
First class
Lie-flat seat. Real food. You arrive rested.
≥ 9/s
🛥️
Private yacht
You don't fly commercial. You don't wait. You just go.
≥ 11/s

Economists capture this effect by converting dollars into an abstract concept called utility — a measure of satisfaction rather than raw income. And because each additional dollar buys less and less satisfaction, they reach for the logarithm: u(w) = ln(w). The log function grows quickly at first and slowly thereafter, embodying exactly the diminishing returns you just felt. The jump from $1 to $10 is enormous. The jump from $1,000 to $1,010 is nearly invisible. This is why a worker at $20/hr will quit for $25 but a worker at $90/hr won't bother.

Act III · Patience & Leverage

How patient can
you afford to be?

Patience isn't a personality trait here — it's a financial position. Your discount factor β answers one question: how much trouble are you in right now, and how confident are you that waiting won't make it worse?

Someone with a repo notice on their car and an empty account can't wait. Someone with three months of runway and no debt can afford to be very picky.

Alex
Two months behind on rent. Car note overdue. Borrowing from family. Each week without income is a genuine crisis.
β ≈ 0.60
Jordan
Paycheck to paycheck but current on bills. Small cushion. Can survive a few more weeks — but not many.
β ≈ 0.80
Morgan
Six months emergency fund. No debt. Searching from strength — the next job needs to actually be right.
β ≈ 0.93
You
Set your own situation with the slider below.
β = 0.90
Your β — financial runway 0.90

Higher β doesn't make you more virtuous or strategic. It means the world is giving you the luxury of time. The math treats both situations equally — it just finds the best rule given your actual position.

Act IV · Job Loss

What if the job
doesn't last forever?

We've assumed: accept a job, earn that wage forever. But jobs end. Companies downsize. Contracts expire. You might be back here sooner than you think.

We model this with a separation rate α: each period there's an α chance you get laid off and return to searching. This changes what a job offer is actually worth.

Stable role (α = 0.02)
Expected tenure~50 weeks
Essentially permanent. Each accepted offer is a long-term commitment. Worth being selective.
Precarious role (α = 0.25)
Expected tenure~4 weeks
Contract or gig. High churn. Accepting a bad offer just means you'll be searching again soon anyway.
Separation rate α 0.10

Counterintuitively, higher job insecurity lowers your reservation wage. If you'll likely be searching again soon regardless, holding out for perfect costs more than it saves. The model captures this exactly.

Act V · The Decision Rule

Now let's build
the Bellman equation.

We have all the pieces. The Bellman equation is the mathematical decision rule that ties it all together. Click through to build it one piece at a time.

Act VI · The Full Model

Your optimal
reservation wage.

Adjust the three parameters. The model solves instantly.

More runway → pickier
Higher benefits → higher outside option
More insecurity → lower w*
Reservation Wage w*
Reject any offer below this
Mean Search Duration
Expected weeks until acceptance
Computing…
Value Functions & Reservation Wage
Wage Offer Distribution — Accepted vs. Rejected
Model: McCall (1970) with job separation · Wages ~ N(WAGE_MU, WAGE_SIGMA) on [0,100] · 60-point grid
Fixed-point iteration on scalar continuation value · Reservation wage via linear interpolation