Canadian cross-border travel intelligence (monthly)
Monthly cross-border travel intelligence for Canada from Statistics Canada table 24-10-0053-01 (unadjusted counts). Twenty-two traveller segments cover non-resident visitors (US and overseas, by air/land/water), returning Canadians (from the US and overseas, by air/land/water), crew, and other non-tourism travellers. Six headline segments carry same-day vs overnight splits; every published month passes exact nested identity gates (e.g. US + overseas == non-resident visitors). Derived signals include YoY momentum, a 12-month moving average with 3-month annualized trend, a same-month-2019 recovery index (2019=100), and a documented 0-100 travel-recovery score ranked per month with r1-r4 tiers.
- Rows
- 792
- Columns
- 29
- Source cadence
- Monthly
- Last refreshed
- Sep 26, 2026
- Theme
- transport
| Column | Type | Description |
|---|---|---|
| segment | string | Machine key of the traveller segment (e.g. us, canov_air). |
| segment_label | string | Human label of the traveller segment. |
| segment_group | string | all / visitors (non-residents entering) / residents (Canadians returning) / other. |
| parent_segment | string | Parent segment key for the nested identity gates; null for the grand total. |
| geo_name | string | English geography name (Canada, national). |
| geo_code | string | StatCan 2-letter code (CAN). |
| country_code | string | ISO alpha-3 country code (CAN for all rows). |
| month | string | Reference month, first day of month (ISO date). |
| as_of | string | Last complete month in the snapshot (pinned for idempotent re-runs). |
| travellers | integer | Traveller count (all trip lengths). (unit: persons) |
| excursionists_sameday | float | Same-day excursionists; null where the table does not publish the split. (unit: persons) |
| tourists_overnight | float | Overnight tourists; null where the table does not publish the split. (unit: persons) |
| sameday_share_pct | float | Same-day excursionists as a share of travellers. (unit: percent) |
| yoy_pp_sameday_share | float | Year-over-year change of the same-day share, percentage points. (unit: percentage points) |
| yoy_pct_travellers | float | Year-over-year percent change of travellers (season-free). (unit: percent) |
| yoy_pct_sameday | float | Year-over-year percent change of same-day excursionists. (unit: percent) |
| yoy_pct_overnight | float | Year-over-year percent change of overnight tourists. (unit: percent) |
| travellers_12m_ma | float | Trailing 12-month moving average of travellers (de-seasonalized trend level). (unit: persons) |
| trend_3m_ann | float | 3-month change of the 12-month moving average, annualized. (unit: percent per year) |
| recovery_index_2019 | float | 100 * travellers / travellers in the same month of 2019 (last full pre-pandemic year); null when the 2019 base is zero or missing. (unit: index (2019 = 100)) |
| share_of_parent_pct | float | Segment travellers as a share of the parent segment. (unit: percent) |
| recovery_score | string | 0-100 travel-recovery score: 100*(0.60*min-max winsorized recovery index [0,150] + 0.40*min-max winsorized YoY travellers [-60,+60]), each min-max normalized across segments within the month; 50 when degenerate; null when the recovery index is unavailable. (unit: score) |
| recovery_rank | string | Per-month recovery rank across segments (1 = most recovered); deterministic tie-breaks on travellers then segment key. Null when the score is null. |
| recovery_tier | string | r1 recovered (>=75) / r2 rebounding (>=50) / r3 lagging (>=25) / r4 depressed (<25); null when the score is null. |
| record_high_12m_trend | string | True when the 12-month moving average is the trailing-12-month maximum. |
| surge_flag | boolean | True when YoY traveller growth >= 25%. |
| slump_flag | boolean | True when YoY traveller growth <= -25%. |
| row_hash | string | SHA-256 (truncated) of the row's content fields. |
| source_retrieved | string | Source data vintage: latest reference month present in the retrieved vectors (content-pinned so identical re-fetches hash identically). |
First 10 sample rows — a preview, not the complete dataset.
| segment | segment_label | segment_group | parent_segment | geo_name | geo_code | country_code | month | as_of | travellers | excursionists_sameday | tourists_overnight | sameday_share_pct | yoy_pp_sameday_share | yoy_pct_travellers | yoy_pct_sameday | yoy_pct_overnight | travellers_12m_ma | trend_3m_ann | recovery_index_2019 | share_of_parent_pct | recovery_score | recovery_rank | recovery_tier | record_high_12m_trend | surge_flag | slump_flag | row_hash | source_retrieved |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| canov | Canadian residents returning from other countries | residents | canret | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 924,932 | 7,801 | 917,131 | 0.84 | 0.21 | 22.86 | 64.47 | 22.59 | 728,305 | 14.43 | 82.6 | 18.72 | 20.3 | 19 | r4 | true | false | false | 1487c4693b4d28b7 | 2026-07-01 |
| canov_air | Canadians returning from overseas, air | residents | canov | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 917,078 | — | — | — | — | 22.47 | — | — | 724,804.8 | 13.94 | 82.1 | 99.15 | 19.7 | 20 | r4 | true | false | false | 918837042453b1ec | 2026-07-01 |
| canov_land | Canadians returning from overseas, land | residents | canov | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 3,663 | — | — | — | — | 248.53 | — | — | 2,540.7 | 287.5 | — | 0.4 | — | — | — | true | true | false | b39e31a8cdc4db63 | 2026-07-01 |
| canov_water | Canadians returning from overseas, water | residents | canov | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 4,191 | — | — | — | — | 40.78 | — | — | 959.6 | 76.87 | 166.6 | 0.45 | 85.2 | 2 | r1 | true | true | false | 1dc5339305e171d1 | 2026-07-01 |
| canret | Canadian-resident visitors returning to Canada | residents | total | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 4,941,360 | 1,823,152 | 3,118,208 | 36.9 | 4.99 | 32.34 | 53.02 | 22.64 | 3,704,784.6 | 35.33 | 84 | 51.33 | 28.7 | 14 | r3 | true | true | false | 3222e1a0fd4b4a14 | 2026-07-01 |
| canus | Canadian residents returning from the United States | residents | canret | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 4,016,428 | 1,815,351 | 2,201,077 | 45.2 | 5.39 | 34.73 | 52.97 | 22.66 | 2,976,479.6 | 41.15 | 84.3 | 81.28 | 30.8 | 13 | r3 | true | true | false | 75ab4cf94da71bf2 | 2026-07-01 |
| canus_air | Canadians returning from the US, air | residents | canus | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 764,920 | — | — | — | — | 11.66 | — | — | 920,443 | 19.13 | 103.5 | 19.04 | 27.5 | 15 | r3 | true | false | false | a195d341ff58fe90 | 2026-07-01 |
| canus_land | Canadians returning from the US, land | residents | canus | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 3,189,774 | — | — | — | — | 41.54 | — | — | 2,030,284.4 | 52.15 | 79.9 | 79.42 | 32.7 | 11 | r3 | true | true | false | a7859ae003b4c37e | 2026-07-01 |
| canus_water | Canadians returning from the US, water | residents | canus | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 61,734 | — | — | — | — | 45.13 | — | — | 25,752.2 | 99.92 | 169.4 | 1.54 | 88.5 | 1 | r1 | true | true | false | 6e569873c46e9c00 | 2026-07-01 |
| crew | Crew entering or returning to Canada | other | other_trav | Canada | CAN | CAN | 2023-08-01 | 2026-07-01 | 797,227 | — | — | — | — | 8.07 | — | — | 660,744.8 | 8.45 | 106.6 | 73.85 | 27.1 | 16 | r3 | true | false | false | 175466fefd90f3df | 2026-07-01 |
- Current
20260926T164323Z-467e31784bf5 · sha256 467e31784bf5…
792 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_travel_signals/cross_border_travel_intel_monthly" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/statcan_travel_signals/cross_border_travel_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_travel_signals/cross_border_travel_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 20260926T164323Z-467e31784bf5 and its content hash, so readers get exactly the data you used.
Statistics Canada cross-border travel intelligence. (2026). Canadian cross-border travel intelligence (monthly) [Data set, snapshot 20260926T164323Z-467e31784bf5, sha256 467e31784bf5]. Datazimuts. Retrieved 2026-09-26, from https://datazimuts.com/en/datasets/statcan_travel_signals/cross_border_travel_intel_monthly?snapshot=20260926T164323Z-467e31784bf5
@misc{dz_statcan_travel_signals_cross_border_trav_467e3178,
title = {{Canadian cross-border travel intelligence (monthly)}},
author = {{Statistics Canada cross-border travel intelligence}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/en/datasets/statcan_travel_signals/cross_border_travel_intel_monthly?snapshot=20260926T164323Z-467e31784bf5}},
note = {Snapshot 20260926T164323Z-467e31784bf5, sha256 467e31784bf51af38da735b7ed3d19feb4e9da282d002f6d69e16c9fa53db077; accessed 2026-09-26}
}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_travel_signals%2Fcross_border_travel_intel_monthly&lang=en&theme=auto&snapshot=20260926T164323Z-467e31784bf5&x=segment&y=travellers&agg=avg" title="Canadian cross-border travel 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.