World Bank Data Scraper
Pricing
from $2.50 / 1,000 results
World Bank Data Scraper
Scrape World Bank Open Data: GDP, population, inflation, unemployment, CO2 and 1,500+ development indicators for every country, region and year since 1960, by indicator code, keyword or data.worldbank.org link, with region and income level. No API key, no login.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
Anyx Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Security
Limited permissionsShare

World Bank Data Scraper
GDP, population, inflation, unemployment, CO2 and 1,500+ World Bank development indicators for every country and year, as clean JSON.
World Bank Open Data is the reference source for comparing countries: national accounts, prices, jobs, population, health, education, energy, climate and poverty, for 217 economies and dozens of regions and income groups, many series going back to 1960. This Actor scrapes World Bank Open Data by indicator code, by keyword search, or from a data.worldbank.org link, for the countries and years you choose. Every row is one value: an indicator for a country in a year, with the country's ISO3 and ISO2 codes, region and income level, the unit, the date the series was last updated, the source database, and a link to the chart on data.worldbank.org. Paste a country page to get its 24 headline indicators in one go. There is no login, no API key and no proxy to configure. Built for economists and analysts, market-entry and country-risk research, ESG and climate reporting, dashboards and BI, journalism, and feeding clean macro data into models and AI pipelines.
⚡ Quick start
{"startUrls": [{"url": "https://data.worldbank.org/indicator/NY.GDP.MKTP.CD?locations=US-CN&start=2000&end=2020"}],"maxItems": 5}
Or pick indicators and countries, latest value only:
{"indicators": ["NY.GDP.MKTP.CD", "SP.POP.TOTL", "FP.CPI.TOTL.ZG"],"countries": ["US", "CN", "DE", "IN", "BR"],"mostRecentValues": 1,"skipEmptyValues": true}
Or search indicators by name, for every country since 2010:
{"indicatorSearch": ["unemployment total"],"maxIndicatorsPerSearch": 2,"yearFrom": 2010,"maxItems": 5000}
🧩 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
startUrls | array | no | — | data.worldbank.org pages: an indicator page with its countries and years (/indicator/NY.GDP.MKTP.CD?locations=US-CN&start=2000&end=2020), or a country or region page (/country/united-states, /region/east-asia-and-pacific). |
indicators | array | no | — | World Bank indicator codes, one per line, such as NY.GDP.MKTP.CD or SP.POP.TOTL. See the popular codes below. |
indicatorSearch | array | no | — | Find indicators by name, one search per line, such as unemployment total or renewable energy. Every word must appear in the name; a code prefix such as SL.UEM also works. |
maxIndicatorsPerSearch | integer | no | 5 | How many matching indicators each search returns, best matches first. |
countries | array | no | — | Countries, regions or groups by ISO2 or ISO3 code or by name: US, CHN, Germany, WLD (world), EUU (European Union), EAS (East Asia & Pacific), HIC (high income). Empty or all means every country. |
includeAggregates | boolean | no | false | When every country is asked for, also return regional and income-group aggregates such as World or Sub-Saharan Africa. |
yearFrom | integer | no | — | Only values for this year or later. Leave empty to start in 1960. |
yearTo | integer | no | — | Only values for this year or earlier. Leave empty to end at the latest year. |
mostRecentValues | integer | no | — | Only the latest N years per country, such as 1 for a snapshot. Overrides yearFrom and yearTo. |
skipEmptyValues | boolean | no | false | Leave out years without a value. With mostRecentValues, returns the latest N years that have one. |
maxItems | integer | no | — | Maximum rows per indicator code, search match or start URL. The input form starts at 5; leave it empty to get every row. |
proxyConfiguration | object | no | { "useApifyProxy": false } | Proxy settings. World Bank data needs no proxy. |
Add at least one start URL, indicator code, indicator search or country. countries, yearFrom,
yearTo, mostRecentValues and skipEmptyValues apply to indicator codes, searches and country
pages. An indicator page keeps the countries and years set in its address and uses the input's only
when it has none. With countries but no indicators, you get the 24 headline indicators of a
country page.
Popular indicator codes. NY.GDP.MKTP.CD GDP (current US$) · NY.GDP.PCAP.CD GDP per capita
(current US$) · NY.GDP.MKTP.KD.ZG GDP growth (annual %) · SP.POP.TOTL population ·
SP.POP.GROW population growth · FP.CPI.TOTL.ZG inflation, consumer prices (annual %) ·
SL.UEM.TOTL.ZS unemployment (% of labor force) · SP.DYN.LE00.IN life expectancy ·
EN.GHG.CO2.PC.CE.AR5 CO2 emissions per capita · SI.POV.DDAY extreme poverty (% at $3.00 a
day) · GC.DOD.TOTL.GD.ZS central government debt (% of GDP) · BX.KLT.DINV.WD.GD.ZS foreign
direct investment (% of GDP) · IT.NET.USER.ZS internet users (% of population) ·
EG.ELC.ACCS.ZS access to electricity · EG.ELC.RNWX.ZS renewable electricity. Any indicator's
code is in its data.worldbank.org address.
📤 Output
Each row is one value: one indicator for one country or aggregate in one year. Years the World Bank
has no value for come back with value set to null unless skipEmptyValues is on. Rows come
country by country, latest year first.
Fields
| Field | Type | Description |
|---|---|---|
indicatorId | string | Indicator code, such as NY.GDP.MKTP.CD. |
indicatorName | string | Indicator name, such as GDP (current US$). |
countryCode | string | ISO3 code of the country, or the World Bank code of an aggregate (WLD, EUU, HIC). |
countryIso2 | string | ISO2 code of the country, or the World Bank's two-character code of an aggregate (1W, EU, XD). |
countryName | string | Country or aggregate name. |
region | string | World Bank region, such as East Asia & Pacific. null for aggregates. |
incomeLevel | string | World Bank income group, such as Upper middle income. null for aggregates. |
isAggregate | boolean | true for regions, income groups and other aggregates such as World. |
year | integer | Year of the value. |
date | string | Period as the World Bank labels it: a year, or a quarter or month in some databases. |
value | number | The value, or null when the World Bank has none for that year. |
unit | string | Unit of measure, such as current US$ or % of total labor force. null for plain counts. |
obsStatus | string | Observation status flag, such as an estimate marker, when the World Bank sets one. |
decimal | integer | Decimal places the World Bank displays the value with. |
lastUpdated | string | Date the series was last updated, YYYY-MM-DD. |
sourceName | string | Database the series comes from, such as World Development Indicators. |
url | string | The indicator's chart for this country on data.worldbank.org. |
💡 Use cases
- Economic research and modelling — GDP, growth, inflation, debt and trade series for every country, ready for panel models and forecasts.
- Market entry and country risk — compare target markets on income, population, inflation, internet use and electricity access.
- ESG and climate reporting — CO2 emissions, renewable electricity, forest area and water stress by country and year.
- Dashboards and BI — schedule the Actor to keep a spreadsheet, database or dashboard in step with the latest World Bank release.
- Journalism and policy analysis — pull a country's 24 headline indicators, or rank every country on one measure.
- AI and data pipelines — feed clean, documented macro data into models, RAG and analytics workflows.
❓ FAQ
- Do I need an account or an API key? No. World Bank Open Data is free and public.
- Do I need a proxy? No. It runs without one by default.
- How do I find an indicator's code? Open the indicator on data.worldbank.org: the code is in the address, such as
NY.GDP.MKTP.CDindata.worldbank.org/indicator/NY.GDP.MKTP.CD. Or useindicatorSearchwith a few words of its name, or paste the page intostartUrls. - Why is
valueempty for some years? The World Bank has no figure for that country and year yet, or never collected one. Turn onskipEmptyValuesto leave those rows out. - How do I get the latest value for every country? Set
indicators, leavecountriesempty, and setmostRecentValuesto 1 withskipEmptyValueson. - Are regions and income groups included? Only when you ask: name them in
countries(WLD,EUU,SSF,HIC…) or turn onincludeAggregateswith every country. - Why does an indicator return nothing? Some older codes were retired to the World Bank's archives and are no longer served; the log says so. Search for the current series with
indicatorSearch, for exampleco2 per capita. - How current is the data? It is read live from the World Bank on every run.
lastUpdatedshows when each series was last revised. - Can I use the data commercially? Yes. World Bank Open Data is licensed under Creative Commons Attribution 4.0 (CC BY 4.0): credit The World Bank as the source, for example "Source: The World Bank, World Development Indicators", wherever you publish or share the data. A few series come from third-party providers under their own terms, noted in the indicator's metadata. See the World Bank's summary terms of use.
🔗 More scrapers by Anyx
🤝 Anyx Solutions
We build custom scrapers and data-extraction pipelines.
- Email: tantosthor@gmail.com
🖼 Image credit
Image credit: data.worldbank.org