Compare two job offers in different countries
Updated July 2026 · runs on cityparity's per-country tax and safety-net engine
Comparing job offers across countries means comparing what each one leaves you after taxes, childcare, and healthcare, not the gross salary on the letter. The gross is the one number that does not survive the border. Two offers can look a mile apart in dollars and land within a rounding error once you count what each government takes and what it hands back. This page shows you how to read them side by side, then drops you into the calculator with a real offer pre-loaded.
Already have both numbers? Skip the reading and put them head to head.
Open the offer comparison →Opens the worked example below. Swap in your own cities and salaries once it loads.
A worked example where the bigger offer loses
Take a two-earner family with a one-year-old and a three-year-old, both headed for daycare. One parent has a San Francisco offer of $250,000; their partner expects to earn about $150,000 locally. That is a $400,000 household. The competing move is Berlin, where the offer is EUR 110,000 and the partner would earn around EUR 80,000, a EUR 190,000 household. On paper San Francisco pays more than double.
Run both through their real tax codes and daily costs and the gap closes, then reverses:
| Household of four, two kids in daycare | San Francisco offer | Berlin offer |
|---|---|---|
| Household gross | $400,000 | EUR 190,000 |
| Effective tax + payroll | 28% | 41% |
| Childcare, two kids | $57,600 | EUR 0 (free Kita) |
| Healthcare | Employer premiums + deductibles | Universal, small out-of-pocket |
| Child benefit paid to you | $0 | EUR 6,216 |
| Net cash kept per year | $101,300 | EUR 95,800 (~$109,600) |
Berlin leaves the family roughly $8,000 a year ahead, on an offer that looked less than half the size. The whole swing is the safety net. San Francisco childcare runs about $57,600 for two kids; Berlin's public Kita is free. Add universal healthcare in place of employer premiums and deductibles, plus EUR 6,216 of Kindergeld paid straight to the parents, and Germany's higher tax rate stops being the headline.
Put differently: the Berlin offer that would have merely matched San Francisco's net cash was about EUR 98,000. The actual EUR 110,000 offer clears that bar with room to spare. (Germany taxes couples jointly through income splitting, which this tool does not yet model, so the real Berlin tax is a little lower and the gap a little wider than shown. The number is conservative.)
This is not an argument that Europe always wins. Flip the household to a single earner with no kids and the math flips too: with no childcare to offset and high rents, a lower European salary can trail a US one badly. That is exactly why you run your own numbers instead of trusting a rule of thumb.
How to compare your two offers in four steps
- Enter the first offer as your source city. Gross salary, your partner's salary if they will work, and your kids' ages. This is the baseline the second offer is measured against.
- Enter the second city and type in the real salary. Put in the actual salary you were offered. The calculator then compares your two real numbers head to head, instead of estimating a matching salary.
- Add the facts that move the answer. How many kids are in daycare, whether your partner works in each place, rent versus own. These swing the result far more than the small stuff.
- Read the net cash line. That is what each offer leaves after tax, payroll, childcare, healthcare, and the local child benefit. Compare that, and let the gross salaries argue among themselves.
Related reading
Common questions
Why can't I just compare the gross salaries?
Because two countries tax, subsidize, and charge for daily life differently. A $250,000 San Francisco salary and a EUR 110,000 Berlin salary keep a different share of every dollar and euro once income tax, payroll, childcare, and healthcare come out. Compare what each offer leaves you, called net cash.
Can a lower foreign salary ever beat a higher US one?
Yes, most often for families with young kids. The worked example above has a Berlin household grossing less than half of a San Francisco one end up a few thousand dollars ahead, because daycare is free, healthcare is universal, and the state pays child benefit.
What is an equivalent salary, and how is it different from my real offer?
An equivalent salary is the gross you would need in city B to keep the same net cash you keep in city A. It sizes an offer you do not have yet. It is a modeling result, not a promise that such an offer exists. When you already hold a real number, just enter it and compare the two actual offers.
What does the comparison leave out?
One-time moving costs (visas, shipping, brokers on both ends), currency risk, and everything unpriceable: weather, language, distance from family, career path. Figures are nominal, in each data point's last-updated year. Treat any single number as a strong estimate.
Figures come from cityparity's per-city engine, computed from official sources with a per-value audit trail; currency conversions use rates that drift daily. The two-earner tax treatment for separate-filing countries is being refined and currently runs on the conservative side. See the methodology.