Checking
The probe is a full round-trip and includes network time; the server figures are processing time only and exclude it.
Pricing
Start free, upgrade when your volume grows.
Free
€0 forever
100 calls / month
- Every endpoint, nothing locked
- All 18 countries
- Net pay + employer cost
- Enough to evaluate before you buy
Solo
€29 /month
2,500 calls / month
- Everything in Free
- 25× the free call volume
- €0.0116 per call
- Email support
Starter
€99 /month
10,000 calls / month
- Everything in Solo
- 100× the free call volume
- €0.0099 per call
Scale
€299 /month
100,000 calls / month
- Everything in Starter
- 1,000× the free call volume
- €0.0030 per call
- Volume pricing available
- Priority support
Prices exclude VAT. Cancel any time from the billing portal.
Need more than 100,000 calls, a white-label widget or an SLA? Get in touch.
Contact usIntegrate in minutes
One request in, a full salary breakdown out. No SDK required.
curl -X POST https://netsalary.app/api/v1/calculate \
-H "Authorization: Bearer nsk_live_xxx" \
-H "Content-Type: application/json" \
-d '{"country":"de","gross":5000,"period":"monthly"}'Endpoints
Nine endpoints: calculations, tax data and market context.
/api/v1/calculateNet pay, employer cost & itemized breakdown for one country
/api/v1/compareThe same calculation across multiple countries at once
/api/v1/reverseDesired net in, required gross out — with the full breakdown
/api/v1/countriesSupported countries & data freshness
/api/v1/brackets/:countryTax brackets & social contribution rates
/api/v1/ratesLive EUR exchange rates for all supported currencies
/api/v1/holidays/:countryPublic bank holidays per country and year
/api/v1/percentiles/:countryWhere a salary sits in a country's distribution (p10–p99)
/api/v1/cost-of-living/:countryRent, groceries and purchasing-power indices per country
Every endpoint answers a free key — 100 calls a month. Paid plans add volume, not endpoints.
Documentation
Everything you need to integrate: authentication, parameters and error handling.
Authentication
Send your API key as a Bearer token in the Authorization header. Create and manage keys in the dashboard. /developers/keys
Authorization: Bearer nsk_live_…Request parameters
Body fields for POST /api/v1/calculate and /api/v1/compare.
countrystringrequiredTwo-letter country code, e.g. "de"
countriesstring[]optionalArray of country codes (/compare only, replaces country)
grossnumberrequiredGross salary in the country's local currency
periodstringrequiredPeriod of the gross amount: "monthly" or "yearly"
yearnumberoptionalTax year: 2025, 2026 or 2027 (default 2026). 2027 is only partly legislated — see yearDataStatus in the response.
Response fields
netnumberNet take-home pay per period
employerCostnumberTotal cost to employ: gross + employer contributions
effectiveRatenumberEffective tax rate in percent
currencystringLocal currency of all amounts
breakdownarrayItemized tax lines: income tax, social contributions and more
Reverse calculation
/api/v1/reverseSend the net salary a candidate wants; get back the gross you need to offer and what it costs you as an employer.
POST /api/v1/reverse { "country": "de", "net": 3500, "period": "monthly" }
→ { "requiredGross": 5160, "employerCost": 6251, … }Bank holidays
GET /api/v1/holidays/:countryPublic holidays with localized names. Query params: year (2026 or 2027) and lang (11 languages).
GET /api/v1/holidays/de?year=2026&lang=de
→ { "count": 11, "holidays": [ { "date": "2026-01-01", "name": "Neujahr" }, … ] }Errors
401Missing or invalid API key
422Validation failed: unsupported country, bad amount or year
429Monthly quota exceeded
A salary calculation API built for payroll, EOR and finance teams
NetSalary API turns gross salaries into net take-home pay and total employer cost using the 2026 tax rules of 18 countries — 16 across Europe plus Brazil and the UAE — including income tax brackets, social contributions and employer charges. It is the same engine behind the NetSalary calculator, exposed as a simple REST API for payroll software, employer-of-record platforms, relocation tools and HR systems.
What teams build with it
Payroll & accounting
Show employees accurate net pay and finance teams the true cost of every hire before the payroll run.
EOR & global hiring
Quote total employment cost across 18 countries in one request when pricing international offers.
Relocation & mobility
Compare take-home pay between countries so candidates see what an offer is really worth after tax.
Job boards & fintech
Enrich listings and financial products with net salary estimates and public holiday calendars.
Frequently asked questions
What is a net salary API?
A REST service that converts gross salary into net take-home pay. You send a country, a gross amount and a period; the API returns net pay, total employer cost, the effective tax rate and an itemized breakdown of income tax and social contributions.
Which countries does the salary API support?
Eighteen countries: Germany, United Kingdom, Netherlands, Spain, Poland, Switzerland, Ireland, Portugal, Sweden, Norway, Finland, Estonia, Latvia, Lithuania, Austria, Belgium, Brazil and the UAE — with 2025 and 2026 tax rules.
How accurate are the calculations?
Each country's rules are maintained against official 2026 tax brackets and social contribution rates, and every response includes the date the rules were last reviewed. Results are estimates for standard employment income and do not replace professional tax advice.
Does it calculate employer cost as well as net pay?
Yes. Every calculation returns both the employee net take-home pay and the total cost to employ — gross salary plus employer social contributions — which is what finance teams need for budgeting and quoting international hires.
Is there a free tier?
Yes — 100 calls a month, with every endpoint and all 18 countries included, so you can build the whole integration before you pay. Paid plans differ only in volume: €29 a month for 2,500 calls, €99 for 10,000 and €299 for 100,000.
How do I get started?
Create a free API key in the dashboard, then send your first request with a single curl command. No SDK, contract or sales call required.