SYSTEM all green source imf.org queue 12,943 datasets p99 latency 214ms dataflirt.com · scraper/imf-org
RUN · 37 active pipelines · imf.org live

IMF data,
ready for analysis.

We extract macroeconomic indicators, exchange rates, SDR allocations, financial stability reports, and country metadata from the International Monetary Fund. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake.

Indicators extracted
845K /day
Exchange rates
12.4K /24h
Reports indexed
3,492 /run
Active pipelines
37
Uptime
99.98%
Data Dictionary

Every field we extract from imf.org

Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.

Complete list of extractable fields for Macroeconomic Indicators objects from imf.org. All fields typed and schema-versioned.

country_codecountry_nameindicator_codeindicator_nameperiodvalueunitscalesource_datasetlast_updatednotes
macroeconomic_indicators
● 200 OK
"country_code": "IND",
"indicator_code": "NGDP_RPCH",
"indicator_name": "Gross domestic product, constant prices",
"period": "2023",
"value": 7.8,
"unit": "Percent change",
"scale": "Units",
"source_dataset": "World Economic Outlook"
# country_codecountry_nameindicator_codeindicator_nameperiodvalue
1
2
3

Complete list of extractable fields for Exchange Rates objects from imf.org. All fields typed and schema-versioned.

currency_codecurrency_namedaterate_to_sdrsdr_to_currencyrate_to_usdusd_to_currencydata_sourcestatustimestamp
exchange_rates
● 200 OK
"currency_code": "INR",
"date": "2023-10-27",
"rate_to_sdr": 109.452,
"sdr_to_currency": 0.009136,
"rate_to_usd": 83.24,
"usd_to_currency": 0.012013,
"data_source": "Representative Exchange Rates"
# currency_codecurrency_namedaterate_to_sdrsdr_to_currencyrate_to_usd
1
2
3

Complete list of extractable fields for SDR Allocations objects from imf.org. All fields typed and schema-versioned.

member_countryallocation_dateamount_sdramount_usd_equivalentcumulative_allocationholdings_sdrpercent_of_quotaallocation_typestatus
sdr_allocations
● 200 OK
"member_country": "India",
"allocation_date": "2021-08-23",
"amount_sdr": 12570000000.0,
"cumulative_allocation": 13650000000.0,
"holdings_sdr": 13660000000.0,
"percent_of_quota": 104.2,
"allocation_type": "General Allocation"
# member_countryallocation_dateamount_sdramount_usd_equivalentcumulative_allocationholdings_sdr
1
2
3

Complete list of extractable fields for Reports & Publications objects from imf.org. All fields typed and schema-versioned.

report_idtitleauthorpublication_dateseriescountry_focussubjectabstractpdf_urlisbnpageslanguage
reports_& publications
● 200 OK
"report_id": "CR/23/345",
"title": "India: 2023 Article IV Consultation",
"publication_date": "2023-12-18",
"series": "Country Report",
"country_focus": "India",
"subject": "Macroeconomic Policy",
"pdf_url": "https://www.imf.org/-/media/Files/Publications/CR/2023/English/1INDEA2023001.ashx"
# report_idtitleauthorpublication_dateseriescountry_focus
1
2
3

Complete list of extractable fields for Country Metadata objects from imf.org. All fields typed and schema-versioned.

country_nameiso3_codeimf_member_sincequota_sdrquota_percent_totalgovernoralternate_governorvoting_powervoting_percent_totalregionincome_group
country_metadata
● 200 OK
"country_name": "India",
"iso3_code": "IND",
"imf_member_since": "1945-12-27",
"quota_sdr": 13114400000.0,
"quota_percent_total": 2.75,
"voting_power": 132590,
"voting_percent_total": 2.63
# country_nameiso3_codeimf_member_sincequota_sdrquota_percent_totalgovernor
1
2
3

Capabilities

Extract the world's economic pulse

Our IMF scraper navigates complex data portals, dynamic charts, and paginated reports to deliver clean, structured economic intelligence.

Macroeconomic Indicator Extraction

Extract GDP, inflation, unemployment, and current account balances across all member countries from the World Economic Outlook database.

Exchange Rate Tracking

Capture daily representative exchange rates, SDR valuations, and historical currency movements.

SDR Allocation Data

Track Special Drawing Rights allocations, holdings, and quota percentages for all IMF member nations.

Report & Publication Indexing

Scrape metadata and direct PDF links for Article IV Consultations, Global Financial Stability Reports, and Working Papers.

Direction of Trade Statistics

Extract bilateral trade flows, exports, and imports data between countries and regions.

Balance of Payments

Capture detailed BOP data including current account, capital account, and financial account balances.

Government Finance Statistics

Extract data on government revenue, expense, transactions in assets and liabilities, and public sector debt.

International Financial Statistics

Scrape standardized international and domestic finance data, including international liquidity and interest rates.

Scheduled Updates

Run pipelines on a schedule to capture new data releases, report publications, and daily exchange rate updates.

// engagement pipeline

From IMF portal to warehouse record

Brief in. Clean data out.

Define Scope
d 0

Provide target datasets, countries, indicators, or report types. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Scrapy / Playwright crawlers to navigate IMF's data portals and handle dynamic content loading.

Validation & QA
d 4–6

Schema validation, null-rate checks, and unit normalisation before full launch.

Delivery
ongoing

JSON / CSV / Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.

Under the hood

Navigating complex institutional data portals

Extracting data from the IMF requires handling complex JavaScript interfaces, deeply nested data structures, and varying file formats.

pipeline-monitor · imf.org · live ● active
// fingerprinting
Identity rotation
TLS fingerprintrandomised
User-agentrotated
IP poolresidential
Challenges blocked0
// pagination
Page coverage
48,291 pages queued running
// observability
Pipeline health
99.9%
uptime
142ms
p99 lat
0.3%
null rate
2
alerts
Dynamic data portals
Handling complex JavaScript interfaces

IMF's data portals (like IMF Data) rely heavily on complex JavaScript frameworks for filtering and displaying data. We use Playwright to interact with these interfaces, applying filters and triggering downloads programmatically.

Format parsing
Extracting from Excel, CSV, and SDMX

IMF data is often provided in various formats, including Excel spreadsheets with complex headers, CSV files, and SDMX (Statistical Data and Metadata eXchange) formats. Our pipelines parse these formats into a unified, flat schema.

Unit normalisation
Standardising scales and currencies

Economic data can be presented in billions, millions, or percentages, and in local currency or USD. We normalise these values based on the metadata provided, ensuring consistent units for analysis.

Pagination and nesting
Navigating deep report hierarchies

Extracting metadata for thousands of reports requires navigating deeply nested, paginated search results. Our crawlers maintain state and handle pagination reliably to ensure complete coverage.

Rate limiting
Respectful crawling of institutional sites

While not as aggressively defended as commercial sites, institutional portals can block IPs if crawled too aggressively. We manage concurrency and request delays to ensure stable, respectful extraction.

Applications

Who uses IMF data — and how

Teams across industries use imf.org data to build competitive products and smarter operations.

01
Macroeconomic Analysis

Economists and researchers use IMF data to analyze global economic trends, forecast growth, and assess fiscal health.

02
Investment Strategy

Asset managers incorporate country risk, exchange rate trends, and GDP forecasts into their sovereign debt and emerging market investment models.

03
Policy Research

Think tanks and policy analysts study Article IV consultations and financial stability reports to evaluate government policies.

04
Corporate Strategy

Multinational corporations use economic indicators to assess market potential, currency risk, and operational environments in new regions.

05
Academic Research

Universities build extensive databases of historical economic data for econometric modeling and historical analysis.

06
Financial Journalism

News organizations track SDR allocations, loan disbursements, and economic forecasts to report on global financial developments.

Why DataFlirt

"The IMF provides the definitive baseline for global economic health, but aggregating its fragmented datasets requires specialized extraction pipelines."

Extracting data from institutional portals often involves navigating complex, legacy JavaScript interfaces and parsing inconsistent file formats. DataFlirt builds resilient pipelines that normalise units, handle complex filtering, and deliver clean economic indicators directly to your warehouse.

Technical Spec

IMF scraper — technical capabilities

Everything supported by our imf.org scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Full Playwright sessions — required for navigating dynamic data portals and applying filters
Supported
SDMX parsing
Native parsing of Statistical Data and Metadata eXchange formats
Supported
Excel parsing
Extraction from complex, multi-sheet Excel files with irregular headers
Supported
Unit normalisation
Automated conversion of scales (e.g., millions to units) based on metadata
Supported
Historical backfilling
Extraction of historical time-series data from available archives
Supported
Report metadata extraction
Scraping of authors, publication dates, and abstracts for all IMF publications
Supported
PDF downloading
Automated downloading and storage of full report PDFs
Supported
Internal Working Papers
Access to restricted or draft internal working papers not publicly published
Partial
Member Country Confidential Data
Data submitted confidentially by member countries and not cleared for publication
Partial
Infrastructure

Infrastructure powering the IMF pipeline

Open-source tooling on proven cloud infra — no vendor lock-in, full observability.

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheusPandas
Scrapy + Playwright Stack

Scrapy handles crawl orchestration and deduplication. Playwright handles complex JavaScript interfaces on IMF data portals.

Data Processing Layer

Pandas and custom Python processors handle the parsing of complex Excel files, SDMX data, and unit normalisation.

Cloud-Native Orchestration

Pipelines run on AWS ECS. Airflow handles scheduling for data release calendars. All state stored in managed Postgres.

Output & Delivery

Your data, your destination

Data delivered to where your team already works — no new tooling required.

JSON
Newline-delimited or nested — ideal for report metadata
CSV
Flat file with typed columns — standard for time-series data
Parquet
Columnar format for BigQuery, Snowflake, Athena
S3
Direct bucket delivery — compatible with any data lake
BigQuery
Streamed directly into your dataset
Webhook
HTTP POST for immediate updates on new report releases
Postgres
Upsert into your existing schema
Snowflake
Stage + COPY INTO workflow
// faq

Common questions.

About imf.org scraping, legality, and pipeline operations.

Ask us directly →
Is scraping the IMF legal?

Yes. The IMF provides data publicly for research, analysis, and general information. Our scrapers target only publicly available data portals and reports, adhering to standard web scraping best practices and respecting the institution's infrastructure.

Can you extract data from the IMF eLibrary?

We can extract metadata and publicly available documents from the IMF eLibrary. Access to gated or subscription-only content requires appropriate credentials, which we do not circumvent.

How do you handle the complex IMF Data portal interface?

We use Playwright to programmatically interact with the JavaScript-heavy interface, applying necessary filters (country, indicator, time period) and triggering data exports, which are then parsed into our standard schemas.

Do you normalise the data scales?

Yes. IMF data often varies in scale (e.g., reported in millions or billions). We extract the scale metadata and can provide normalised values based on your requirements.

How frequently can the data be updated?

Pipelines can be scheduled to match IMF data release calendars, ensuring you receive updates (like the World Economic Outlook or daily exchange rates) as soon as they are published.

Can you extract historical data?

Yes, we can extract full historical time-series data available on the IMF portals, allowing for extensive backtesting and historical analysis.

$ dataflirt scope --new-project --source=imf.org ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a complete historical dump of macroeconomic indicators or continuous monitoring of new Article IV reports — we scope, build, and operate the pipeline. Tell us what you need.

hello@dataflirt.com · Bengaluru · IST · typical reply < 4h
Services

Data Extraction for Every Industry

View All Services →