menu

Science & FWI Guide

AB BC
calendar_today
Analytical Framework

Fire Weather Index — CFFDRS Reference

The Canadian Forest Fire Weather Index (FWI) System is a component of the Canadian Forest Fire Danger Rating System (CFFDRS). Developed by van Wagner (1987), it uses six sub-indices derived from daily noon weather observations to represent fuel moisture and fire potential.

grass
MOISTURE CODE

FFMC

Fine Fuel Moisture Code. Numerical rating of the moisture content of litter and other cured fine fuels. A critical indicator of ease of ignition and flammability.

device_thermostat
Temperature
DRYING RATE
air
Wind
RAPID EXCHANGE
rainy
Rain
RECOVERY

DMC

Moisture content of loosely compacted organic layers of moderate depth. Responds to temperature and rain.

LITTER LAYER
water_drop

DC

Drought Code. Represents the moisture content of deep, compact organic layers. Indicators of seasonal drought and smoldering potential.

ISI
Rate of Spread

Initial Spread Index

Calculated from FFMC and Wind Speed. It represents the potential rate of fire spread without the influence of fuel quantity.

FFMC IMPACT HIGH

BUI

Total fuel available for combustion. A combination of DMC and DC values.

DMC
+
DC

FWI

Primary Metric
warning

The final numerical rating of fire intensity. It combines the Initial Spread Index (ISI) and the Buildup Index (BUI).

science General indicator of fire control difficulty.

Atmospheric Dependencies

thermostat
Temperature
Primary Drying Agent
humidity_low
Rel. Humidity
Fuel Equilibrium
air
Wind Speed
Oxygen & Transport
rainy
Precipitation
Moisture Recharge

FWI Classification Scale

Low
FWI < 9

Fuels do not ignite easily. Fires spread slowly and are easily controlled.

Moderate
FWI 9–17

Fires start easily from sparks. Moderate spread rate; control is feasible with initial attack.

High
FWI 18–32

Fire starts readily and spreads quickly. Suppression requires increased resources.

Very High
FWI 33–49

Intense fire behaviour. Spotting and crowning possible. Difficult to control.

Extreme
FWI ≥ 50

Blow-up potential. Erratic fire behaviour. Direct attack not recommended.

Source: van Wagner, C.E. (1987). Development and Structure of the Canadian Forest Fire Weather Index System. Forestry Technical Report 35. Canadian Forestry Service.

Fire Behavior Prediction System

ST-X-3 · 1992

The FBP System translates FWI System outputs and fuel type into operational fire behaviour outputs: Rate of Spread (ROS), Head Fire Intensity (HFI), Crown Fraction Burned (CFB), and flame length. FBP outputs depend on fuel type — the same FWI conditions produce vastly different fire behaviour in C2 Boreal Spruce vs. D1 Leafless Aspen.

warning

Operational Caution — Taylor, Pike & Alexander (1997)

"Fire behavior predictions are intended to assist in decision making, and are not a substitute for experience, sound judgment, or observation of actual fire behavior." ROS predictions are accurate to approximately ±20% for rates > 3 m/min; accuracy decreases for slow-moving fires. Predictions assume flat terrain, open-canopy wind, and homogeneous fuel — adjust for slope, sheltering, and fuel patchiness. CFB thresholds: <10% surface fire; 10–89% intermittent crown fire; ≥90% continuous crown fire.

Core Equations

Rate of Spread (m/min)

ROS = a × (1 − e−b·ISI)c × BE

where BE = exp(50 · ln(q) · (1/BUI − 1/BUI₀))

Head Fire Intensity (kW/m)

HFI = (H × TFC × ROS) / 60

H = 18,000 kJ/kg; TFC = SFC + (CFB × CFL)

Flame Length (m)

L = 0.0775 × HFI0.46

Byram (1959)

Crown Fraction Burned

CFB = 1 − e−0.23(ROS−RSO)

Van Wagner (1977); RSO = CSI / (H × SFC)

FBP System HFI Intensity Class 1–6

Official classification published in the Alberta Wildland Urban Interface Pocket Guide (Government of Alberta, Forestry & Parks). Originating source: Cole & Alexander (1995), Canadian Forest Service Northern Forestry Centre, Edmonton.

Class HFI (kW/m) Flame Length Attack Mode
1 — Low< 10< 0.2 mDirect attack with hand tools · Should anchor
2 — Moderate10 – 5000.2 – 1.5 mDirect attack with hand tools · Should anchor
3 — High500 – 2,0001.5 – 2.5 mDirect attack with pump and hose · Should anchor
4 — Very High2,000 – 4,0002.5 – 3.5 mIndirect attack; direct attack on less intense area · Must anchor
5 — Extreme4,000 – 10,0003.5 – 5.5 mIndirect attack; direct attack on less intense area · Must anchor
6 — Catastrophic> 10,000> 5.5 mNo direct attack — evacuate structure zone

Sources: Taylor, Pike & Alexander (1997), Special Report 11 [8]; Alberta WUI Pocket Guide (Gov. of Alberta); Forestry Canada Fire Danger Group (1992), ST-X-3 [3].

grass

Grass Curing — O1a & O1b Fuel Types

FBP ST-X-3 · Van Wagner · Dominant driver of grass fire behaviour

For O1a (Matted Grass) and O1b (Standing Grass), percent curing is the dominant driver of fire behaviour — more influential than wind speed or FFMC. At 0% curing the grass is fully green and will not carry fire; at 100% curing the grass is fully desiccated and spread rates reach their theoretical maximum. The FBP System applies a Curing Factor (CF) to modify the effective ISI before the ROS formula is evaluated.

Curing Factor Equation

CF = 0.005 × (e0.061 × PC − 1)

ISIeff = CF × ISI

ROS = a × (1 − e−b · ISIeff)c × BE

where PC = percent curing (0–100). The O1a/O1b a, b, c coefficients (190/0.031/1.4 and 250/0.035/1.7) are calibrated to work with CF-modified ISI.

CF Reference Values

Curing % CF Operational State
0%0.000Green grass — no spread
30%0.028Early dry-down — negligible spread
60%0.190Marginal — threshold for notable spread
80%0.649Default — typical Alberta active season
90%1.175Late summer / drought conditions
100%2.222Fully desiccated — maximum spread (ISI × 2.2×)

Operational Note — Alberta Application

The default curing value in this application is 80% — representative of typical Alberta active-season conditions. Adjust curing using the stepper on the Home page when O1a or O1b is selected. At 60% curing, CF ≈ 0.19 — spread is marginal; at 100%, CF ≈ 2.22 — ISI is amplified 2.2× and ROS approaches extreme values. Field observation or satellite-derived curing estimates (e.g., NDVI-based phenology products) should inform this value when available. Prior to July 1, field-observed curing in southern Alberta grasslands commonly exceeds 80%; standing-grass (O1b) stations often reach 90%+ by August.

Source: Forestry Canada Fire Danger Group (1992). Development and structure of the Canadian Forest Fire Behavior Prediction System. ST-X-3. §O1 grass fuel type equations.

Data Sources & Methodology

Full Provenance
cloud_download

Weather Source — Three-Tier Hierarchy

CWFIS WFS · MSC SWOB Realtime · ECMWF IFS 0.25° · Client-Side Only · No API Key

All data is fetched live in the browser — no server, no caching. Current conditions use a three-tier priority. Tier 1 — CWFIS (NRCan firewx_stns_current WFS): provincial fire weather stations with pre-computed FWI chain; used when a station is found within ±2° (~220 km). Tier 2 — MSC SWOB Realtime (api.weather.gc.ca/collections/swob-realtime): real sensor observations from Environment Canada's automated weather station network; used when CWFIS has no coverage. Targets noon LST (19:00 UTC) when available. Tier 3 — ECMWF IFS 0.25° via Open-Meteo: numerical weather model output at exact station coordinates, noon LST targeted; last resort only. Forecasts use CWFIS NAEFS ensemble (14–16 days) as primary, falling back to ECMWF IFS 0.25° (7 days at exact lat/lng) when no NAEFS station is within 150 km. ECMWF IFS is the same model ECCC uses for verification — the 12Z run (initialized 06:00 MST) is available on Open-Meteo by approximately 13:00 MST, aligning with the 16:00 MST FBAN planning window.

Current Conditions — Primary CWFIS WFS · NRCan/MSC physical sensors · In-season only
GET cwfis.cfs.nrcan.gc.ca/geoserver/public/ows ?service=WFS&version=2.0.0&request=GetFeature &typeName=public:firewx_stns_current &outputFormat=application/json&count=50 &CQL_FILTER=lat BETWEEN {lat-2} AND {lat+2} AND lon BETWEEN {lng-2} AND {lng+2}
Field temp / rh / wsSensor observations
Field ffmc / dmc / dcFWI codes from CWFIS chain
Field isi / bui / fwiDerived indices from chain
Field lat / lon / nameStation coords + label

Station selection uses a two-pass algorithm: the app first identifies the nearest station with an active FWI chain (FFMC and DC not null — NRCan carry-over in progress); if no FWI-chain station exists within 200 km of the nearest weather-only station, the weather-only station is used instead. This ensures DC and FFMC continuity during the fire season rather than defaulting to the geographically closest sensor regardless of data quality. When CWFIS provides FWI codes (fire season, approx. Apr–Oct), they are used directly. Off-season, FWI codes are null and Van Wagner equations are applied to observed weather with cold-start DC values.

DC Divergence Warning: DC is a long-memory index (53-day e-folding time) shaped primarily by accumulated precipitation. Unlike temperature or wind, DC cannot be meaningfully interpolated between stations that have experienced different rainfall — a single convective cell can produce 30 mm at one gauge and 2 mm 20 km away. When ≥2 CWFIS stations within 75 km of the selected location differ by ≥75 DC units, the app flags this as a potential representativeness issue: a localised precipitation event likely fell between stations, and the nearest station DC may overestimate (or underestimate) actual fuel moisture. The operator should review nearby station DCs and consider selecting the station whose precipitation history best matches the target fuel complex.

Tier 2 — MSC SWOB Realtime Environment Canada · Real sensor obs · Used when CWFIS has no coverage

Minute-level automated weather station observations from Environment Canada's national network. CORS-enabled (Access-Control-Allow-Origin: *). Nearest station within ±1.5° (~150 km) is selected by Haversine distance. The hourly-averaged wind field (avg_wnd_spd_10m_pst1hr) is used rather than instantaneous wind, consistent with CFFDRS input requirements. Observation time is checked: if within ±1 hour of 19:00 UTC (noon LST), the source label reads noon LST; otherwise latest obs.

GET api.weather.gc.ca/collections/swob-realtime/items ?bbox={lng-1.5},{lat-1.5},{lng+1.5},{lat+1.5} &limit=50&f=json
Field air_temp°C at 2m AGL
Field rel_hum% relative humidity
Field avg_wnd_spd_10m_pst1hrkm/h 1-hr avg at 10m
Field pcpn_amt_pst1hrmm precipitation
Current Conditions — Fallback Open-Meteo NWP · Used when no CWFIS station found within range

CFFDRS specifies noon Local Standard Time (LST) as the standard daily observation time — equivalent to 19:00 UTC year-round for Alberta (UTC−7, standard time used regardless of DST). This app targets the 19:00 UTC hourly value from Open-Meteo. If noon LST has not yet occurred today, the most recent available hour is used as best-available and labelled accordingly. Once CWFIS stations are active for the fire season, this fallback is not used for covered stations and the noon LST constraint is moot — CWFIS provides operationally correct daily values directly.

GET api.open-meteo.com/v1/forecast ?latitude={lat}&longitude={lng} &hourly=temperature_2m,relative_humidity_2m,wind_speed_10m,wind_direction_10m,precipitation &forecast_days=1&timezone=UTC → select index where UTC hour = 19 (noon LST)
Field temperature_2m°C at 2m AGL
Field relative_humidity_2m% at 2m AGL
Field wind_speed_10mkm/h at 10m AGL
Field precipitationmm accumulated
14-Day Forecast — Primary CWFIS NAEFS WFS · Environment Canada ensemble · 23 Alberta stations
GET cwfis.cfs.nrcan.gc.ca/geoserver/public/wfs ?service=WFS&version=2.0.0&request=GetFeature &typeNames=public:firewx_naefs &outputFormat=application/json &CQL_FILTER=code={station_code}&count=20
Field max_tempPeak daily temp °C
Field min_rhMinimum daily RH %
Field median_wsMedian wind speed km/h
Field median_pcpMedian precipitation mm

Returns up to 16 daily forecast records per station. The nearest NAEFS station within 150 km is selected by Haversine distance. max_temp and min_rh are used (fire weather peak conditions, consistent with CFFDRS 13:00 LST standard). FWI is computed client-side via Van Wagner carry-forward chain from current observed values. Ensemble spread (pct25/pct75) is available in the layer but not yet displayed.

7-Day Forecast — Fallback ECMWF IFS 0.25° via Open-Meteo · Point-specific · Used when no NAEFS station within 150 km
GET api.open-meteo.com/v1/forecast ?latitude={lat}&longitude={lng} &hourly=temperature_2m,relative_humidity_2m,wind_speed_10m,precipitation &timezone=auto&forecast_days=7 → models=ecmwf_ifs025 removed (premium-only endpoint; default model used)
FWI chain Hour 12 (noon)CFFDRS LST standard
Peak burn FBP Hour 14 (14:00)D+1 fire behaviour
Model runs 00Z · 12Z12Z available ~13:00 MST
Resolution 0.25° (~25 km)Interpolated to point

Returns 168 hourly values (7 days × 24 h) at the exact station lat/lng. Two hour indices are extracted per day: day × 24 + 12 (noon LST) drives the Van Wagner FWI carry-forward chain; day × 24 + 14 (14:00 LST) provides peak burn temperature, RH, and wind for FBP fire behaviour prediction. ECMWF IFS is the European Centre for Medium-Range Weather Forecasts global model — the same model ECCC uses for verification and one of the highest-skill global NWP systems for Canadian latitudes. The 12Z run (initialized 06:00 MST) is typically available via Open-Meteo by 13:00 MST, making it current for the 16:00 MST FBAN planning window.

24-Hour Trend Station Detail chart · Loaded on each station change
GET api.open-meteo.com/v1/forecast ?latitude={lat}&longitude={lng} &hourly=temperature_2m,relative_humidity_2m,wind_speed_10m,precipitation &timezone=auto&past_hours=23&forecast_hours=0

Returns the previous 23 completed hours. FWI is chained hour-by-hour from spring startup defaults. Bars are coloured by danger class; solid = past, translucent = current hour.

local_fire_department

D+1 Peak Burn Prediction — FBAN Operational Product

Fire Behaviour Analyst · 16:00 MST Planning Window · FBP ST-X-3

The operational FBAN workflow requires a specific product: at approximately 16:00 MST, the analyst needs to predict fire behaviour during the next day's peak burn period (~14:00 MST) so that resources can be committed overnight. This app generates that product automatically on the Forecast page and in the Station Briefing print output.

Calculation Chain

Step 1 — Today's observed FFMC / DMC / DC (from CWFIS or SWOB) → chain starting state

Step 2 — Tomorrow's noon forecast (NAEFS max_temp / min_rh / median_ws, or ECMWF hour 12) → Van Wagner carry-forward → D+1 FFMC / DMC / DC

Step 3 — Tomorrow's 14:00 forecast (NAEFS peak values, or ECMWF hour 14) + D+1 FFMC/DMC/DC → calculateFBP(fuelCode, ffmc, dmc, dc, wind_14h)

Step 4 — Outputs: Head ROS (m/min), HFI (kW/m), Flame Length (m), Fire Type, CFB (%)

Why 14:00, not noon?

Van Wagner's FWI System uses noon LST as the standard observation time for daily indices (FFMC, DMC, DC). Peak fire behaviour, however, typically occurs in the mid-afternoon when temperature is highest and RH is lowest — approximately 13:00–15:00 LST. The FBP calculation uses the FFMC/DMC/DC from the noon chain (correct for fuel moisture state) but applies the 14:00 wind and weather to predict actual fire behaviour at peak burn.

FBP System HFI Intensity Class 1–6

1–2 — < 500 kW/m · Direct attack with hand tools · Should anchor

3 — 500–2,000 kW/m · Direct attack with pump and hose · Should anchor

4 — 2,000–4,000 kW/m · Indirect attack; direct on less intense area · Must anchor

5 — 4,000–10,000 kW/m · Indirect attack; direct on less intense area · Must anchor

6 — > 10,000 kW/m · No direct attack — evacuate structure zone

Taylor, Pike & Alexander (1997) Special Report 11; Alberta WUI Pocket Guide

Model Timing (MST)

ECMWF 12Z init06:00 MST
ECMWF available~13:00 MST
NAEFS updated~14:00 MST
FBAN planning~16:00 MST

By 16:00 MST both the ECMWF 12Z run and the NAEFS daily update are available, initialized on the same morning atmospheric state. Fuel type is selected manually (default C2 — Boreal Spruce) and persisted across pages via localStorage.

sensors

Station Network — 193 Alberta CWFIS Locations

Canadian Wildland Fire Information System · Natural Resources Canada

Station names and coordinates match the NRCan CWFIS fire weather station network. Coordinates are hard-coded in fwi.js → ALBERTA_STATIONS[]. For current conditions, each coordinate queries the CWFIS WFS layer for the nearest physical sensor within ±2° — the actual sensor name and distance are shown in the station UI. Forecasts use CWFIS NAEFS ensemble (primary, 23 stations) or Open-Meteo NWP (fallback). Stations span all Alberta forest management zones from High Level (58.52°N) to Cardston (49.20°N).

Northern

High Level, Fort Chipewyan, Peace River, Grande Prairie, Fort McMurray, Fort Vermilion, Manning, Wabasca, Slave Lake, High Prairie, Valleyview

Central

Athabasca, Lac La Biche, Bonnyville, Cold Lake, Fox Creek, Whitecourt, Edson, Hinton, Jasper, Grande Cache, Edmonton, Drayton Valley, Rocky Mtn House, Vegreville, Camrose, Lloydminster, Wetaskiwin, Stettler

Southern

Red Deer, Drumheller, Calgary, Banff, Claresholm, Brooks, Medicine Hat, Pincher Creek, Lethbridge, Cardston

calculate

Calculation Pipeline — Client-Side JavaScript

fwi.js · No server · Equations run in browser

FWI System — Van Wagner & Pickett (1985)

Weather inputs (T, RH, W, r) → FFMC → DMC → DC → ISI → BUI → FWI. All six equations implemented verbatim from the Forestry Canada publication. No simplifications or approximations. Day-length adjustment factors (DMC_LL, DC_LL) applied by calendar month, indices 1–12.

Spring startup defaults: FFMC = 85, DMC = 6. These are uniform across Alberta. DC startup is station-specific by fuel/climate zone — ranging from DC = 100 (boreal north: Fort Chipewyan, High Level, Fort Vermilion, Manning, Wabasca — high precipitation and snowpack) through DC = 150 (central boreal), DC = 175–200 (mountain), DC = 250–300 (parkland/AG zone including Edmonton) to DC = 375–450 (southern Alberta: Lethbridge, Medicine Hat, Drumheller — dry winters, minimal snowpack). Van Wagner's dc = 15 (fully saturated) is not used. These cold-start values are moot during fire season when CWFIS provides live DC from the daily carry-over chain — they apply to off-season fallback and the NAEFS forecast chain.

FBP System — Forestry Canada ST-X-3 (1992)

Inputs: FFMC, DMC, DC, wind speed, user-selected fuel type. Outputs: ISI, BUI, surface ROS, BUI effect (BE), slope-adjusted ROS, surface fire intensity (SFI), crown fraction burned (CFB), total fuel consumption (TFC), head fire intensity (HFI), flame length.

Crown fire assessment uses Van Wagner (1977). Foliar moisture content (FMC) is computed seasonally via the Van Wagner (1987) DOY + latitude equation: FMC = 85 + 0.0189 × (DOY − D₀)², clamped to [85, 120]%, where D₀ is the latitude-adjusted green-up date. FMC declines from ~120% (early spring, wet foliage) toward ~85% (peak summer), reducing the Critical Surface Intensity (CSI) threshold and making crown fire initiation progressively easier through the season. CFB = 1 − e−0.23(ROS − RSO). Flame length from Byram (1959): L = 0.0775 × HFI0.46. Fuel type parameters (a, b, c, q, BUI₀, CBH, CFL, SFC) from ST-X-3 Tables 4–6.

Fuel type is auto-selected per station from the 40-station lookup table derived from the NRCan 30m fuel classification grid (see Station Fuel Type Assignments below). C2 — Boreal Spruce is the fallback when no assignment exists. User-selectable from 14 fuel types via the picker on the Home page.

NRCan SCRIBE Forecast — 48-hr Validation

The station detail page fetches NRCan's SCRIBE pre-computed FWI forecast (public:firewx_scribe_fcst) for today, +24h, and +48h at the nearest met station. Displayed as a secondary validation strip below the FWI components when valid data is available (SCRIBE activates progressively through fire season — sentinel value −101 indicates no data yet for a station). SCRIBE provides an independent NRCan model estimate against which to compare the live observed chain.

Satellite Fire Intelligence — Map Overlays

The regional map provides two toggleable live overlays from CWFIS. Active Fires (public:activefires_current): official agency-reported fire locations with name, size (ha), and stage of control; circle radius scaled by area. Hotspots 24h (public:hotspots_24h): MODIS/VIIRS/Sentinel satellite detections from the past 24 hours with pre-computed FBP outputs (HFI, ROS, fuel type). Both layers are fetched live with no API key required.

menu_book

Primary References

  • [1]Van Wagner, C.E. & Pickett, T.L. (1985). Equations and FORTRAN program for the Canadian Forest Fire Weather Index System. Forestry Technical Report 33. Canadian Forestry Service, Ottawa.
  • [2]Van Wagner, C.E. (1987). Development and structure of the Canadian Forest Fire Weather Index System. Forestry Technical Report 35. Canadian Forestry Service, Ottawa.
  • [3]Forestry Canada Fire Danger Group (1992). Development and structure of the Canadian Forest Fire Behavior Prediction System. Information Report ST-X-3. Forestry Canada, Ottawa.
  • [4]Van Wagner, C.E. (1977). Conditions for the start and spread of crown fire. Canadian Journal of Forest Research, 7(1), 23–34.
  • [5]Byram, G.M. (1959). Combustion of forest fuels. In K.P. Davis (Ed.), Forest Fire: Control and Use (pp. 61–89). McGraw-Hill.
  • [6]Zuur, E. & Förster, D. (2022–present). Open-Meteo: Free Weather API. open-meteo.com. Used for current conditions fallback (Tier 3) and 7-day forecast fallback when no NAEFS station is within 150 km. Default model (no models= parameter); models=ecmwf_ifs025 is now a premium-only endpoint and is not used. 12Z run available ~13:00 MST.
  • [7]Environment and Climate Change Canada / NOAA (2003–present). North American Ensemble Forecast System (NAEFS). Bi-daily 00Z/12Z ensemble runs; 14-day horizon. Distributed via NRCan CWFIS WFS layer public:firewx_naefs.
  • [8]Taylor, S.W.; Pike, R.G.; Alexander, M.E. (1997). Field Guide to the Canadian Forest Fire Behavior Prediction (FBP) System. Special Report 11. ISBN 0-660-17099-X. Natural Resources Canada, Canadian Forest Service, Northern Forestry Centre, Edmonton, AB. 60 p. — Primary operational field reference for HFI intensity classes 1–6, flame length scale anchors, attack mode decisions, crown fraction burned thresholds, and the caution that "fire behavior predictions are intended to assist in decision making, and are not a substitute for experience, sound judgment, or observation of actual fire behavior."
forest

All 16 CFFDRS FBP Fuel Types — ST-X-3 Parameters

Forestry Canada ST-X-3 (1992) · National Standard · User-selectable via fuel picker

The FBP System defines 16 fuel types. Selecting the correct fuel type is the single most impactful decision in a fire behaviour prediction — the same FWI can produce HFI values that differ by 10× across fuel types. Alberta defaults are C2 — Boreal Spruce (Fuel A) and D1 — Leafless Aspen (Fuel B). Parameters below are sourced directly from fwi.js → FUEL_TYPES{}.

Code Name a b c q BUI₀ CBH m CFL kg/m² SFC kg/m² Alberta Occurrence
Conifer Types
C1Spruce-Lichen Woodland900.06494.50.907220.750.75Far north boreal; open lichen-spruce; low crown fuel
C2 ★Boreal Spruce1100.02821.50.706430.800.80★ Fuel A default — dominant AB boreal: Fort McMurray, Slave Lake, High Level, Fox Creek
C3Mature Jack/Lodgepole Pine1100.04443.00.756281.151.15Rocky Mountain foothills: Banff, Jasper, Cold Lake; higher CBH than C2
C4Immature Jack/Lodgepole Pine1100.02931.50.756641.201.20Post-fire regenerating jack pine; Fort McMurray reburn areas
C5Red and White Pine300.06974.00.8056181.201.20Eastern Canada type; rarely dominant in AB. Very high CBH = crown-fire resistant.
C6Conifer Plantation300.08003.00.806271.801.80Dense planted stands; highest CFL of all types — extreme crown fire fuel load when ignited
C7Ponderosa Pine / Douglas-fir450.03052.00.85106100.500.50Rare in AB (Waterton/Crowsnest foothills); dominant BC south interior type
Deciduous Types
D1 ★Leafless Aspen300.02321.60.903200.000.35★ Fuel B default — AB parkland: Calgary, Drayton Valley, Red Deer, Valleyview. Surface fire only.
D2Green Aspen60.02321.60.903200.000.35Very low spread (a=6); green leaf moisture suppresses fire. Summer aspen stands.
Mixedwood Types (Blended ROS)
M1Boreal Mixedwood — LeaflessROS = PS% × C2_ROS + (1−PS%) × D1_ROSAB boreal transition: Edson, Slave Lake, Whitecourt, Rocky Mtn House
M2Boreal Mixedwood — GreenROS = PS% × C2_ROS + (1−PS%) × D2_ROSSame stand as M1 in summer (green hardwood suppresses spread significantly)
Grass Types (Curing-Dependent)
O1aMatted Grass1900.0311.41.00100.000.35SE AB grasslands, Peace Country, agricultural edges; curing % required — see below
O1bStanding Grass2500.0351.71.00100.000.35Lethbridge, Medicine Hat, Cardston; faster spread than O1a; extreme at 100% curing
Slash Types (Surface Fire — No Crown)
S1Jack/Lodgepole Pine Slash750.02971.30.753800.004.50Post-harvest pine cutblocks; SFC=4.50 — extremely high surface fire intensity
S2White Spruce / Balsam Slash400.04381.70.756300.004.50Post-harvest spruce/balsam fir cutblocks; slower spread than S1 but same high SFC
S3Cedar / Hemlock / DF Slash550.08293.20.753100.004.50Uncommon in AB; primarily BC coastal/cedar-hemlock type
aMaximum spread rate coefficient. Higher = faster maximum fire spread.
b, cShape of the ROS–ISI response curve. Higher c = more sensitive to wind/FFMC.
q / BUI₀BUI effect: q = fraction of max ROS at BUI=BUI₀. Low BUI₀ = BUI effect kicks in early.
CBH (m)Crown base height. Low CBH = crown fire at lower surface intensity. C2 at 3m is very crown-fire prone.
SFC (kg/m²)Surface fuel consumption. Slash types (S1–S3) at 4.50 — 6× higher than most forest types. Drives HFI.

C2 vs D1 — The Two Alberta Defaults

C2 (boreal spruce, CBH=3m) and D1 (leafless aspen, CBH=0) behave very differently. C2 initiates crown fire at low surface intensity due to its low crown base — in the boreal, continuous crown fire is common at FWI ≥ 20. D1 cannot crown (CFL=0) — it is a surface-fire-only type regardless of FWI. The pairing is operationally useful: C2 shows worst-case boreal crown fire behaviour while D1 shows the surface-only parkland scenario for the same weather.

M1/M2 — Mixedwood Blending (PS% Parameter)

M1/M2 do not have their own a/b/c coefficients. ROS is a weighted blend: ROS = PS% × ROS_C2 + (1−PS%) × ROS_D1/D2, where PS% is the percent softwood by crown volume. At PS=100% M1 behaves like C2; at PS=0% it behaves like D1. Typical AB mixedwood transition zones run PS=40–60%. M2 (green aspen hardwood component) spreads significantly slower in summer.

O1a/O1b — Grass Curing Controls Everything

Curing percent is the dominant driver for grass types — more influential than wind speed or FFMC. The FBP system applies a Curing Factor (CF): CF = 0.005 × (e^(0.061×PC) − 1). At 60%, CF≈0.19 (marginal spread); at 80%, CF≈0.51; at 100%, CF≈2.22 (ISI amplified 2.2×). O1b (standing, a=250) spreads faster than O1a (matted, a=190). Southern Alberta grasslands reach 90–100% curing by August. Use the curing slider on the station detail page.

forest

Station Fuel Type Assignments

Source: CWFIS cffdrs_fbp_fuel_types WMS · NRCan 30m · Sampled Apr 2026

Dominant FBP fuel type within 5 km of each CWFIS station coordinate, derived from the NRCan national 30m fuel classification grid. M1/M2 mixedwood mapped to C2. Northern boreal airport stations where the grid returned agricultural grass were corrected to regional forest type. All assignments are overridable via the fuel picker.

StationFuelType NameSource
AthabascaC2Boreal SpruceCorrected (boreal)
BanffC3Mature Jack/Lodgepole PineWMS ✓
BonnyvilleO1aMatted GrassWMS — agricultural
BrooksO1aMatted GrassWMS ✓ SE grassland
CalgaryD1Leafless AspenWMS ✓ parkland
CamroseO1aMatted GrassWMS — agricultural
CardstonO1aMatted GrassWMS ✓ SW grassland
ClaresholmO1aMatted GrassWMS ✓ foothills
Cold LakeC3Mature Jack PineWMS ✓
Drayton ValleyD1Leafless AspenWMS ✓ parkland
DrumhellerO1aMatted GrassWMS ✓ badlands
EdmontonD2Green AspenYEG airport; D2 for WUI context
Edmonton BlatchfordD2Green AspenNorth Edmonton WUI context
EdsonC2Boreal SpruceM1→C2 mixedwood
Fort ChipewyanC2Boreal SpruceWMS ✓ N. boreal
Fort McMurrayC4Immature Jack/Lodgepole PineWMS ✓ post-2016 reburn
Fort VermilionC2Boreal SpruceCorrected (N. boreal)
Fox CreekC2Boreal SpruceWMS ✓
Grande CacheC2Boreal SpruceWMS ✓
Grande PrairieO1aMatted GrassWMS ✓ Peace Country
High LevelC2Boreal SpruceWMS ✓ N. boreal
High PrairieD2Green AspenCorrected (boreal transition)
HintonC2Boreal SpruceWMS ✓
JasperC3Mature Jack/Lodgepole PineWMS ✓ Rocky Mountain
Lac La BicheD1Leafless AspenWMS ✓
LethbridgeO1aMatted GrassWMS ✓ grassland
LloydminsterO1aMatted GrassWMS — agricultural
ManningC2Boreal SpruceCorrected (boreal)
Medicine HatO1aMatted GrassWMS ✓ SE grassland
Peace RiverD2Green AspenCorrected (Peace transition)
Pincher CreekO1aMatted GrassWMS ✓ foothills
Red DeerD1Leafless AspenWMS ✓ parkland
Rocky Mtn HouseC2Boreal SpruceM1→C2 mixedwood foothills
Slave LakeC2Boreal SpruceM1→C2 Lesser Slave
StettlerO1aMatted GrassWMS — agricultural
ValleyviewD1Leafless AspenWMS ✓ Peace Country
VegrevilleO1aMatted GrassWMS — agricultural
WabascaC2Boreal SpruceM1→C2 boreal mixedwood
WetaskiwinO1aMatted GrassWMS — agricultural
WhitecourtC2Boreal SpruceM1→C2 boreal mixedwood
cell_tower

Data Sources & Station Network

Three-tier live data hierarchy · 39 Alberta reporting zones

Each of the 39 reporting zones queries three data sources in priority order. The first that returns valid temperature, humidity, and wind data wins. The source badge shown in every popup and table row tells you which tier was used.

CWFIS
Tier 1 — NRCan Fire Weather Station Network

NRCan firewx_stns_current WFS layer. Certified fire weather stations operated by NRCan and provincial services, typically co-located at airports or forestry offices. Searched within ±2° (~220 km) of the reporting zone; nearest station with valid obs selected. When active (approx. Apr–Oct), returns the pre-computed daily FWI carry-over chain — FFMC, DMC, DC, ISI, BUI, and FWI from NRCan's official calculation using yesterday's codes as startup values. This is the operationally authoritative source. Many stations go dormant in winter; the query returns null and falls through to Tier 2.

SWOB
Tier 2 — MSC Surface Weather Observations

Environment and Climate Change Canada swob-realtime API. All-year real sensor data from airports, climate reference stations, and AgriMet sites. Searched within ±1.5° (~165 km), past 3-hour window; nearest station with valid T/RH/wind selected. Preferentially uses noon LST observation (19:00 UTC ±1 hr) to align with CFFDRS calculation timing — if no noon obs is found in the window, falls back to most recent. FWI codes are not pre-computed — Van Wagner equations are applied live against spring startup constants or the last known carry-over. Good coverage across southern and central Alberta (airports are dense); sparser in the deep boreal north.

NWP
Tier 3 — Open-Meteo Numerical Weather Prediction

Open-Meteo ECMWF IFS 0.25° model, targeting noon LST (19:00 UTC) — the standard CFFDRS observation time. Used when both CWFIS and SWOB fail (station offline, outside search radius, or data gap). NWP interpolates grid-point model output to the exact coordinate; it captures synoptic patterns but misses valley inversions, terrain channelling, and local lake/urban influence. FWI chain uses startup constants. Zones in remote or mountainous areas most commonly fall back here. Identified in the popup by the amber NWP badge.

Km Offset — What It Means

The popup shows "X km offset" — the distance between the reporting zone's nominal coordinate and the physical station that actually provided the data. A 0 km offset means the data came from a station at essentially the same location. A large offset (e.g. 37 km for Wetaskiwin → Camrose SWOB) means local micro-climate effects may differ. For operational use, verify the source station name is plausible for your zone of interest.

Coverage Patterns

CWFIS stations concentrate in the forested boreal and foothills — where wildfire risk is highest. Southern agricultural zones (Lethbridge, Brooks, Camrose, Stettler, Vegreville) typically report via SWOB from the nearest airport. Urban zones (Edmonton, Calgary) now target the main international airport coordinate for reliable all-season SWOB coverage. Off-season (Nov–Mar) most zones fall to SWOB or NWP as CWFIS dormant stations return null.

40 Reporting Zones — Nominal Coordinates

These are the search origin coordinates used to query the data hierarchy above — not necessarily the location of the physical station that responds. The actual station name and its true coordinates are returned in the API response and shown in the popup.

Zone Sector Search Origin Notes
High LevelFar North58.517, -117.133Near CYOH airport — CWFIS/SWOB active
Fort ChipewyanFar North58.767, -111.117Near CYFH — remote; CWFIS in-season
Fort VermilionFar North58.383, -116.017Near CYFV — CWFIS/SWOB
ManningFar North56.917, -117.617CWFIS in-season; NWP off-season
Peace RiverNorth56.233, -117.283Near CYPE — CWFIS/SWOB
WabascaNorth55.967, -113.833Remote boreal; CWFIS primary
Fort McMurrayNorth56.650, -111.217Near CYMM — strong CWFIS/SWOB
Grande PrairieNorth55.167, -118.883Near CYQU — reliable SWOB year-round
High PrairieNorth55.433, -116.483CWFIS in-season; SWOB fallback
Slave LakeNorth55.283, -114.767Near CYZH — CWFIS/SWOB
ValleyviewNorth55.083, -117.283CWFIS in-season; NWP off-season
AthabascaCentral-N54.717, -113.283Near CYAH — CWFIS/SWOB
Lac La BicheCentral-N54.767, -111.967Near CYLB — CWFIS/SWOB
BonnyvilleCentral-N54.267, -110.733SWOB primary (ag zone)
Cold LakeCentral-N54.417, -110.283Near CYOD (CFB) — strong SWOB
Fox CreekCentral-N54.400, -116.800CWFIS in-season; NWP off-season
WhitecourtCentral-N54.150, -115.683Near CYZU — CWFIS/SWOB
EdsonCentral53.583, -116.433Near CYET — CWFIS/SWOB
HintonCentral53.400, -117.567CWFIS in-season; NWP off-season
Grande CacheCentral53.883, -118.433Shifted east toward Hinton SWOB corridor
EdmontonCentral53.309, -113.580CYEG Intl Airport — SWOB year-round
Edmonton BlatchfordCentral53.572, -113.521North Edmonton — nearest available SWOB
VegrevilleCentral53.500, -112.050SWOB from nearest ag/airport station
LloydminsterCentral53.283, -110.000Near CYLL — SWOB year-round
Drayton ValleyCentral53.217, -114.983CWFIS in-season; SWOB fallback
JasperCentral-S52.867, -118.083Near CYJA — CWFIS/SWOB
CamroseCentral53.017, -112.833Near CYCX — SWOB year-round
WetaskiwinCentral52.967, -113.367Ag zone — SWOB from Camrose/Lacombe area
Rocky Mtn HouseCentral-S52.367, -114.917Near CYRM — CWFIS/SWOB
StettlerCentral-S52.317, -112.717Ag zone — SWOB; CWFIS rare
Red DeerCentral-S52.267, -113.800Near CYQF — strong SWOB year-round
DrumhellerSouth51.467, -112.717Ag/badlands — SWOB from nearest airport
CalgarySouth51.050, -114.067Near CYYC — strong SWOB year-round
BanffSouth51.183, -115.567Near CXBF — CWFIS/SWOB; terrain effects
BrooksSouth50.567, -111.900Near CYBR — SWOB year-round
ClaresholmSouth50.017, -113.583Foothills — SWOB from nearest airport
Medicine HatSouth50.033, -110.683Near CYXH — strong SWOB year-round
Pincher CreekSouth49.483, -113.950Foothills — CWFIS in-season
LethbridgeSouth49.700, -112.833Near CYQL — strong SWOB year-round
CardstonSouth49.200, -113.300Near CZCD — SWOB; near US border
layers

Reading the Live Map

Bicolor pill markers · Cluster bubbles · Popup detail

Bicolor Pill Markers

Each station is shown as a split pill. The left half encodes the FWI Danger class; the right half encodes the HFI Byram intensity class. Both indices can differ for the same observation — a dry but calm day may have High FWI but only Moderate HFI, while a windy day in dense fuel may show both extreme.

Left Half — FWI Danger

Low — FWI 0–8
Moderate — FWI 9–17
High — FWI 18–32
Very High — FWI 33–49
Extreme — FWI ≥ 50

Right Half — HFI Byram Class

1 — Low — HFI < 10 kW/m
2 — Moderate — HFI 10–500 kW/m
3 — High — HFI 500–2,000 kW/m
4 — Very High — HFI 2,000–4,000 kW/m
5 — Extreme — HFI 4,000–10,000 kW/m
6 — Catastrophic — HFI ≥ 10,000 kW/m

Marker Shape — Data Source

Square — CWFIS fire weather network (AB) / BCWS Datamart (BC)
Rounded rect — MSC SWOB real sensor observations
Pill — Open-Meteo NWP model output

Cluster Bubble

At provincial zoom (≤ 6), stations too close to display separately collapse into a dark-blue numbered circle. The number is the station count. Click to spiderfy and see individual pills. Clustering dissolves automatically at zoom 7+.

Loading State

A gray pill means the data fetch for that station is still in progress. All 39 stations load concurrently; most resolve within 2–4 seconds. If a station stays gray, it failed silently and its popup will show no data.

Zoom & Size

Pills scale with zoom: small at provincial (zoom ≤ 5), medium at regional (zoom 6–7), large at municipal (zoom ≥ 8). Labels for FWI value and HFI class word become readable at medium and large sizes.

Station Popup

Click any pill to open a detail popup. It shows: the zone name and the actual source station name (e.g. Fort McMurray A), coordinates and km offset from the zone search origin, the data tier badge (CWFIS / SWOB / NWP), the observation timestamp, and the full FWI + HFI grid. When FWI was calculated using Van Wagner equations (SWOB/NWP tier), a Carry-over line shows the CWFIS station and date whose FFMC/DMC/DC values seeded the calculation — improving accuracy at the shoulder of fire season.

warning

Operational Limitations

Read Before Use in Operations

  • Carry-over chain — in-season: When CWFIS provides FWI codes (approx. Apr–Oct), NRCan's daily carry-over chain is used as-is — FFMC, DMC, and DC reflect accumulated drying from previous days. This is operationally accurate.
  • Spring DC underinitialization — CWFIS airport stations: Many MSC airport stations in CWFIS use DC=15 at season open — the 1985 Van Wagner "no prior data" fallback — instead of the Lawson & Armitage (2008) overwinter carryover equation. This causes DC to be systematically too low at spring season open. For example, Edmonton Blatchford opens near DC=162 while properly-initialized stations in the same city (Edmonton International CS) show DC=296+. Pyra corrects this with a regional DC floor (getRegionalDCFloor): coordinate-based spring minimums calibrated from April 2026 CWFIS well-initialized station data and Alberta Wildfire's AEF pmwx.csv network (which uses proper overwinter initialization). The floor is applied only March–June and only when the raw station value is below 70% of the zone floor. Edmonton zone floor: 250. SE prairies (Lethbridge/Medicine Hat): 450. Once the live chain accumulates past the floor naturally, the correction becomes a no-op.
  • No carry-over — off-season: Outside fire season, CWFIS FWI codes are null. Van Wagner equations run against spring startup constants (FFMC 85, DMC 6, DC 300). Mid-season DC is systematically underestimated if the chain was not seeded from a prior day's values.
  • CWFIS physical sensor (primary): In-season, weather and FWI codes come from the nearest certified NRCan/MSC fire weather station — not NWP interpolation. Nearest station name and distance are shown in the UI. Micro-climate effects within the sensor footprint still apply.
  • NWP fallback (off-season / no station): When CWFIS has no station within ±2° or fails to respond, Open-Meteo NWP is used. NWP interpolates model output at the coordinate; valley inversions, terrain channelling, and lake influence are absent.
  • Wind direction — displayed, not applied to FBP: Wind direction (°) is sourced from CWFIS (wdir) and Open-Meteo (wind_direction_10m) and shown on the station card. FBP outputs still assume head-fire conditions — ROS and HFI reflect the worst-case spread direction at observed wind speed.
  • No slope aspect: FBP slope factor uses 0% for all stations. Actual HFI on slopes may be up to 2× higher (Butler 2007 cap). Mountain stations (Banff, Jasper, Hinton) are most affected.
  • Fuel type auto-assigned from NRCan 30m grid, user-overridable: Each station is pre-assigned a dominant FBP fuel type derived from the CWFIS cffdrs_fbp_fuel_types WMS layer (NRCan national 30m grid, Apr 2026). Method: modal fuel type within 5 km radius of each station coordinate. M1/M2 mixedwood codes mapped to C2 (boreal spruce dominant). Northern boreal airport stations where the sampled pixel returned agricultural grass were corrected to regional forest type. The fuel picker on the Home tab shows the derived type and can be overridden for any scenario.
  • Situational awareness only: Suppression resource decisions require certified CWFIS station observations and interpretation by a qualified Fire Behaviour Analyst (FBA).
abstract fire weather background
ALBERTA
STANDARDS

About Pyra

Pyra is an open-source wildfire weather tool built for operational use by wildland firefighters, fire behaviour analysts, and emergency managers. It integrates live fire weather observations from the Canadian Wildland Fire Information System (CWFIS) with NRCan's Canadian Forest Fire Danger Rating System (CFFDRS) — combining real-time FWI codes from the operational carry-over chain with FBP System fire behaviour predictions across standard fuel types. Weather data flows through a three-tier hierarchy: CWFIS fire weather stations (pre-computed FWI chain), MSC SWOB real-sensor observations, and ECMWF IFS numerical forecast as a last resort. Station coverage includes Alberta (39 stations) and British Columbia (260+ stations grouped by Fire Centre). Built by Travis Kennedy, Claude, and Glenn. Free, open, no login required.