Accessing Economic Data via APIs: FRED, BLS, BEA & More
A developer guide to programmatic access for economic data—API keys, rate limits, and code examples.
Why Use Data APIs?
APIs let you:
- Automate data updates
- Build dashboards
- Backtest strategies
- Create custom analyses
FRED API
Overview
The most popular economic data API.
- Endpoint: api.stlouisfed.org
- Cost: Free
- Rate Limit: 120 requests/minute
- IQ Score: 97
Getting Started
- Register at fred.stlouisfed.org
- Get API key (instant)
- Start querying
Key Endpoints
\\\`
GET /fred/series/observations
GET /fred/series/search
GET /fred/category/series
GET /fred/releases
\\\`
Example Request
\\\`bash
curl "https://api.stlouisfed.org/fred/series/observations?series_id=GDP&api_key=YOUR_KEY&file_type=json"
\\\`
Python Example
\\\`python
import fredapi
fred = fredapi.Fred(api_key='YOUR_KEY')
gdp = fred.get_series('GDP')
\\\`
BLS API
Overview
Direct access to Bureau of Labor Statistics data.
- Endpoint: api.bls.gov
- Cost: Free (registration recommended)
- Rate Limits: 500/day unregistered, 2000/day registered
Version 2.0 (Registered)
Benefits:
- Higher rate limits
- 20 years of data (vs 10)
- Net/percent calculations
- Annual averages
Key Series Formats
- Employment: CES series
- CPI: CUUR/CUSR series
- Unemployment: LNS series
Example Request
\\\`python
import requests
headers = {'Content-type': 'application/json'}
data = {
"seriesid": ['CUUR0000SA0', 'LNS14000000'],
"startyear": "2020",
"endyear": "2024",
"registrationkey": "YOUR_KEY"
}
response = requests.post(
'https://api.bls.gov/publicAPI/v2/timeseries/data/',
json=data, headers=headers
)
\\\`
BEA API
Overview
Bureau of Economic Analysis—GDP, personal income, trade.
- Endpoint: apps.bea.gov/api
- Cost: Free
- Registration: Required
Key Datasets
- NIPA: National Income and Product Accounts
- Regional: State/metro economic data
- International: Trade and investment
Example Request
\\\`
https://apps.bea.gov/api/data/?UserID=YOUR_KEY&method=GetData&DataSetName=NIPA&TableName=T10101&Frequency=Q&Year=2024
\\\`
Census API
Overview
Demographic and economic surveys.
- Endpoint: api.census.gov
- Cost: Free
- Key Required: Yes
Key Datasets
- ACS: American Community Survey
- CBP: County Business Patterns
- Trade: Import/export data
Data.gov APIs
Many federal agencies expose data through Data.gov:
- EPA environmental data
- USDA agricultural data
- HUD housing data
Rate Limiting Best Practices
Respect Limits
| API | Limit | Strategy |
|---|---|---|
| FRED | 120/min | 0.5s delay between calls |
| BLS | 2000/day | Batch requests |
| BEA | No hard limit | Be reasonable |
Caching
- Store responses locally
- Check release schedules
- Only fetch updates
Error Handling
\\\`python
import time
def fetch_with_retry(url, max_retries=3):
for i in range(max_retries):
response = requests.get(url)
if response.status_code == 200:
return response.json()
elif response.status_code == 429:
time.sleep(60) # Rate limited
else:
time.sleep(2 ** i) # Exponential backoff
raise Exception("Max retries exceeded")
\\\`
DataSetIQ Advantage
Instead of juggling multiple APIs:
- One search across all sources
- IQ scores for quality assessment
- Pre-cleaned, standardized data
- Instant downloads
Finding Series IDs
Use DataSetIQ to:
- Search for the data you need
- Find the official series ID
- Use that ID in direct API calls
Common Pitfalls
Date Formatting
- FRED: YYYY-MM-DD
- BLS: Varies by endpoint
- BEA: Various formats
Vintage Data
Data gets revised. Specify vintage for reproducibility:
- FRED has vintage dates
- Most APIs return current values only
Frequency Aggregation
Know how data is aggregated:
- Average, sum, end-of-period
- Seasonal adjustment
- Annualized vs actual
All data sources indexed on DataSetIQ—search once, find the right series instantly.
Related Articles
How to Find Inflation Data Faster than FRED
FRED is slow and clunky. DataSetIQ normalizes inflation data instantly—find CPI, PCE, and breakeven rates in 3 clicks instead of 20+.
Economic Data Release Calendar: Timing, Market Impact & Trading Tips
Master the economic calendar—when key data releases, how to trade around them, and which releases move markets most.
Data Visualization for Macro: Building Better Economic Charts
Best practices for visualizing economic data—chart types, design principles, tools, and how to communicate macro data effectively.
