Fed Calendar: FOMC Meetings, Minutes & Statistical Releases
Pricing
from $1.40 / 1,000 calendar entry returneds
Fed Calendar: FOMC Meetings, Minutes & Statistical Releases
Scheduled Federal Reserve events from the Fed's own calendar: FOMC meeting days, statement, press conference and minutes, Beige Book, governor speeches and statistical releases (G.17, H.8, G.19, Z.1, H.15). One row per event with Eastern and UTC time and links to statement and minutes.
Pricing
from $1.40 / 1,000 calendar entry returneds
Rating
0.0
(0)
Developer
Samat Makatov
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Scheduled Federal Reserve events from the Fed's own calendar: FOMC meeting days, statement, press conference and minutes, Beige Book, governor speeches and statistical releases (G.17, H.8, G.19, Z.1, H.15). One row per event with Eastern and UTC time and links to statement and minutes.
The actor reads the Federal Reserve Board's own two calendars on www.federalreserve.gov: the monthly event calendar and the FOMC meeting calendar. You get one dataset row per scheduled date — event type, printed Eastern time, the exact UTC moment, the release code (H.15, G.17, Z.1 …), the speaker of a Board appearance, and for every FOMC meeting the links to statement, implementation note, projection materials, press conference and minutes plus the date the minutes appeared. It is a schedule: dates, times and documents, not actual, forecast or previous values of any indicator. No API key, no proxy and no browser: one static page for the meeting calendar, or the calendar index plus one page per month the Board publishes in your window.
Need it tailored to your workflow? Missing a field, a filter, another source or a different output format? Open an issue and describe what you need — we read every request and adapt the actor.
Use cases
- Trading bots and agents: "when is the next Fed meeting?" —
fomcMeetingswithonlyUpcomingreturns the remaining meeting days of this year and the whole next year, with the projection flag. - Rates desks: the full FOMC communication block — meeting day, press conference and the minutes three weeks later in one table, each with its UTC moment, so a job can be scheduled minutes before the release.
- Bank and macro analysts: a month of Fed data releases — every G.17, H.8, H.4.1, G.19 and Z.1 date of a chosen month, with the code and the time printed by the Board.
- Dashboards: "next release of X" —
nextEventgives exactly one row per selected release or event type with the hours left until it publishes. - News desks and event-risk monitoring — scheduled speeches, discussions and congressional testimony of Board members with speaker, topic, host event and live-stream link.
- Retrieval and research pipelines — a whole year of meetings with the URLs of statement, implementation note, projections and minutes, ready to ingest.
- Change monitoring — a scheduled task with
onlyNewemits only calendar entries that were not there on the previous run: a newly announced speech, a rescheduled release, a minutes date that just appeared.
Input
Nothing is required. Every field below has a working prefill or default: with the prefilled values a run returns the next 60 days of FOMC events and statistical releases, and a run with a truly empty input returns every scheduled event of those 60 days (speeches and holidays included).
| Field | Type | Default | Allowed values / notes |
|---|---|---|---|
mode | string | calendar | calendar (one row per scheduled event), nextEvent (only the next occurrence of each selected type/release), fomcMeetings (one row per FOMC meeting with its documents) |
eventTypes | string[] | empty = every entry | statisticalRelease, fomcMeeting, fomcMinutes, fomcPressConference, beigeBook, speech, holiday, other — see Event types. Ignored in fomcMeetings |
releaseCodes | string[] | empty = every release | 16 codes, see Statistical releases. A row without a code (an FOMC day, a speech) is dropped when this filter is set |
titleContains | string | empty | Free text, case-insensitive, e.g. industrial production, minutes, bowman. For a speech or testimony the topic line and the speaker name count as part of the title |
dateFrom | string | today (Eastern) | YYYY-MM-DD, inclusive. Month pages exist from January 2025 onwards |
dateTo | string | dateFrom + withinDays | YYYY-MM-DD, inclusive. A window reaching past the last published month is trimmed and the run says which month is missing |
withinDays | integer | 60 | 1–730. Window length when dateTo is empty: today up to N days ahead, or N days from dateFrom when only that is set. Each month of the window that the Board publishes costs one page request |
fomcYears | string[] | empty = every listed year | Four-digit years, e.g. 2026; the page lists 2021 … 2027 today. Years it does not list are named in the run status; if none is listed the run ends with the years that are. fomcMeetings only |
onlyProjectionMeetings | boolean | false | fomcMeetings only: keep the quarterly meetings that publish the Summary of Economic Projections |
onlyUpcoming | boolean | false | Drop events whose moment has passed. nextEvent always applies it |
onlyNew | boolean | false | Output only entries no earlier run of the same filter set delivered. The filter set includes the date window and the onlyUpcoming / onlyProjectionMeetings switches — see Monitoring |
sortOrder | string | soonest | soonest (earliest first) or latest |
maxItems | integer | 50 | 1–2000. A calendar month is roughly 60 rows, because H.15 and CP publish on every business day. With onlyNew, rows delivered before do not count |
fields | string[] | all fields | Keep only these output fields, in this order, e.g. ["title", "eventDate", "eventDateTimeUtc"]. Nothing you did not list is added. Letter case and one-letter slips are corrected and named in the status, a field of the other mode is skipped with a note, and a list with no usable field stops the run before any request |
Filters combine with AND and only ever narrow a run. mode, eventTypes, releaseCodes and sortOrder are choice fields: they take exactly the values listed, and anything else (a typo such as speeches or h15) is rejected by Apify's input validation before the run starts, with the list of valid values — never quietly widened to everything. fomcYears takes any four-digit year, so a year the Board adds later works without an update. To match by wording, use the free-text titleContains.
Reference
Event types
| Value | What it looks like on the calendar |
|---|---|
statisticalRelease | H.15 - Selected Interest Rates, G.17 - Industrial Production and Capacity Utilization, the two loan-officer surveys — the Statistical Releases section |
fomcMeeting | FOMC Meeting, with the note "Two-day meeting, October 27 - 28" |
fomcMinutes | FOMC Minutes, with the note naming the meeting the minutes belong to |
fomcPressConference | FOMC Press Conference, usually with the Board's live-broadcast link |
beigeBook | Beige Book, eight times a year, two weeks before a meeting |
speech | Speech - Governor …, Discussion - Vice Chair for Supervision … and the Testimony section (a congressional hearing is the same kind of event risk) |
holiday | Holiday - Columbus Day with the note about which day the daily and weekly releases move to |
other | Board meetings, conferences, announcements — anything else the calendar prints |
The printed section heading is always kept in section, so you can tell a speech from a testimony.
Statistical releases
| Code | Release | Cadence |
|---|---|---|
CP | Commercial Paper | every business day |
H.15 | Selected Interest Rates | every business day |
H.4.1 | Factors Affecting Reserve Balances | weekly, Thursday |
H.8 | Assets and Liabilities of Commercial Banks in the U.S. | weekly, Friday |
H.10 | Foreign Exchange Rates (weekly) | weekly, Monday |
G.5 | Foreign Exchange Rates (monthly) | monthly |
G.17 | Industrial Production and Capacity Utilization | monthly |
G.19 | Consumer Credit | monthly |
G.20 | Finance Companies | monthly, publication date approximate |
H.6 | Money Stock Measures | monthly |
Z.1 | Financial Accounts of the United States | quarterly |
SLOOS | Senior Loan Officer Opinion Survey on Bank Lending Practices | quarterly |
SCOOS | Senior Credit Officer Opinion Survey on Dealer Financing Terms | quarterly |
E.2 | Survey of Terms of Business Lending | quarterly, no entry on this calendar |
CHGDEL | Charge-Off and Delinquency Rates | quarterly, no entry on this calendar |
DSR | Household Debt Service and Financial Obligations Ratios | quarterly, no entry on this calendar |
The three marked codes are real Board releases that the event calendar does not schedule; asking for them returns no rows and the run log says so. A release the Board prints with a code we do not list still comes back in an unfiltered run, with the printed code in releaseCode.
FOMC years and meeting flags
The meeting calendar currently lists 2021 to 2027 (57 meetings). The Board adds the next year during the summer and moves years older than about five to its historical pages, which this actor does not read. fomcYears is free text for that reason: ask for 2028 once the Board lists it, no actor update needed. isProjectionMeeting is the Board's asterisk — the meeting publishes the Summary of Economic Projections ("dot plot"). isUnscheduled marks an entry such as August 22 (notation vote), a decision taken between scheduled meetings. Document fields stay null until the Board publishes them: the statement on the last meeting day, the minutes three weeks later.
Examples
Next FOMC meeting dates for 2026 and 2027
{ "mode": "fomcMeetings", "fomcYears": ["2026", "2027"], "onlyUpcoming": true, "maxItems": 20 }
The whole FOMC block for the next four months (meeting, press conference, minutes)
{ "mode": "calendar", "eventTypes": ["fomcMeeting", "fomcMinutes", "fomcPressConference"], "withinDays": 120, "maxItems": 20 }
One month of banking and activity data
{ "mode": "calendar", "eventTypes": ["statisticalRelease"], "releaseCodes": ["G.17", "H.8", "G.19", "Z.1", "H.4.1"], "dateFrom": "2026-10-01", "dateTo": "2026-10-31", "maxItems": 40 }
Next publication of each indicator, one row each
{ "mode": "nextEvent", "eventTypes": ["statisticalRelease"], "releaseCodes": ["G.17", "G.19", "H.8", "H.6", "Z.1", "H.15"], "maxItems": 10 }
Scheduled Board appearances as event risk
{ "mode": "calendar", "eventTypes": ["speech"], "dateFrom": "2026-09-01", "dateTo": "2026-11-30", "maxItems": 30 }
A fixed window is the safer input here: the Board announces appearances only days ahead, so a forward window such as withinDays: 45 can legitimately come back thin or empty.
Document links of a full year of meetings, trimmed to what a pipeline needs
{ "mode": "fomcMeetings", "fomcYears": ["2026"], "fields": ["meetingStartDate", "statementUrl", "minutesUrl", "minutesReleasedOn"], "maxItems": 12 }
Output
A real row from a cloud verification run (run frepli0jz8iblXdyL, build 0.1.x; the row shape is unchanged since, mode: "calendar", one month of statistical releases):
{"eventType": "statisticalRelease","section": "Statistical Releases","title": "H.4.1 - Factors Affecting Reserve Balances","topic": null,"eventDate": "2026-10-01","eventTimeEt": "16:30","eventDateTimeUtc": "2026-10-01T20:30:00.000Z","dayOfWeek": "Thursday","isUpcoming": true,"hoursUntilEvent": 93.5,"releaseCode": "H.4.1","releaseName": "Factors Affecting Reserve Balances","speaker": null,"speakerRole": null,"location": null,"note": null,"detailUrl": null,"liveUrl": null,"agency": "Federal Reserve Board","url": "https://www.federalreserve.gov/newsevents/2026-october.htm","fetchedAt": "2026-09-27T23:01:14.959Z"}
| Field | Type | Meaning / when it is empty |
|---|---|---|
eventType | string | One of the eight types above |
section | string | Section heading as printed (Statistical Releases, Speeches, Testimony, Other …) |
title | string | The entry's first printed line |
topic | string | Subject of a speech or testimony; empty for releases and FOMC days |
eventDate | string | Scheduled date, YYYY-MM-DD, the Board's own (Eastern) calendar day |
eventTimeEt | string | Printed Eastern clock time as 24-hour HH:MM; empty for a holiday or an approximate publication date |
eventDateTimeUtc | string | The same moment in UTC, ISO 8601; empty when no time is printed |
dayOfWeek | string | Weekday of eventDate |
isUpcoming | boolean | The moment is still ahead at fetch time (an entry without a time counts as ahead until the end of its day) |
hoursUntilEvent | number | Hours from the fetch moment; empty once the event has passed |
releaseCode | string | H.15, G.17, SLOOS …; empty for everything that is not a statistical release |
releaseName | string | Release name without the code |
speaker | string | Board member's name, speeches and testimony only |
speakerRole | string | Chair, Vice Chair for Supervision, Governor, a division director's title |
location | string | Host event as printed ("At the Sibos 2026 Conference, Miami Beach, Fla.") |
note | string | The Board's own note: which meeting the minutes belong to, where a holiday moves the daily releases, that a publication date is approximate |
detailUrl | string | First link the entry prints — a Board page or the event host's stream page. Stored as text; the actor fetches nothing outside www.federalreserve.gov |
liveUrl | string | The "Watch Live" link, when the Board publishes one |
agency | string | Always Federal Reserve Board |
url | string | The calendar page the row was read from |
fetchedAt | string | Fetch time, ISO 8601 UTC |
A speech row, from the verification run with no filters at all (run myb6HkZhYzeFE3Bvq), fills the fields a release row leaves empty:
{"eventType": "speech","section": "Speeches","title": "Discussion - Vice Chair for Supervision Michelle W. Bowman","topic": "Recent Developments in Bank Supervision and Regulation","eventDate": "2026-09-28","eventTimeEt": "08:15","eventDateTimeUtc": "2026-09-28T12:15:00.000Z","dayOfWeek": "Monday","isUpcoming": true,"hoursUntilEvent": 13.3,"releaseCode": null,"releaseName": null,"speaker": "Michelle W. Bowman","speakerRole": "Vice Chair for Supervision","location": "At the Military Banking Summit 2026 (Virtual)","note": null,"detailUrl": "https://teams.microsoft.com/meet/212992571985590?p=yY3nvqkkrbQw6RMUL6","liveUrl": "https://teams.microsoft.com/meet/212992571985590?p=yY3nvqkkrbQw6RMUL6","agency": "Federal Reserve Board","url": "https://www.federalreserve.gov/newsevents/2026-september.htm","fetchedAt": "2026-09-27T22:58:33.510Z"}
In fomcMeetings mode a row is one meeting (real row from run s3DiCZIAyubGhQASC):
{"eventType": "fomcMeeting","title": "FOMC Meeting, October 27-28, 2026","meetingStartDate": "2026-10-27","meetingEndDate": "2026-10-28","meetingYear": 2026,"eventDate": "2026-10-27","isUpcoming": true,"isProjectionMeeting": false,"hasPressConference": false,"isUnscheduled": false,"statementUrl": null,"statementPdfUrl": null,"implementationNoteUrl": null,"pressConferenceUrl": null,"projectionsUrl": null,"projectionsPdfUrl": null,"minutesUrl": null,"minutesPdfUrl": null,"minutesReleasedOn": null,"agency": "Federal Reserve Board","url": "https://www.federalreserve.gov/monetarypolicy/fomccalendars.htm","fetchedAt": "2026-09-27T23:01:14.017Z"}
| Field | Type | Meaning / when it is empty |
|---|---|---|
meetingStartDate, meetingEndDate | string | First and last meeting day; equal for a one-day or notation-vote meeting, and they can span two months (April 30 – May 1) |
meetingYear | number | Year block the meeting is listed under |
eventDate | string | Same as meetingStartDate, so rows of all three modes share a date field |
isUpcoming | boolean | The meeting has not finished yet |
isProjectionMeeting | boolean | The Board's asterisk: Summary of Economic Projections is published |
hasPressConference | boolean | True once the Board has published the press-conference page for the meeting |
isUnscheduled | boolean | A notation vote or other unscheduled decision |
statementUrl, statementPdfUrl | string | Policy statement, HTML and PDF; published on the last meeting day |
implementationNoteUrl | string | Implementation note that accompanies the statement |
pressConferenceUrl | string | Press-conference page (the Board uses two spellings of the URL; both are handled) |
projectionsUrl, projectionsPdfUrl | string | Projection materials, projection meetings only |
minutesUrl, minutesPdfUrl | string | Minutes, about three weeks after the meeting |
minutesReleasedOn | string | Date the minutes were released, YYYY-MM-DD |
agency, url, fetchedAt | string | Source page and fetch time |
Every run also writes a SUMMARY record to its key-value store (linked from the run's output): the filters, the pages read and the number of requests, which months the Board has not published or could not be read, how many entries were parsed and matched, how many rows were written or skipped as delivered before, whether maxItems, the spending limit or the timeout cut the run, plus any input note. The dataset schema documents every column with a title, a description and an example, so agents and MCP clients see the row shape before a run.
Dataset views: Fed calendar (date, time, type, event, release, speaker, links), Upcoming events (UTC moment, hours left, weekday), FOMC meetings (meeting days, projection and press-conference flags, document links).
Use it from code / agents
curl -X POST "https://api.apify.com/v2/acts/yadroo~fed-fomc-calendar/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"mode":"fomcMeetings","fomcYears":["2026","2027"],"onlyUpcoming":true,"maxItems":20}'
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('yadroo/fed-fomc-calendar').call({mode: 'nextEvent',eventTypes: ['statisticalRelease'],releaseCodes: ['G.17', 'H.8'],fields: ['releaseCode', 'eventDate', 'eventDateTimeUtc', 'hoursUntilEvent'],maxItems: 10,});const { items } = await client.dataset(run.defaultDatasetId).listItems();
from apify_client import ApifyClientclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("yadroo/fed-fomc-calendar").call(run_input={"mode": "calendar", "withinDays": 7, "onlyUpcoming": True, "maxItems": 25,})items = client.dataset(run["defaultDatasetId"]).list_items().items
MCP: add https://mcp.apify.com to Claude / Cursor / any MCP client and call the yadroo/fed-fomc-calendar tool with the same JSON input.
Monitoring
For monitoring, schedule a task with onlyNew: true and the filters you care about; the first run returns everything it finds, later runs return only entries that are new or have moved. A run that finds no change writes no rows and still succeeds — that is the expected result for a change feed, and it is why onlyNew belongs in a scheduled task rather than in a one-off query.
- The memory lives in a named key-value store of your account,
fed-fomc-calendar-state, one record per filter set: mode, event types, releases, title text, FOMC years, the date window (a rollingwithinDayswindow by its length, so it keeps one record while it moves; fixed dates by the dates) and theonlyUpcoming/onlyProjectionMeetingsswitches. Two tasks with different filters never consume each other's changes. - Entries delivered before are dropped before
maxItemscuts the list, and an entry is remembered only once it is written — a run stopped by the spending limit or the timeout leaves the rest for the next run. - Builds before October 2026 kept one record per filter set without the window. A calendar task's first run on the new build takes that record over, so nothing it already delivered comes (and is billed) again.
Use fields to keep rows small — the examples above trim a row to four keys.
Pricing
Pay per event: $0.001 when a run starts, plus $0.002 per dataset row. Every run is charged the start event, also a run that returns no rows. Row prices are lower on paid Apify plans (Bronze −10 % $0.0018, Silver −20 % $0.0016, Gold and above −30 % $0.0014); the start event is the same on every plan; platform usage is included.
Set a maximum cost per run and the run stops exactly there: it writes only the rows that limit pays for, reads no further pages, and ends with the status "Stopped at your spending limit: N rows delivered".
Worked examples at the free-plan price:
- Ten upcoming FOMC meetings (
fomcMeetings,onlyUpcoming): $0.001 + 10 × $0.002 = $0.021. - A week of all Fed events, 25 rows: $0.001 + 25 × $0.002 = $0.051.
- The default run, 50 rows of the next 60 days: $0.001 + 50 × $0.002 = $0.101.
Runs are short: at 256 MB and a handful of static page requests, the verification runs behind this README finished in a few seconds each.
Limits & FAQ
- Coverage of the event calendar. The Board publishes month pages from January 2025 to the end of the current year (December 2026 today). A window that reaches further gets the months that exist, and the run status and
SUMMARYname the missing months; a window entirely outside the published range ends with a message naming the covered range. Older months stay reachable through the Board's calendar archive, which this actor does not read. - Coverage of the meeting calendar. 2021–2027 today. Meetings beyond the last listed year do not exist yet: the Board announces the next year in summer, and dates stay tentative until confirmed at the preceding meeting.
- Times. Exactly as printed, in US Eastern time, converted to UTC with the offset in force on that date, so the daylight-saving switch in March and November is handled. Entries the Board prints without a time (holidays, the approximate G.20 date) keep
eventTimeEtandeventDateTimeUtcempty rather than guessing a time. - Repeating entries. The calendar prints one row per release with a list of day numbers ("1, 2, 5, 6, …"). Each of those days becomes its own dataset row, which is why one month of H.15 is 21 rows.
- Holidays. Returned as their own rows with the Board's note about which day the daily and weekly releases move to; the release rows themselves already show the moved dates.
- Approximate dates. G.20 is published on an approximate date; the note says so and is kept in
note. - No indicator values. This is a schedule. It does not carry actual, forecast or previous numbers, and it does not carry FOMC rate probabilities.
- What is not fetched. Only
www.federalreserve.govis requested. Live-stream links that point elsewhere (a Federal Reserve Bank, a university, a video platform) are stored as strings indetailUrl/liveUrland never opened. - Speeches are announced late. The Board usually posts an appearance a few days to two weeks ahead, so a speech-only window can be thin, and a future month may have no speeches listed at all yet.
- Rescheduling. The Board does move dates.
onlyNewtreats a changed moment as a new entry, which makes a scheduled task a change feed. - Empty results. A filter that matches nothing returns zero rows with a log line saying how many entries were read and what to widen — an invalid filter value fails instead, with the list of valid values.
- Politeness.
fomcMeetingsmakes one request. The other modes read the calendar index, then one page per month of the window that the index lists — a 60-day window is 3 or 4 requests, and so is the widest 730-day window today, because the Board publishes only to the end of the current year. Months it has not published cost no request; a listed page that is missing gets one retry under the other URL spelling, and one run reads at most 30 month pages. If the index cannot be read, the two URL spellings are tried per month and probing stops after 6 missing pages. Incalendarmode months are read in output order (newest first forlatest), and reading stops oncemaxItemsrows are in. Throttling (429/5xx) is retried with backoff; the User-Agent identifies the actor. Board content is in the public domain. - Spending limit and timeout. Rows are written month by month as they are read. At your maximum cost per run the run stops with "Stopped at your spending limit: N rows delivered"; near the run timeout it stops starting new pages and ends successfully with "Stopped before the run timeout: N rows saved". A month page that cannot be read after the retries is named in the status (
Could not read: …) and the other months are still returned; a run that could read nothing fails with the reason.
Made by Yadroo. Sibling actors: bls-release-calendar, ons-release-calendar, statcan-release-calendar, us-treasury-yields, sec-edgar-filings.