Back to the blog

Journal

Free Economic Data APIs for Developers: FRED, BLS, Eurostat and More

A practical tour of the best free economic data APIs — FRED, BLS, Eurostat, World Bank, IMF — with endpoints, limits, license notes and the gotchas that trip up real projects.

Macro data used to be locked behind terminals with six-figure invoices. Today the world’s most important economic series — inflation, interest rates, GDP, unemployment, exchange rates — are a fetch() away, free, from the same official institutions that produce them.

This guide is a practical tour of the best free economic data APIs for developers: what each one offers, how the endpoints work, what the rate limits actually are, and the license gotchas nobody mentions in blog tutorials. Everything in the Economy & Macro cell of the AxioStats matrix comes from exactly these sources.

The shortlist

API What it has Key series Free tier
FRED (St. Louis Fed) 800k+ US & international series CPI, Fed funds, GDP, unemployment Full API, no key required for low volume

| BLS Public API | Official US labor & prices | CPI, PPI, unemployment, wages | 25 requests/day per key (v2) | | Eurostat | EU-wide statistics | HICP, GDP, employment, trade | Open, generous | | World Bank | ~300 indicators × ~200 countries | GDP, poverty, trade | No key required | | IMF (SDMX) | Global macro + forecast | WEO, IFS | Open SDMX endpoints |

All five are official or intergovernmental sources — that is the point. When a number matters, you want the institution that legally has to produce it, not a reseller’s copy.

FRED: the workhorse

FRED is the default answer for US macro data, and for good reason: hundreds of thousands of series, a clean REST/GraphQL API, and famously forgiving rate limits (thousands of requests per hour are fine for a hobby project; a research group pulling 100k+ series daily is normal).

The basics:

GET https://api.stlouisfed.org/fred/series/observations
  ?series_id=DFF
  &api_key=YOUR_KEY  (or use the public key for demo volume)
  &file_type=json

Useful series to know by heart:

  • DFF — effective federal funds rate (what we track)
  • CPIAUCSL — CPI, all urban consumers (raw monthly index)
  • GDPC1 — real GDP in chained 2017 dollars
  • UNRATE — civilian unemployment rate
  • DEXUSEU — US dollars per euro, noon rate

Gotchas: series IDs are cryptic; units vary (index vs percentage vs rate); some series are seasonally adjusted, some are not — always check the “units” and “seasonal adjustment” fields before you compute anything. A year-over-year change computed on a non-adjusted series in a season-sensitive month will lie to you.

BLS: the official CPI

If you need US CPI specifically, the Bureau of Labor Statistics API lands closer to the source than FRED does (FRED republishes BLS data). The v2 API needs a registration key (free) and a daily request budget of 25 requests — enough for scheduled refreshes, not for interactive dashboards at scale.

GET https://api.bls.gov/publicAPI/v2/timeseries/data/
Content-Type: application/json
{ "seriesid": ["CUUR0000SA0"], "startyear": "2024", "endyear": "2026" }

Gotchas: the daily cap applies per IP, so caching is not optional — pull once a day, store locally, serve from your own cache. That is also exactly why our CPI dataset is a snapshot refreshed on a schedule instead of a live API call on every page view.

Eurostat: the EU superset

Eurostat publishes harmonized European statistics — the HICP inflation index, GDP, employment, trade — through both a bulk download service and a JSON API. Data is organized by dataset codes (prc_hicp_manr for HICP monthly rates, for example) and time series come in long-format with dimension codes. No API key required, and the license permits re-use with attribution.

Gotcha: Eurostat’s dimension codes and unit codes (e.g., RCH_A for annual rate of change, I15 for survey breakdowns) are arcane. Budget real time for decoding them on your first integration.

World Bank & IMF: the global view

  • World Bank Indicators APIhttps://api.worldbank.org/v2/country/USA/indicator/NY.GDP.MKTP.CD?format=json style calls, no key, generous limits, CSV/XML/JSON output. Perfect for cross-country comparisons.
  • IMF SDMX endpoints — the same SDMX standard as Eurostat, for World Economic Outlook projections and IFS country data. Lower-level and less documented; plan for a steeper learning curve.

License and renewal: the part tutorials skip

Three rules that keep you out of trouble:

  1. Official ≠ free to do anything. FRED’s licensing allows re-use with attribution; some national statistical offices restrict commercial redistribution. Check the license of the specific series you ship to clients.
  2. Republish, don’t proxy. Pull on a schedule into your own cache and serve from it. This respects rate limits, makes your build deterministic, and protects users from upstream outages.
  3. Always keep provenance. Store source name, URL and retrieval date with the data. Six months later, when a client asks where a number came from, “the API” is not an answer.

That third rule is the reason every AxioStats macro dataset carries a source link, the retrieval date and a written methodology — e.g. U.S. Inflation Rate, Effective Federal Funds Rate and EUR/USD, all computed from primaries you can verify.

FAQ

Do I need an API key for FRED? No paid plan exists — registration is free and the API works at hobby scale even without hitting heavy quotas. For serious volumes, register a free key and cache aggressively.

Which API has the best real-time economics? None of these are real-time — official statistics are released on fixed calendars (CPI: monthly; GDP: quarterly). If you need nowcasting (real-time estimates), you are in alternative-data territory; the official APIs are for recording what already happened, accurately.

FRED or BLS for CPI? Both carry the same underlying BLS data. Use FRED for convenience and breadth, or BLS direct if you need the most granular item-level breakdowns and can live with the 25-request/day cap.