# IMF World Economic Data Tracker (`gochujang/imf-economic-data`) Actor

Fetch GDP growth, inflation, current account, government debt, unemployment, and investment data for 190+ countries from the IMF DataMapper API. Filter by indicator, country, and year range. Free, no API key required. Ideal for macro research and economic dashboards.

- **URL**: https://apify.com/gochujang/imf-economic-data.md
- **Developed by:** [Hojun Lee](https://apify.com/gochujang) (community)
- **Categories:** Other
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### What does IMF Economic Data Tracker do?

**IMF economic data tracker** fetches macroeconomic time-series for 190+ countries directly from the **IMF DataMapper API** — no API key, no registration, completely free. Specify any combination of IMF indicator codes (GDP growth, inflation, government debt, unemployment, current account balance, investment), select your countries by ISO code, and set a year range stretching back to the 1980s with **IMF GDP inflation** forecasts extending through 2029. Every data point from the **World Economic Outlook data** is returned as a flat, analysis-ready record.

This actor exposes the same underlying data that powers the IMF's [World Economic Outlook](https://www.imf.org/en/Publications/WEO) and DataMapper tools — structured for automated pipelines rather than manual browsing.

### Why use IMF Economic Data Tracker?

- **Country risk dashboards** — pull GDP growth, inflation, and debt levels for 190+ countries in one run to build automated sovereign risk scoring models.
- **Global macro research** — access decades of **IMF GDP inflation** history for cross-country econometric analysis without manual downloads from the IMF website.
- **Emerging market monitoring** — compare **World Economic Outlook data** across BRICS, ASEAN, and frontier markets to identify macro divergences and investment signals.
- **Portfolio stress testing** — enrich quantitative models with official IMF macroeconomic projections (available through 2029) alongside historical actuals.
- **Policy and academic datasets** — retrieve clean, structured **IMF economic data** for policy research, thesis work, or institutional reporting without spreadsheet exports.

### How to use IMF Economic Data Tracker

1. Open the actor on Apify and click **Try for free**.
2. Set `mode` to `indicators` on the first run to discover all available IMF indicator codes.
3. Copy the codes you need into the `indicators` array (e.g. `["NGDP_RPCH", "PCPIPCH"]`).
4. Add ISO 2-letter `countries` codes (leave empty for all 190+ countries).
5. Set `yearFrom` and `yearTo` to define your time range.
6. Click **Start** and export results as JSON or CSV.

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `mode` | `string` | `data` | `data` — fetch records; `indicators` — list all codes; `countries` — list all country codes |
| `indicators` | `string[]` | 6 defaults | IMF indicator codes to fetch (see defaults below) |
| `countries` | `string[]` | all | ISO 2-letter country codes (empty = all 190+ countries) |
| `yearFrom` | `integer` | — | Start year (inclusive). Historical data from the 1980s |
| `yearTo` | `integer` | — | End year (inclusive). IMF forecasts through 2029 |
| `maxIndicators` | `integer` | `100` | Maximum results when `mode=indicators` |

**Default indicators** (used when `indicators` is empty):

| Code | Name |
|---|---|
| `NGDP_RPCH` | Real GDP growth (%) |
| `PCPIPCH` | Inflation, consumer prices (%) |
| `BCA_NGDPD` | Current account balance (% of GDP) |
| `GGXWDG_NGDP` | Government gross debt (% of GDP) |
| `LUR` | Unemployment rate (%) |
| `NID_NGDP` | Total investment (% of GDP) |

Example — G7 GDP growth 2015–2025:

```json
{
  "mode": "data",
  "indicators": ["NGDP_RPCH"],
  "countries": ["US", "GB", "DE", "FR", "JP", "IT", "CA"],
  "yearFrom": 2015,
  "yearTo": 2025
}
```

### Output

One flat record per country-indicator-year combination:

```json
[
  {
    "country_code": "US",
    "country_name": "United States",
    "indicator_code": "NGDP_RPCH",
    "indicator_name": "Real GDP growth",
    "year": 2023,
    "value": 2.5,
    "units": "%",
    "source": "IMF DataMapper"
  },
  {
    "country_code": "CN",
    "country_name": "China",
    "indicator_code": "PCPIPCH",
    "indicator_name": "Inflation, consumer prices",
    "year": 2023,
    "value": 0.2,
    "units": "%",
    "source": "IMF DataMapper"
  }
]
```

### Data fields

| Field | Type | Description |
|---|---|---|
| `country_code` | string | ISO 2-letter country code |
| `country_name` | string | Full country name |
| `indicator_code` | string | IMF indicator code (e.g. `NGDP_RPCH`) |
| `indicator_name` | string | Human-readable indicator name |
| `year` | integer | Observation year |
| `value` | float | Indicator value |
| `units` | string | Unit of measurement (e.g. `%`, `USD billions`) |
| `source` | string | Always `IMF DataMapper` |

### Cost estimation

Pricing is **Pay-Per-Event (PPE)** — one small fixed charge per run plus $0.001 per data record.

| Scenario | Records | Cost |
|---|---|---|
| 6 indicators × 10 countries × 10 years | ~600 | $0.005 + $0.60 = $0.61 |
| 6 indicators × 50 countries × 15 years | ~4,500 | $0.005 + $4.50 = $4.51 |
| 6 indicators × 190 countries × 30 years | ~34,200 | $0.005 + $34.20 = $34.21 |

### FAQ

**How often is the IMF data updated?**
The IMF DataMapper API is updated twice a year — in April and October — following the **World Economic Outlook** publication cycle. Selected indicators receive interim updates between cycles.

**Can I get IMF forecast data beyond the current year?**
Yes. Set `yearTo` up to 2029 to retrieve **IMF GDP inflation** and other indicator projections included in the World Economic Outlook forecasts.

**How do I discover all available indicator codes?**
Run the actor once with `mode` set to `indicators`. The output lists every available IMF indicator code and its human-readable name.

***

> **Disclaimer:** All data is sourced from the publicly available IMF DataMapper API. Values reflect IMF estimates and projections, which are subject to revision. This actor is not affiliated with or endorsed by the International Monetary Fund. Data should be verified against official IMF publications before use in policy or investment decisions.

***

### Related actors

- [World Bank Data Scraper](https://apify.com/gochujang/world-bank-data) — 20,000+ World Bank indicators across 200+ countries as alternative/complement to IMF data
- [OECD Stats Tracker](https://apify.com/gochujang/oecd-stats-tracker) — OECD member economic statistics to compare developed economies alongside IMF projections
- [Eurostat Economic Data](https://apify.com/gochujang/eurostat-economic-data) — EU-specific data from Eurostat that complements IMF cross-country eurozone estimates

### Feedback

If this actor powers your macro research, a review helps others find it: [Leave a review on Apify Store](https://apify.com/gochujang/imf-economic-data#reviews)

# Actor input Schema

## `mode` (type: `string`):

data = fetch economic data records; indicators = list available indicators; countries = list all countries.

## `indicators` (type: `array`):

IMF indicator codes to fetch (mode=data only). Leave empty to use defaults: NGDP\_RPCH, PCPIPCH, BCA\_NGDPD, GGXWDG\_NGDP, LUR, NID\_NGDP.

## `countries` (type: `array`):

ISO country codes to include (e.g. US, CN, JP, DE, KR). Leave empty to return all countries.

## `yearFrom` (type: `integer`):

Start year for the data range (inclusive).

## `yearTo` (type: `integer`):

End year for the data range (inclusive).

## `maxIndicators` (type: `integer`):

Maximum number of indicators to return (mode=indicators only).

## Actor input object example

```json
{
  "mode": "data",
  "indicators": [
    "NGDP_RPCH",
    "PCPIPCH",
    "BCA_NGDPD",
    "GGXWDG_NGDP",
    "LUR",
    "NID_NGDP"
  ],
  "countries": [],
  "yearFrom": 2010,
  "yearTo": 2026,
  "maxIndicators": 100
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("gochujang/imf-economic-data").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("gochujang/imf-economic-data").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call gochujang/imf-economic-data --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,gochujang/imf-economic-data"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/X2JSwg8JetZNoJRY0/builds/sFKOm1oyPg3fngyZ5/openapi.json
