ParseForge Scrapers

IMF Data Scraper

parseforge/imf-data-scraper

BusinessNews & mediaLead generation

Scrapes IMF World Economic Outlook indicators by country and year range. Returns a flat dataset of country-year observations for inflation, GDP, unemployment, debt, and other series.

Run this scraper See the API call
Total users
1
Monthly active
0
Total runs
117
Bookmarked
0
Rating
Not rated yet
Last modified
9 days ago

Overview

ParseForge

IMF Data Scraper

Scrape IMF World Economic Outlook data for any indicator, country, or year range, up to a million records per run. Each row is a clean time series point with country, year, and value. No API key, no registration. Export to CSV, JSON, Excel, or XML.

The IMF's official data portal is built for browsing, not for bulk analysis. This Actor reads the World Economic Outlook public API directly, so you can pull inflation, GDP growth, unemployment, government debt, and more for any country or year range into one flat dataset. No API key, no rate limits, no manual downloads.

Who uses it What they scrape IMF for
Macroeconomic analysts Pull multi-country inflation and GDP series for cross-country comparison models.
Financial journalists Grab the latest unemployment or debt figures for a story on a specific economy.
Academic researchers Build a panel dataset of government debt or current account balances for econometric work.
Data engineers Feed IMF indicators into a data warehouse or BI dashboard on a schedule.
Policy advisors Track fiscal and external balances across peer countries for briefing notes.

What it does

This Actor collects IMF World Economic Outlook indicator time series by indicator, country codes, and year range, and returns each observation as a flat row.

  • ๐ŸŒ Nine core indicators: inflation, real GDP growth, GDP level, current account, unemployment, government debt, net lending, GDP per capita, and PPP conversion rate.
  • ๐Ÿ“… Flexible year range: set any start and end year from 1980 onward, and get every annual observation in between.
  • ๐Ÿ—‚๏ธ Country selection: pass ISO 2-letter codes for specific countries, or leave empty to get the top 20 major economies.
  • ๐Ÿ“ฆ Flat output: each row is one country-year-indicator observation, ready for CSV, JSON, Excel, or XML export.
  • โšก No API key: the Actor calls the IMF's public WEO endpoint directly, so there is nothing to register or rotate.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with IMF data

๐Ÿ“ˆ Track inflation across major economies.

A market strategist runs the Actor with indicator PCPIPCH and the default top-20 country list to get a monthly-updated inflation panel for a global macro dashboard.

๐Ÿ›๏ธ Compare government debt burdens.

A policy researcher pulls GGXWDG_NGDP for a set of emerging markets from 2000 to the latest year to rank fiscal risk in a briefing note.

๐Ÿ“Š Build a GDP growth dataset for a model.

An econometrician collects NGDP_RPCH for 40 countries over 30 years and exports the flat CSV directly into a regression package.

๐Ÿ’ฑ Monitor current account imbalances.

A currency analyst runs BCA_NGDPD for surplus and deficit countries each quarter to flag external vulnerability before IMF Article IV releases.

๐Ÿง‘โ€๐Ÿซ Teach macroeconomics with real data.

A university lecturer uses the Actor to generate a clean dataset of unemployment and GDP per capita for a lab exercise on convergence.

Why choose this scraper

What you get
One call, many countries Get a full panel of up to 20 major economies in a single run, or specify exactly which countries you need.
Clean time series Every row is a tidy observation with country, year, and value, so you can pivot or chart it immediately.
No API key or signup The Actor uses the IMF's public WEO endpoint, so there is no OAuth, no token, and no rate limit to manage.
Scheduled updates Run it on Apify's scheduler to refresh your dataset whenever the IMF publishes new WEO data.

How it compares

No other Store actor targets IMF the same way, so the honest comparison is with the alternatives teams actually weigh.

IMF Data Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When IMF changes Maintained for you You fix it You re-learn the page
Proxies, retries, anti-bot Built in Your problem Browser only
Output Fixed JSON schema, CSV/Excel export Whatever you build Copy-paste
Cost Pay per result Engineering time Analyst hours

Configure the run

Drive the Actor from an indicator, a list of country codes, and a start and end year. Filters run as the data is read, so only the observations you asked for reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
  "maxItems": 10,
  "countryCodes": [
    "US",
    "GB",
    "DE",
    "JP",
    "CN",
    "FR",
    "IT",
    "CA",
    "KR",
    "AU"
  ]
}

A larger pull:

{
  "maxItems": 200,
  "countryCodes": [
    "US",
    "GB",
    "DE",
    "JP",
    "CN",
    "FR",
    "IT",
    "CA",
    "KR",
    "AU"
  ]
}

Pricing

Pay-per-result: $0.021 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $2.10
1,000 results $21.00
10,000 results $210.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the IMF Data Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to IMF through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/imf-data-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Make sure your countryCodes are valid ISO 2-letter codes and that startYear is not after endYear. Also verify the indicator is one of the nine supported codes.

Why are some countries missing from my output?

The WEO dataset does not cover every country for every indicator and year. If a country has no observation for the requested indicator and year range, it will not appear in the results.

Why did I get fewer records than maxItems?

maxItems is an upper limit, not a target. The Actor returns all matching observations up to that limit. If your query matches fewer country-year combinations, you will get fewer records.

Why is the value field sometimes empty?

The IMF WEO API occasionally returns missing values for certain country-year-indicator combinations. The Actor preserves those as empty fields rather than dropping the row.

Can I get quarterly or monthly data?

No, the WEO dataset is annual. The Actor returns one observation per country per year for the selected indicator.

FAQ

Question Answer
Which IMF database does this Actor use? It reads the IMF World Economic Outlook (WEO) public API, the same dataset behind the IMF's flagship WEO report.
Do I need an API key or IMF account? No. The Actor calls the public WEO endpoint directly, so there is no registration, no key, and no authentication step.
What indicators are available? Nine WEO indicators: inflation (PCPIPCH), real GDP growth (NGDP_RPCH), GDP level (NGDPD), current account balance (BCA_NGDPD), unemployment (LUR), government gross debt (GGXWDG_NGDP), government net lending (GGXCNL_NGDP), GDP per capita (NGDPDPC), and implied PPP conversion rate (PPPEX).
How do I specify countries? Pass an array of ISO 2-letter country codes in the countryCodes field, for example ['US', 'GB', 'DE']. Leave it empty to get the top 20 major economies.
What is the maximum number of records I can get? You can set maxItems up to 1,000,000 records per run. The actual number returned depends on how many country-year combinations match your query.
What is the earliest year I can request? The startYear and endYear fields accept any year from 1980 onward. The WEO dataset itself contains observations back to 1980.
What format is the output? Each record is a flat row with country, year, and the indicator value. You can export the dataset as CSV, JSON, Excel, or XML from Apify.
Can I schedule this Actor to run automatically? Yes. Use Apify's scheduler to run it daily, weekly, or monthly, and the dataset will refresh with the latest WEO data.
Does this Actor support the IMF's other databases, like IFS or Direction of Trade? No, this Actor is scoped to the World Economic Outlook API only. Other IMF databases are not covered.
What if I get no results? Check that your country codes are valid ISO 2-letter codes and that your year range overlaps with the WEO coverage. Also confirm the indicator code is one of the nine supported values.

Related actors

Browse the full ParseForge collection for more scrapers.

๐Ÿ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

โš ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by International Monetary Fund. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
maxItems integer How many data records to collect per run. 10
indicator required string (9 options) Which IMF economic indicator to retrieve. Source: World Economic Outlook (WEO). PCPIPCH
countryCodes array ISO 2-letter country codes (e.g. ['US', 'GB', 'DE', 'JP']). Leave empty for top 20 major economies. ["US","GB","DE","JP","CN","FR","IT","CA"
startYear integer Earliest year to retrieve data for. 2010
endYear integer Latest year to retrieve data for. 2023

Pricing

from $19.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.019 to $0.021

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~imf-data-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run IMF Data Scraper on Apify All scrapers