Canadian manufacturing sales intelligence (monthly)
Monthly Canadian manufacturing intelligence from Statistics Canada's Monthly Survey of Manufacturing (table 16-10-0047-01): sales (shipments) joined with new orders, unfilled orders and total inventories for the headline aggregate, the durable- and non-durable-goods aggregates and the 21 NAICS 3-digit subsectors — Canada-national, seasonally adjusted, thousands of dollars. Momentum (MoM, 3-month-annualized, YoY) on every measure; inventory-to-sales and orders-coverage ratios plus a book-to-bill ratio; 60-month inventory z-scores; a documented 0-100 manufacturing-momentum score with per-month industry ranks and m1-m4 tiers; record, contraction, backlog-surge/drawdown and inventory-glut flags; breadth diffusion; and an additive decomposition of headline sales YoY into subsector contributions (they sum exactly to the published total). Caveats: unfilled orders are sparse for some industries (kept null, never imputed); the latest month is preliminary and may be revised; published about 6 weeks in arrears. Statistics Canada Open Licence (commercial reuse allowed); source: Statistics Canada.
- Source
- Statistics Canada
- Rows
- 9,672
- Columns
- 40
- Source cadence
- Monthly
- Last refreshed
- Sep 27, 2026
- Theme
- economy
| Column | Type | Description |
|---|---|---|
| month | string | Reference month: first day of the month, ISO date. (unit: ISO date) |
| country_code | string | ISO alpha-3 country code (CAN for every row). (unit: ISO 3166-1 alpha-3) |
| industry_code | string | Industry key: 'total' for the headline 'Manufacturing [31-33]' aggregate, 'durable' / 'nondurable' for the durable-goods and non-durable-goods aggregates, else the NAICS 3-digit subsector code. Primary join key with month. (unit: NAICS code) |
| industry_label | string | Provider-verbatim industry label. |
| is_headline | integer | 1 for the headline aggregate row, 0 for the 23 industry rows. (unit: binary) |
| industry_group | string | One of total / durable / nondurable / subsector. (unit: categorical) |
| sales_thousands | float | Sales of goods manufactured (shipments), seasonally adjusted, as published: in thousands of Canadian dollars (multiply by 1,000 for dollar amounts). Non-negative float; genuine upstream gaps are missing, never zero-filled; the latest month is preliminary and may be revised. (unit: thousands of CAD, seasonally adjusted) |
| new_orders_thousands | float | New orders — estimated values of orders received during the month, seasonally adjusted, as published: in thousands of Canadian dollars. Can be negative upstream when net cancellations exceed bookings (leather [316] was -$18.8M in 2016-10); kept verbatim, never clipped. Same vintage caveats as sales_thousands. (unit: thousands of CAD, seasonally adjusted) |
| unfilled_orders_thousands | float | Unfilled orders — estimated values of orders at end of month, seasonally adjusted, as published: in thousands of Canadian dollars. Sparse for some industries (beverage & tobacco [312] ends 2006-05; non-metallic mineral products [327] ends 2025-10; several others have interior gaps) — genuine upstream gaps are missing, never imputed. (unit: thousands of CAD, seasonally adjusted) |
| inventory_thousands | float | Total inventory — estimated values of total inventory at end of the month, seasonally adjusted, as published: in thousands of Canadian dollars. Same vintage caveats as sales_thousands. (unit: thousands of CAD, seasonally adjusted) |
| inv_sales_ratio | float | Inventory-to-sales ratio computed from the levels: months of supply at the current shipment pace. Median |computed - StatCan-published| = 0.0025 over 415 months. Null when sales are null or zero. (unit: ratio) |
| inv_sales_ratio_statcan | float | Inventory-to-sales ratio as published by StatCan (rounded to 2 decimals); diagnostic cross-check, not used in any gate. (unit: ratio) |
| orders_coverage_months | float | Unfilled orders divided by sales: months of backlog sitting on the books at the current shipment pace. Null where unfilled orders are unpublished or sales are null/zero. (unit: months) |
| book_to_bill_ratio | float | New orders divided by sales. Above 1 means the order book is growing faster than shipments; below 1 means shipments are being fed by the backlog. Null when sales are null or zero. (unit: ratio) |
| sales_mom_pct | float | Month-over-month percent change in sales. (unit: percent) |
| sales_ann_3m_pct | float | 3-month change in sales annualized: ((sales_t / sales_{t-3}) ^ 4 - 1) * 100. (unit: percent, annualized) |
| sales_yoy_pct | float | Year-over-year percent change in sales. (unit: percent) |
| new_orders_mom_pct | float | Month-over-month percent change in new orders. (unit: percent) |
| new_orders_yoy_pct | float | Year-over-year percent change in new orders. (unit: percent) |
| unfilled_orders_mom_pct | float | Month-over-month percent change in unfilled orders. (unit: percent) |
| unfilled_orders_yoy_pct | float | Year-over-year percent change in unfilled orders. (unit: percent) |
| inv_mom_pct | float | Month-over-month percent change in inventories. (unit: percent) |
| inv_yoy_pct | float | Year-over-year percent change in inventories. (unit: percent) |
| ratio_z_60m | float | Z-score of inv_sales_ratio against its trailing 60-month mean/std (minimum 24 observations; null when the window std is 0). Positive = inventories elevated relative to the 5-year norm. (unit: z-score) |
| manufacturing_momentum_score | float | Documented 0-100 composite: 100 * (0.50 * min-max(winsorized sales_yoy_pct, +/-15pp) + 0.50 * min-max(winsorized new_orders_yoy_pct, +/-15pp)), min-maxed within each month across the 21 subsectors. Higher = shipments and new-order demand both running hot. Null for the headline and aggregate rows. (unit: 0-100 score) |
| momentum_rank | integer | Per-month dense rank of manufacturing_momentum_score across the 21 subsectors (1 = hottest). Null for the headline and aggregate rows. (unit: rank) |
| momentum_tier | string | Quartile tier of momentum_rank within the month: m1 = ranks 1-6 (top quartile), m2 = 7-11, m3 = 12-16, m4 = 17-21. Null for the headline and aggregate rows. (unit: categorical) |
| sales_record_12m_flag | integer | 1 when sales equal the trailing-12-month maximum (inclusive). (unit: binary) |
| orders_record_12m_flag | integer | 1 when new orders equal the trailing-12-month maximum (inclusive). (unit: binary) |
| contracting_flag | integer | 1 when sales AND new orders are both down more than 5pp YoY. (unit: binary) |
| backlog_surge_flag | integer | 1 when unfilled_orders_yoy_pct exceeds +10% AND new_orders_mom_pct is positive: demand piling up faster than it is being fulfilled. (unit: binary) |
| backlog_drawdown_flag | integer | 1 when unfilled_orders_yoy_pct is below -10% AND sales_yoy_pct is positive: the backlog is being worked off. (unit: binary) |
| inventory_glut_flag | integer | 1 when ratio_z_60m exceeds +1.0 (inventories more than one std above the 5-year norm). (unit: binary) |
| top_driver_industry | string | NAICS code of the subsector with the largest absolute contribution to headline sales YoY growth that month. Month-level attribute: repeated on every industry row of the month. Deterministic: earliest NAICS code wins absolute ties. (unit: NAICS code) |
| top_driver_industry_label | string | Provider-verbatim label of the top driver subsector (month-level attribute, repeated on every industry row). |
| top_driver_contrib_pp | float | The top driver's signed additive contribution to headline sales YoY growth, in percentage points (month-level attribute, repeated on every industry row). (unit: pp) |
| industry_breadth_share | float | Share of the 21 subsectors with sales YoY growth above zero that month. (unit: share) |
| as_of | string | Latest reference month present in the fetched panel (YYYY-MM); identical across rows and across runs on the same published vintage, so a re-fetch of unchanged data produces a byte-identical panel. (unit: YYYY-MM) |
| source_table | string | StatCan product ID behind the row (16100047). |
| row_hash | string | Deterministic 16-hex row hash of industry_code + month (idempotency). |
First 10 sample rows — a preview, not the complete dataset.
| month | country_code | industry_code | industry_label | is_headline | industry_group | sales_thousands | new_orders_thousands | unfilled_orders_thousands | inventory_thousands | inv_sales_ratio | inv_sales_ratio_statcan | orders_coverage_months | book_to_bill_ratio | sales_mom_pct | sales_ann_3m_pct | sales_yoy_pct | new_orders_mom_pct | new_orders_yoy_pct | unfilled_orders_mom_pct | unfilled_orders_yoy_pct | inv_mom_pct | inv_yoy_pct | ratio_z_60m | manufacturing_momentum_score | momentum_rank | momentum_tier | sales_record_12m_flag | orders_record_12m_flag | contracting_flag | backlog_surge_flag | backlog_drawdown_flag | inventory_glut_flag | top_driver_industry | top_driver_industry_label | top_driver_contrib_pp | industry_breadth_share | as_of | source_table | row_hash |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1993-01-01 | CAN | total | Manufacturing [31-33] | 1 | total | 24,241,579 | 24,954,123 | 21,526,040 | 34,947,137 | 1.442 | 1.44 | 0.888 | 1.029 | -0.321 | 2.486 | 8.017 | 3.226 | 11.192 | 3.423 | 5.286 | -0.798 | -2.815 | — | — | — | — | 0 | 1 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | 4ea1f5e863d1a32e |
| 1993-01-01 | CAN | durable | Durable goods industries | 0 | durable | 13,004,739 | 13,673,676 | 19,821,427 | 20,764,895 | 1.597 | 1.6 | 1.524 | 1.051 | -1.569 | 4.608 | 11.042 | 4.447 | 16.754 | 3.493 | 4.988 | -0.394 | -1.821 | — | — | — | — | 0 | 1 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | 29b8fa8ef4afa013 |
| 1993-01-01 | CAN | nondurable | Non-durable goods industries | 0 | nondurable | 11,236,840 | 11,280,447 | 1,704,613 | 14,182,242 | 1.262 | 1.26 | 0.152 | 1.004 | 1.164 | 0.096 | 4.716 | 1.784 | 5.123 | 2.625 | 8.88 | -1.383 | -4.235 | — | — | — | — | 1 | 1 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | da263cf9874b6ef6 |
| 1993-01-01 | CAN | 311 | Food manufacturing [311] | 0 | subsector | 3,350,457 | 3,354,721 | 157,784 | 3,027,284 | 0.904 | 0.9 | 0.047 | 1.001 | -0.16 | 5.681 | 2.989 | 0.261 | 3.12 | 2.777 | 17.813 | -1.79 | 0.652 | — | 48.689 | 12 | m3 | 0 | 1 | 0 | 1 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | 0667a228147da20d |
| 1993-01-01 | CAN | 312 | Beverage and tobacco product manufacturing [312] | 0 | subsector | 699,722 | 699,995 | 2,063 | 1,490,558 | 2.13 | 2.13 | 0.003 | 1 | 2.478 | -8.927 | -4.059 | 2.518 | -4.022 | 15.251 | 15.251 | -0.096 | 0.253 | — | 18.297 | 19 | m4 | 0 | 0 | 0 | 1 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | df384c84844d0bf9 |
| 1993-01-01 | CAN | 313 | Textile mills [313] | 0 | subsector | 230,559 | 227,483 | 249,162 | 436,173 | 1.892 | 1.89 | 1.081 | 0.987 | -1.192 | 2.405 | 3.489 | -1.439 | 2.109 | -1.219 | -7.43 | -0.108 | -2.715 | — | 48.318 | 13 | m3 | 0 | 0 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | 4837bd3c0dcdccf4 |
| 1993-01-01 | CAN | 314 | Textile product mills [314] | 0 | subsector | 150,785 | 145,680 | 50,640 | 349,177 | 2.316 | 2.32 | 0.336 | 0.966 | -2.945 | -4.713 | 1.546 | -6.281 | -1.892 | -9.158 | -22.291 | 0.955 | -2.391 | — | 36.553 | 15 | m3 | 0 | 0 | 0 | 0 | 1 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | b229afa2463dc8a8 |
| 1993-01-01 | CAN | 315 | Apparel manufacturing [315] | 0 | subsector | 494,450 | 480,992 | 294,140 | 1,150,485 | 2.327 | 2.33 | 0.595 | 0.973 | -2.171 | 2.51 | -0.55 | -6.895 | -3.257 | -4.375 | -10.235 | 0.267 | -4.329 | — | 28.777 | 17 | m4 | 0 | 0 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | 095a8b6f107ebbc6 |
| 1993-01-01 | CAN | 316 | Leather and allied product manufacturing [316] | 0 | subsector | 73,742 | 61,366 | 104,730 | 207,086 | 2.808 | 2.81 | 1.42 | 0.832 | -3.274 | -0.384 | -0.444 | -14.151 | -17.152 | -10.568 | 22.727 | -4.061 | -7.372 | — | 9.484 | 20 | m4 | 0 | 0 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | d31bde675e49d6de |
| 1993-01-01 | CAN | 321 | Wood product manufacturing [321] | 0 | subsector | 1,400,009 | 1,386,484 | 220,892 | 2,251,238 | 1.608 | 1.61 | 0.158 | 0.99 | 4.351 | 40.352 | 30.947 | 3.364 | 29.682 | -5.77 | -5.832 | -2.677 | 3.183 | — | 100 | 1 | m1 | 1 | 1 | 0 | 0 | 0 | 0 | 336 | Transportation equipment manufacturing [336] | 2.693 | 0.81 | 2026-07 | 16100047 | ca7045fa3243eea5 |
- Current
20260927T094832Z-6fba41d56d43 · sha256 6fba41d56d43…
9,672 rows · first snapshot
Point any LLM at the metadata endpoint — the documentation above is machine-readable too (JSON-LD + Croissant).
curl "https://datazimuts.com/v1/datasets/statcan_mfg_sales_intel/ca_mfg_sales_intel_monthly" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/statcan_mfg_sales_intel/ca_mfg_sales_intel_monthly").json()
print(ds["title"], ds["rows"], "rows")
# Sample rows for an LLM context window
for row in ds.get("sample_rows", [])[:5]:
print(row)API endpoint: https://datazimuts.com/v1/datasets/statcan_mfg_sales_intel/ca_mfg_sales_intel_monthly
Tip: fetch /llms.txt for the full machine-readable catalog.
Where this data comes from and what was made from it. Other people's work shows as counts; only shared projects are named.
Cite this snapshot
Pinned to snapshot 20260927T094832Z-6fba41d56d43 and its content hash, so readers get exactly the data you used.
Statistics Canada. (2026). Canadian manufacturing sales intelligence (monthly) [Data set, snapshot 20260927T094832Z-6fba41d56d43, sha256 6fba41d56d43]. Datazimuts. Retrieved 2026-09-27, from https://datazimuts.com/en/datasets/statcan_mfg_sales_intel/ca_mfg_sales_intel_monthly?snapshot=20260927T094832Z-6fba41d56d43
@misc{dz_statcan_mfg_sales_intel_ca_mfg_sales_int_6fba41d5,
title = {{Canadian manufacturing sales intelligence (monthly)}},
author = {{Statistics Canada}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/en/datasets/statcan_mfg_sales_intel/ca_mfg_sales_intel_monthly?snapshot=20260927T094832Z-6fba41d56d43}},
note = {Snapshot 20260927T094832Z-6fba41d56d43, sha256 6fba41d56d43e99cc0b9de17cbd9e2af4d4924a76d43817d0e513f79c3774f75; accessed 2026-09-27}
}Embed a table or a chart
Paste this into any page. The embed is pinned to the same snapshot, follows the reader's light or dark setting, and always shows the source, license and a link back.
<iframe src="https://datazimuts.com/embed/chart?dataset=statcan_mfg_sales_intel%2Fca_mfg_sales_intel_monthly&lang=en&theme=auto&snapshot=20260927T094832Z-6fba41d56d43&x=month&y=is_headline&agg=avg" title="Canadian manufacturing sales intelligence (monthly)" width="100%" height="380" style="border:0" loading="lazy"></iframe>
Ask about this dataset. Answers come only from its catalog record, measured profile and change history, and list the facts they used.