Economic Calendar Scraper: Macro Events, CPI, Fed, NFP avatar

Economic Calendar Scraper: Macro Events, CPI, Fed, NFP

Pricing

from $11.34 / 1,000 economic events

Go to Apify Store
Economic Calendar Scraper: Macro Events, CPI, Fed, NFP

Economic Calendar Scraper: Macro Events, CPI, Fed, NFP

Scrape scheduled macro economic events (Fed, CPI, NFP, GDP, PMI) with actual, forecast, previous, an impact label and a surprise-vs-forecast delta. Filter by date range, country and impact. Export to JSON, CSV or Excel.

Pricing

from $11.34 / 1,000 economic events

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Economic Calendar Scraper: Macro Events, CPI, Fed, NFP

Economic Calendar Scraper: Macro Events, CPI, Fed, NFP

Here is one real result, with every field the actor returns:

{
"eventDate": "2026-08-18",
"time": "08:30 GMT",
"timeGmt": "08:30",
"country": "United States",
"eventName": "NY Empire State Manufacturing Index",
"impact": "Medium",
"actual": "20.60",
"forecast": "10.60",
"previous": "15.60",
"actualValue": 20.6,
"forecastValue": 10.6,
"previousValue": 15.6,
"unit": null,
"surpriseVsForecast": 10,
"surpriseDirection": "above",
"description": "The Empire State Manufacturing Index rates the relative level of general business conditions in New York state. A level above 0.0 indicates improving conditions, below indicates worsening conditions. A higher than expected reading should be taken as positive/bullish for the USD, while a lower than expected reading should be taken as negative/bearish for the USD.",
"aiMarketImpact": null,
"aiAffectedAssets": null,
"aiWhatToWatch": null,
"aiHistoricalReaction": null,
"aiDisclaimer": null,
"source": "nasdaq.com",
"observedAt": "2026-08-23T12:38:30.596Z",
"error": null
}

The most complete free macro economic calendar scraper available. It returns every field the source exposes for each scheduled release (country, GMT time, actual, forecast, previous, description), plus derived fields you would otherwise compute yourself (an impact label and a surprise-vs-forecast delta), and gives you a multi-day range, a country filter and an impact filter to target exactly the events you need.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor pulls the scheduled macroeconomic release calendar for each day in the date range you pass, normalizes every event into one flat record, and writes it to the run dataset. Each record carries the country, the release time in GMT, the event name (for example Core CPI, Non-Farm Payrolls, GDP Growth Rate, FOMC rate decision, PMI), and the actual, forecast (consensus) and previous readings as published.

On top of the raw values it adds two derived fields so you do not have to post-process:

  • impact: a High, Medium or Low importance label derived from the event name. High covers the market movers (CPI, NFP, FOMC and rate decisions, GDP, PPI, retail sales, ISM/PMI, jobless claims).
  • surpriseVsForecast: the actual minus the forecast when both are numeric and share a unit, plus a surpriseDirection of above, below or inline.

An optional AI add-on attaches a market-impact note, the assets most sensitive to the release, what to watch, the usual reaction to a beat versus a miss, and a disclaimer.

Coverage matches the source calendar, which spans major economies (United States, Euro Zone, United Kingdom, Germany, Japan, China, Australia, and more) for recent and upcoming dates.

Use cases

  • Build a daily macro briefing: pull today's High-impact United States events (CPI, NFP, Fed) into a dashboard or Slack.
  • Backtest and event studies: pull a date range and read surpriseVsForecast to relate releases to market moves.
  • Trading apps and bots: schedule the actor each morning and surface the upcoming calendar with impact ratings.
  • Research and newsletters: filter by country and impact to summarize the week ahead.

Quickstart

Open the actor, paste this into the input, and press Run. It returns up to 10 upcoming United States macro events for today.

{
"countries": ["United States"],
"maxResults": 10
}

Every input field is optional. With an empty input the actor returns today's global calendar. Set dateFrom and dateTo for a range, impactMin to keep only the important releases, and aiEventImpact to add the AI layer.

Input reference

FieldTypeRequiredDefaultDescription
dateFromstringnotodayStart date YYYY-MM-DD. The actor loops each day in the range (capped at 31 days).
dateTostringnodateFromEnd date YYYY-MM-DD, inclusive. Keep the range under 31 days.
countriesstring[]no(all)Only keep events for these countries, for example United States, Euro Zone, United Kingdom, Germany, Japan, China. Case-insensitive, matched against the source country label.
impactMinenumno(all)Keep events at or above this importance: Low (all), Medium, or High (market movers only).
aiEventImpactbooleannofalsePaid add-on. Add an AI market-impact note, affected assets, what to watch, historical reaction and a disclaimer per event. Charged only when a usable analysis is returned. Disabled on free plans.
maxResultsintegerno10Maximum event records to collect across the run. Free Apify plans are capped at 10 per run.

Output reference

One dataset item per economic event. Types are string, number, string[], or null when the source value is absent.

FieldTypeDescription
eventDatestringISO date the event is scheduled for (YYYY-MM-DD).
timestringScheduled release time with note, for example 08:30 GMT.
timeGmtstringRaw release time in GMT, for example 08:30.
countrystringCountry or region the release covers.
eventNamestringEconomic release name, for example Core CPI, Non-Farm Payrolls, GDP Growth Rate.
impactstringDerived importance: High, Medium or Low.
actualstringActual reported value as published, for example 2.6%, 4.405M. null if not yet released.
forecaststringConsensus forecast value as published. null when no consensus is provided.
previousstringPrevious period value as published.
actualValuenumberactual parsed to a plain number (percent kept as-is, K/M/B/T expanded).
forecastValuenumberforecast parsed to a plain number.
previousValuenumberprevious parsed to a plain number.
unitstringDetected unit of the values: %, K, M, B, T, or null for a plain index.
surpriseVsForecastnumberactual minus forecast when both are numeric and share a unit. Positive means a beat.
surpriseDirectionstringabove, below or inline relative to forecast.
descriptionstringPlain-text description of what the indicator measures and how it typically moves markets.
aiMarketImpactstringAI note on how the release typically moves markets (AI add-on).
aiAffectedAssetsstring[]AI list of the assets or currencies most sensitive to the release (AI add-on).
aiWhatToWatchstringAI note on what a trader should watch around the release (AI add-on).
aiHistoricalReactionstringAI note on the usual reaction to a beat versus a miss (AI add-on).
aiDisclaimerstringAI risk disclaimer (AI add-on).
sourcestringData source.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success. On a failed run, a single item with a populated error field is written instead.

Example output record

Real record from a live run with aiEventImpact on ({"countries":["United States"],"impactMin":"Medium","aiEventImpact":true}):

{
"eventDate": "2026-08-20",
"time": "10:30 GMT",
"timeGmt": "10:30",
"country": "United States",
"eventName": "Crude Oil Inventories",
"impact": "Medium",
"actual": "4.405M",
"forecast": "0.200M",
"previous": "17.423M",
"actualValue": 4405000,
"forecastValue": 200000,
"previousValue": 17423000,
"unit": "M",
"surpriseVsForecast": 4205000,
"surpriseDirection": "above",
"description": "Crude Oil Inventories measures the weekly change in the number of barrels of commercial crude oil held by US firms. The level of inventories influences the price of petroleum products, which can affect inflation.",
"aiMarketImpact": "This release typically causes fluctuations in oil prices and related assets.",
"aiAffectedAssets": ["WTI Crude Oil", "USO", "XLE", "SPY", "CAD"],
"aiWhatToWatch": "Traders should watch for changes in oil prices and market sentiment following the release.",
"aiHistoricalReaction": "A significant beat usually leads to a rise in oil prices, while a miss may cause a decline.",
"aiDisclaimer": "Trading involves risk and may not be suitable for all investors.",
"source": "nasdaq.com",
"observedAt": "2026-08-23T12:41:05.001Z",
"error": null
}

How we compare

Us versus common economic-calendar sources:

FeatureThis actorTrading Economics APIInvesting.com wrappersForexFactory scrapers
Actual / forecast / previousYesYesYesYes (actual sometimes null)
Impact / importance labelYes (High/Medium/Low, derived)Yes (source rating)Yes (source rating)Yes (source rating)
surpriseVsForecast deltaYes, computed fieldNo (compute yourself)NoNo
Event descriptionYesYesNoSometimes
Multi-day date rangeYesYesYesYes (some cap ~30d)
Country filterYesYesYesYes
Minimum-impact filterYesVia importanceYesYes
Optional AI event-impactYesNoNoNo
API key requiredNoYesNoNo
BillingPay per resultSubscription + creditsPer resultPer result

Why choose this:

  • Surprise is built in. We ship a surpriseVsForecast delta; the others make you compute it.
  • Optional AI event-impact layer that no other calendar actor offers.
  • No API key and no subscription. Pay per result on Apify.
  • One clean flat schema across the whole macro set (Fed, CPI, NFP, GDP, PMI) with GMT time, description and surprise.
  • Multi-day range plus country and minimum-impact filters in a single run, no browser or self-hosting.

Where paid providers still beat us, honestly: Trading Economics offers more countries, far deeper multi-year history, and importance ratings that come directly from the source with formal SLAs. Our impact label is a keyword heuristic and may misclassify edge cases, and our history depth is limited to what the source calendar exposes. Investing.com and ForexFactory importance ratings are editorially curated at the source.

Run via API and CLI

Start a run and read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~economic-calendar-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"dateFrom":"2026-08-17","dateTo":"2026-08-21","impactMin":"High","maxResults":25}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~economic-calendar-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"countries":["United States"],"maxResults":50}'

Apify CLI:

apify call scrapers_lat/economic-calendar-scraper \
--input '{"countries":["Euro Zone"],"impactMin":"High"}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object.

Billing

  • Pay per result. You are charged per economic event returned (result event). See the pricing tab for the current per-result price.
  • Optional add-on. aiEventImpact charges once per event only when the AI returns a usable analysis. It is off by default and disabled on free plans.
  • No charge on failure. If a run errors or a day has no events, nothing is charged for those. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further results.
  • Free Apify plans are capped at 10 records per run. Upgrade for higher maxResults.

FAQ and troubleshooting

A run returned 0 records. Why? No events matched. Weekends and holidays have few or no releases, a far-future date may not be populated yet, or your countries / impactMin filters excluded everything. Zero-result runs are not charged.

Why is actual null for an upcoming event? The release has not happened yet. Forecast and previous are usually present ahead of time; actual fills in at release time.

How is impact determined? It is derived from the event name. High matches known market movers (CPI, NFP, FOMC and rate decisions, GDP, PPI, retail sales, ISM/PMI, jobless claims); minor items such as bill auctions and mortgage indices are Low; everything else is Medium. It is a heuristic, not a source-provided rating.

How is surpriseVsForecast computed? It is actualValue minus forecastValue when both parse to numbers and share a unit. If there is no consensus or the units differ, it is null.

Which countries are covered? Whatever the source calendar lists for the dates you request, which spans the major economies. Use countries to filter. For the widest country set and deep history, a paid provider such as Trading Economics will cover more.

Is this an official Fed, BLS or exchange tool? No. This actor is independent and not affiliated with any government agency, central bank or exchange. It reads publicly available calendar data.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with any government agency, central bank or exchange. Accesses only publicly available economic calendar data.