# US Economic Calendar + Canada (Official Sources) (`canada-dd/us-canada-economic-calendar`) Actor

US & Canadian economic release calendar with actuals, straight from official sources: BLS (CPI, NFP, PPI, JOLTS), BEA (GDP, PCE), Census (retail sales, durables, housing), Fed FOMC, DOL claims, Treasury auctions, Statistics Canada, Bank of Canada. No scraped commercial sites. $0.002/event.

- **URL**: https://apify.com/canada-dd/us-canada-economic-calendar.md
- **Developed by:** [Yurii Domaranskyi](https://apify.com/canada-dd) (community)
- **Categories:** Developer tools, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## US Economic Calendar + Canada (Official Sources)

An economic release calendar for stock, futures, FX and rates traders, with **actual and prior values**. Every row comes from an **official government or central-bank source**. Nothing is scraped from Investing.com, ForexFactory or other commercial sites, so there's no ToS risk and no breakage when those sites change.

**United States (primary)**
| Indicator | Agency | Schedule source | Actual source |
|---|---|---|---|
| Nonfarm payrolls, unemployment rate, avg hourly earnings (Employment Situation) | BLS | bls.gov 2026 release schedule | BLS Public Data API (FRED copy of the same BLS series as fallback) |
| CPI m/m, CPI y/y, core CPI m/m | BLS | bls.gov | BLS API |
| PPI final demand, JOLTS job openings, Employment Cost Index | BLS | bls.gov | BLS API / FRED (BLS series) |
| Real GDP, PCE & core PCE prices, personal income, personal spending, trade balance | BEA | BEA release calendar (iCal) | FRED copies of BEA series |
| Retail sales, durable goods, housing starts, new home sales, construction spending, factory orders | Census | census.gov economic indicator calendar | census.gov Economic Indicators (latest release); FRED (Census series) for older releases |
| FOMC rate decision (target range), FOMC minutes | Federal Reserve | federalreserve.gov FOMC calendar | Fed target range (DFEDTARL/DFEDTARU) |
| Initial jobless claims (weekly) | DOL | Thursdays 08:30 ET (Wednesday before a Thursday holiday) | FRED ICSA (DOL series) |
| Treasury auctions (optional) | US Treasury | FiscalData Upcoming Auctions API | – |

**Canada (secondary)**: CPI y/y and m/m, Labour Force Survey (employment change, unemployment rate), GDP (monthly and quarterly), retail trade, merchandise trade, manufacturing, wholesale, building permits, SEPH and IPPI. All from the Statistics Canada release schedule and WDS API. Bank of Canada rate decisions come with the overnight target (Valet API).

Each row includes: country, indicator, release datetime with timezone (America/New_York, plus UTC), period, actual, prior, unit, status (scheduled/released), the release's source URL, and the source URL for the actual value. **No consensus forecasts**: those are proprietary and no official source publishes them (`forecast` is always `null`).

### Pricing

Pay per event: **$0.005 per run** (`run`) + **$0.002 per calendar row** (`event`). A 30-day US calendar with high/medium importance is about 50 rows, roughly $0.10.

### Input examples

Next 30 days plus the last 7 days of actuals, US and Canada:

```json
{"country": "both"}
```

Only market-moving US events for a date range:

```json
{"country": "US", "dateFrom": "2026-10-01", "dateTo": "2026-11-30", "minImportance": "high"}
```

Specific indicators:

```json
{"indicators": ["us_cpi_yoy", "us_nfp", "us_fomc_decision", "ca_cpi_yoy", "boc_rate_decision"], "daysBack": 90, "daysAhead": 60}
```

### Output example

```json
{"country": "US", "indicator": "us_nfp", "indicator_name": "Nonfarm Payrolls (change)", "agency": "BLS", "importance": "high",
 "release_datetime": "2026-10-02T08:30:00-04:00", "release_datetime_utc": "2026-10-02T12:30:00Z", "timezone": "America/New_York",
 "period": "2026-09", "actual": 29.0, "prior": 133.0, "unit": "thousands of jobs, m/m change, SA", "status": "released",
 "source_url": "https://www.bls.gov/schedule/2026/home.htm", "actual_source_url": "https://data.bls.gov/timeseries/CES0000000001", "forecast": null}
```

### Notes and limits

- Actual and prior values are the **latest available (possibly revised)** values for the period, not necessarily the first print. Census rows for the most recent release use the figures exactly as Census published them.
- BLS blocks automated access to its schedule pages, so the 2026 BLS dates are embedded from https://www.bls.gov/schedule/2026/home.htm. The 2026 Bank of Canada dates are embedded from its official 2026 schedule. 2027 dates are added once those agencies publish them.
- The BLS API without a key has a small daily quota. When it runs out, the Actor falls back to FRED copies of the same public-domain BLS series. Only public-domain US government series are used from FRED.
- FOMC minutes appear once the Fed lists their release date. Times are 14:00 ET for FOMC statements and minutes.
- Use the `WARNINGS` record in the key-value store to see if any source was unavailable during a run.

### Attribution and licences

- US data: U.S. Bureau of Labor Statistics, Bureau of Economic Analysis, Census Bureau, Department of Labor, Federal Reserve Board, U.S. Treasury (FiscalData). These are U.S. government works in the public domain. Some values are retrieved via FRED®, Federal Reserve Bank of St. Louis. No agency endorses this Actor.
- **Statistics Canada**: Source: Statistics Canada. Contains information licensed under the Open Government Licence – Canada (https://open.canada.ca/en/open-government-licence-canada).
- **Bank of Canada**: Source: Bank of Canada, under its terms of use (https://www.bankofcanada.ca/terms/). This information is **available free of charge** on the Bank of Canada website (https://www.bankofcanada.ca/core-functions/monetary-policy/key-interest-rate/). This Actor charges for aggregation and processing, not for the data. The Bank of Canada does not endorse this Actor.

### Disclaimer

For information only. **Not investment, trading or financial advice.** Release dates can change (government shutdowns, rescheduling), and data can be revised. Always check the agency's website before trading. Provided "as is" without warranty. Not affiliated with any government agency or central bank.

# Actor input Schema

## `country` (type: `string`):

Which country's releases to return

## `dateFrom` (type: `string`):

Release date range start (ET). Overrides 'Days back'.

## `dateTo` (type: `string`):

Release date range end (ET). Overrides 'Days ahead'.

## `daysBack` (type: `integer`):

Used when no From date is given

## `daysAhead` (type: `integer`):

Used when no To date is given

## `indicators` (type: `array`):

Leave empty for all indicators of the selected country

## `minImportance` (type: `string`):

high = market-moving (CPI, NFP, FOMC, GDP, retail sales, BoC, CA CPI/LFS)

## `includeActuals` (type: `boolean`):

Fetch actual and prior values from official data APIs

## `includeTreasuryAuctions` (type: `boolean`):

Upcoming Treasury bill/note/bond auctions (FiscalData). Many rows; off by default.

## `maxEvents` (type: `integer`):

Hard cap on rows (and cost)

## Actor input object example

```json
{
  "country": "both",
  "daysBack": 7,
  "daysAhead": 30,
  "minImportance": "medium",
  "includeActuals": true,
  "includeTreasuryAuctions": false,
  "maxEvents": 500
}
```

# Actor output Schema

## `calendar` (type: `string`):

No description

## `fullResults` (type: `string`):

No description

## `warnings` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "country": "both",
    "daysBack": 7,
    "daysAhead": 30,
    "minImportance": "medium"
};

// Run the Actor and wait for it to finish
const run = await client.actor("canada-dd/us-canada-economic-calendar").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "country": "both",
    "daysBack": 7,
    "daysAhead": 30,
    "minImportance": "medium",
}

# Run the Actor and wait for it to finish
run = client.actor("canada-dd/us-canada-economic-calendar").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "country": "both",
  "daysBack": 7,
  "daysAhead": 30,
  "minImportance": "medium"
}' |
apify call canada-dd/us-canada-economic-calendar --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,canada-dd/us-canada-economic-calendar"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Yd2uJ2R8Ls9XCuPAG/builds/acOHlusAcfemd1saq/openapi.json
