Job Opportunities API

Check the data. Then trust it.

Coverage by country

How many live listings we hold for each country, and what share of them carry the employer's full advert text rather than just a title. Generated from the live ledger, not maintained by hand. No key needed to read it, and none needed to check it — the same figures come out of /public/coverage/countries.

Europe, taken together
EU, EFTA and the UK
599,814
live listings
With full advert text
89.4%
536,296 rows
Countries listed
171
32 of them in Europe
Every country with at least 25 live listings
CountryLiveFull advert textWith salaryEmployers
USUnited States1,575,73475.9%strong183,985104,585
DEGermany169,24493.5%strong7,85729,200
GBUnited Kingdom110,73586.4%strong5,73611,731
INIndia72,37280.1%strong9875,271
FRFrance63,77993.5%strong2,7854,146
CACanada59,81891.0%strong4,6856,109
NLNetherlands50,48592.2%strong5,0027,120
SESweden31,52097.5%strong515,513
AUAustralia23,04289.3%strong2863,204
ESSpain21,73585.1%strong5062,963
BEBelgium16,51487.9%strong1452,338
HUHungary14,30120.4%thin20481
ITItaly14,29090.7%strong3201,823
CHSwitzerland14,19992.0%strong1082,260
MXMexico14,03081.4%strong1981,746
PLPoland12,92684.3%strong2791,907
BRBrazil12,85176.4%strong2971,551
SGSingapore12,66178.7%strong1021,637
PHPhilippines11,43985.8%strong2781,291
MYMalaysia10,22686.3%strong7351,499
AEUnited Arab Emirates10,08789.1%strong7671,172
ATAustria10,08393.7%strong3,1142,096
JPJapan9,96485.6%strong1041,837
CNChina9,83275.2%strong631,186
HRCroatia8,76497.3%strong211,168
IEIreland8,57386.5%strong3141,443
NONorway8,35992.2%strong1401,297
ZASouth Africa7,08091.7%strong664985
PTPortugal7,00388.8%strong115905
DKDenmark5,57691.9%strong42830
GRGreece5,52493.8%strong55655
FIFinland5,12186.2%strong74941
IDIndonesia5,00886.6%strong12906
THThailand4,77081.7%strong61637
COColombia4,70385.3%strong82892
RORomania4,48588.0%strong36762
SASaudi Arabia4,47089.0%strong23617
NZNew Zealand4,10991.7%strong29575
HKHong Kong3,73478.2%strong160735
EGEgypt3,71387.3%strong44513
TW3,60276.3%strong28520
VNVietnam3,55082.1%strong20547
CZCzechia3,33280.6%strong40609
LTLithuania3,03691.9%strong85262
ARArgentina3,01884.6%strong91680
GE2,99768.4%partial23612
KRSouth Korea2,86081.5%strong17600
UAUkraine2,76792.2%strong31365
BGBulgaria2,71788.6%strong75412
PEPeru2,44875.4%strong15321
ILIsrael2,33784.9%strong22397
CLChile2,13583.4%strong9339
TRTürkiye1,84980.7%strong8430
MAMorocco1,77689.7%strong4242
UN1,64698.8%strong483350
LULuxembourg1,62786.9%strong22360
NGNigeria1,51397.4%strong4270
PKPakistan1,45595.9%strong46253
QAQatar1,36783.5%strong7168
CR1,20472.9%strong8235
SKSlovakia1,15082.1%strong26217
RSSerbia1,14492.2%strong11338
MTMalta1,13593.9%strong40231
CYCyprus1,09695.7%strong28237
EEEstonia91694.8%strong17201
LK91492.6%strong4106
GT81688.0%strong16109
LVLatvia77192.2%strong33165
KEKenya75992.2%strong7218
EC67189.0%strong587
JO63278.5%strong0127
TN62683.9%strong5116
PA57177.9%strong2145
KZ52291.0%strong9115
LB45374.2%strong5145
DO44087.3%strong0103
SISlovenia42478.5%strong5116
PR40566.9%partial875
AZ38395.8%strong167226
KW38291.1%strong086
MV36194.5%strong017
UY34982.2%strong0107
BD33890.8%strong5125
BH32682.5%strong386
MU32598.5%strong035
LI32299.4%strong036
RU30697.1%strong391
OM28874.0%strong181
SV28293.6%strong7267
TZ26998.9%strong346
AM26891.0%strong176
AL25392.9%strong36102
HN23090.9%strong1771
SR22281.1%strong125
GH22192.8%strong891
VE21394.4%strong464
BM19993.5%strong012
SW197100.0%strong099
MD18788.8%strong050
IQ18694.1%strong042
NI18397.3%strong047
NP15574.8%strong134
AD14996.0%strong21133
MK14390.2%strong267
FJ14077.1%strong021
DZ14081.4%strong038
ET13680.1%strong046
JM12587.2%strong548
SO125100.0%strong120
BA12095.8%strong054
AO11671.6%strong020
XK11499.1%strong027
KH11178.4%strong446
MZ11095.5%strong025
BO11092.7%strong035
BY107100.0%strong023
GI10499.0%strong027
UG102100.0%strong035
CI102100.0%strong036
CD9899.0%strong130
MM9869.4%partial131
JE9198.9%strong119
MO8969.7%partial017
TT8995.5%strong019
ME8675.6%strong018
IM85100.0%strong218
SN8494.0%strong031
BS8488.1%strong124
SP81100.0%strong014
UZ7994.9%strong031
CM78100.0%strong026
AW7681.6%strong06
GG76100.0%strong015
MC7281.9%strong130
ISIceland7281.9%strong033
KY7084.3%strong117
PG6984.1%strong020
LA6873.5%strong234
ZM6693.9%strong027
PF6690.9%strong29
MQ6598.5%strong119
NA6393.7%strong018
IR6288.7%strong116
HO61100.0%strong03
PY6088.3%strong031
RW5882.8%strong024
GY5791.2%strong016
SC52100.0%strong07
BB5090.0%strong013
RE4998.0%strong125
MG4895.8%strong016
SZ46100.0%strong06
SL4493.2%strong012
GA40100.0%strong012
JA40100.0%strong016
BW39100.0%strong018
NE3791.9%strong424
LY3697.2%strong013
TD33100.0%strong011
BU3387.9%strong022
WS3287.5%strong06
SD3187.1%strong113
AF3080.0%strong014
PO30100.0%strong07
GP28100.0%strong013
GU2796.3%strong115
HT2696.2%strong112
LR26100.0%strong07
ZW26100.0%strong013
SY2596.0%strong016
SM2560.0%partial06
What this table leaves out
  • 777 listings across 78 countries with fewer than 25 live roles each. A percentage over four listings is not a measurement, and publishing one invites a figure that moves 25 points overnight.
  • 897,221 listings whose country we could not determine. They are in the ledger and returned by the API; they are simply in no row above.
  • Salary is our weakest field by far. Read the “with salary” column before you plan anything around it — most employers do not publish one, and we do not invent it.

Full field-by-field completeness, including every field we do not have, is on the coverage page. Where each row came from is on provenance.

Check any row yourself, without an account
curl 'https://api.jobopportunitiesapi.org/public/coverage/countries'
curl 'https://api.jobopportunitiesapi.org/public/jobs?country=FR&has_description=true&limit=5'

No key, no signup, and CORS is enabled so both run from a browser console too. A key buys the advert text itself, the delta feed and bulk export — see the plans or get a free one.

Measured from the live ledger at 2026-09-11 19:23 UTC. Rebuilt continuously; the description crawl is still running, so these percentages rise.