Ice Metrics — Reading the dashboard & understanding the data
Index Page Overview
The main page (index.php) is a grid of cards — one per tracked crag. Each card is a quick snapshot of current ice conditions, updated automatically by a background process roughly every hour.
Cards are sorted by default in the order crags were added to the system. You can reorder them using the search box or the "Sort by distance" dropdown at the top right. Clicking any card opens the full detail page for that crag.
The card color is driven by Ice Mass (0–100) — a number that represents how much ice has accumulated at a crag, modeled from temperature, precipitation, and history. It is not the temperature, not the trend, and not the brittle/delam flags. Those are separate indicators.
Card Color Coding
The card header background smoothly transitions through a gradient based on Ice Mass. The color bands below are the general reference — cards between thresholds will show an interpolated shade.
Color
Level Label
Ice Mass (approx)
What it means
Grey
No ice / None
Very low (e.g. <10–20)
No meaningful ice at this location right now.
Red
Low / not climbable
Low (e.g. 20–50)
Ice is forming but thin and not safe to climb.
Yellow
Climbable but thin
Mid-range (e.g. 50–75)
Climbable with care — ice exists but is thin in spots.
Green
Climbable / good
High (e.g. 75–90)
Good ice — solid and climbable.
Teal
Prime / fat
Very high (e.g. 90–100)
Peak conditions — fat, well-formed ice.
Note on thresholds: Each crag has its own band thresholds tuned to its character. A mass of 70 might be "Good" at one crag and "Thin" at another. The color and label always reflect that crag's own calibration — so comparing raw mass numbers across crags is less useful than comparing the label.
Status Icons
Each card header shows a small cluster of icons in the top-right corner. Hover over any icon on the live site for a tooltip. Here's what each one means:
Climbability Icon (leftmost)
Icon
Meaning
Level
✓
Good or Prime ice — go for it
PrimeGood
!
Climbable but thin — use caution
Thin
✕
Not climbable — ice is too low / forming
Low
⛔
No ice at this location
No ice
Trend Icon
Icon
Meaning
↗
Improving — Ice mass has been rising over the last 72 hours. Building.
≈
Holding — Ice mass is roughly stable. Not growing significantly, not melting fast.
↘
Weakening — Ice mass has been falling over the last 72 hours. Shrinking.
Trend does not change the card color. A card can be green (good ice) with a ↘ weakening trend — meaning conditions are good now but declining. Always check both the color and the trend together.
Warning Flags (optional — only shown when triggered)
Icon
Flag
What it means
❄
Brittle
Thick ice + sustained deep cold = brittle, glassy ice with higher shatter risk. More prone to dinner-plating and fracturing. Still climbable, but expect different ice behaviour.
⚠
Delam risk
Thick ice that recently went through a thaw/wet cycle and has refrozen. The outer layer may be hollow or delaminated — looks fat but can detach in big plates. Extra caution near the base.
Card Fields
Below the header, each card shows a line of text and a row of metric pills. Here's a reference for everything you might see.
A plain-English description of the current ice quality based on Ice Mass.
Examples: Prime / fatClimbable / goodClimbable but thinLow / not climbableNo ice
Mass (0–100)
The modeled ice accumulation score. Carries build-up forward across days based on temperature, precipitation, thaw history, and crag-specific tuning. 100 = fully built out for this crag's calibration; 0 = nothing.
Examples: mass 44/100, mass 82/100, mass 100/100
Builder
Whether current conditions look like a true ice-growth window. Combines temperature, water flow potential, and recent thaw hours.
Yes — Cold enough, flow present, minimal thaw. Active building window. Maybe — Marginally cold, possible light building but not a strong session. No — Too warm, too much thaw, or flow too low to build.
FDH 24h
Freeze Degree Hours over the last 24 hours. Calculated as the sum of (how many degrees below 0°C) × (hours at that temperature). Higher = colder for longer = stronger freeze potential.
Same as FDH 24h but over the past 72 hours. Gives a picture of how sustained the cold spell has been. A high FDH 72h with a low FDH 24h means it was cold earlier but is warming now.
Hours spent above 0°C in the last 48 hours. Even brief thaw periods weaken ice and reduce the build rate. More hours = more melt risk.
Examples: Thaw 48h: 0 h (none — ideal), Thaw 48h: 6 h (some), Thaw 48h: 20 h (significant melt risk)
WetUF 24h
Wet above-freezing precipitation in the last 24 hours — rain or sleet that fell while temps were above 0°C. This is the dangerous combination: warm + wet directly attacks ice and creates delamination risk when it refreezes.
Examples: WetUF 24h: 0.0 mm (none — ideal), WetUF 24h: 2.4 mm (some weakening), WetUF 24h: 12.0 mm (heavy warm rain — serious damage)
Updated
Timestamp of the last data run for this crag. Data is refreshed roughly every hour.
Example: Updated: 2026-02-22 12:00
Search & Sort
Search box
The search box in the top-right filters and re-orders cards in real time as you type. It matches against a crag's full text profile including:
Display name — e.g. "Night N Gale", "Oregon Jack"
Slug — the internal ID (e.g. bridgerivernight)
Crag name / full breadcrumb — e.g. "Canada, BC, Lillooet, Bridge River Valley"
Region — e.g. "Squamish", "Sea to Sky", "Yoho"
Area tags — sub-region tags like "Cayoosh", "Fraser Valley", "Bow Valley"
Aliases — alternate names like "OJ" for Oregon Jack, "AST" for A Scottish Tale
Type — e.g. "waterfall", "alpine", "gully", "mixed"
Exposure — "shaded", "partial_sun", "open_sun"
Province / country — e.g. "BC", "Alberta"
Multi-word search works by scoring cards: an exact phrase match scores highest, followed by cards matching all terms, then partial matches. Non-matching cards are hidden. The best matches float to the top.
The dropdown lets you pick any crag as a reference point. All cards then sort from nearest to farthest based on straight-line (as-the-crow-flies) distance using GPS coordinates. Useful for planning a trip from a known area.
If you search and sort by distance at the same time, search relevance takes priority. Distance is used as a tiebreaker between equally-scored cards.
Crag Detail Page
Clicking any card on the index opens the full detail page for that crag. These pages show the complete picture: recent weather history, multi-day forecast, ice model output, charts, and field observations.
The page is divided into named sections. Here's a map of what appears and in what order:
Crag Info — location, coordinates, type, exposure, map links
Quick Take — headline status, flags, and key metrics
The first panel on every detail page. Shows location metadata and quick-access map links.
Crag Info
Canada, BC, Cariboo, Lillooet, Bridge River Valley | Night N' Gale
Canada · British Columbia · Lillooet · Bridge River Valley
Elev: 820 mGPS: 50.813090, -122.068800Waterfall IcePartial Sun Exposure
Google EarthGoogle Maps
Type
The ice formation type, which affects how the model weights building and melting.
Waterfall Ice — vertical or near-vertical frozen waterfall Gully / Flow — gully or drainage ice, often wider and lower-angle Alpine Ice — high-elevation glacier or permanent snow/ice feature Mixed / Smears — smears, mixed rock-and-ice, or ephemeral flows
Exposure
How much direct sun the formation receives. Affects solar melt multipliers in the model.
Shaded — rarely sees direct sun; slow to melt Partial Sun Exposure — gets some sun during part of the day Open Sun Exposure — fully exposed; melts faster in warm spells
Quick Take Panel
The headline summary of current ice conditions. Colored by the same mass-based gradient as the index card.
This panel mirrors the index card data but adds one extra field:
SnowP24
Snow precipitation in the last 24 hours (mm liquid equivalent). Only shown when > 0. Snow adds to the ice build rate; dry cold nights show 0 here but can still build strongly.
Examples: SnowP24: 0.3 mm, SnowP24: 12.8 mm. Not shown when 0.
The Quick Take also shows the current weather symbol (top-right of the panel) for the live forecast hour, and a brief text sentence describing the condition and trend. If brittle or delam flags are active, an extra sentence is added here.
7 Day Summary Tables
There are two 7-day tables on each detail page — one looking back (history), one looking ahead (forecast). They share the same structure.
Previous 7 Day Summary — Each day is colored by modeled ice mass based on the logged hourly history. Icons show the modeled direction that day.
7 Day Forecast Summary — Each day is colored by predicted ice mass from the forecast. Icons show the predicted direction.
What each column shows
Day header
Day name + date. Colored by that day's modeled ice mass — same color scale as the cards (grey → red → yellow → green → teal).
Example: Mon Feb 22 with a green background = good ice modeled for that day.
Weather icons
Two icons per day: daytime and nighttime average weather symbol.
☀️ sunny day, 🌙 clear night, 🌨 snow, 🌧 rain, ☁️ cloudy, etc. A null/blank icon means no forecast data for that period.
Status icons
The same climbability (✓/!/✕/⛔), trend (↗/≈/↘), brittle (❄), delam (⚠), and snowload icons as on the card — but for that specific day.
Outlook row
Below the icons: level text, trend direction, average temperature for the day, and total precipitation.
Example: Climbable / good · Trend: improving · −11.7°C avg · 0.0 mm
Snowload flag (❄ on a day tile): When snow precipitation is significant for that day. Separate from the brittle flag — this means there's active snowfall loading, not necessarily glassy ice.
Charts
Two charts appear on every crag page — one for observed (past) data and one for forecast (future) data. Both have the same axis layout.
Axes
Left axis — Temperature in °C (negative = below freezing)
Right axis — FDH per hour and Ice Index (0–100 scale for ice; bar scale for precip)
X axis — Time (hourly)
Observed chart — dataset legend
Temp (°C)
FDH (per hour)
Precip (mm/h)
Shows the recorded weather at the crag over the last 14 days (or configured observation window).
Forecast chart — dataset legend
Temp (°C)
FDH (per hour)
Precip (mm/h)
Ice Index (Conservative)
Ice Index (Wishful)
Conservative vs Wishful Ice Index:
The forecast chart shows two ice model projections.
Conservative (solid green) — Uses stricter build thresholds. Assumes less favorable water flow. The "wait and see" number.
Wishful (dashed purple) — Uses looser thresholds and assumes good water flow. The optimistic ceiling — conditions would need to cooperate perfectly to hit this.
Reality usually falls somewhere between the two lines.
Field Observations
Anyone can submit a field observation. These are community reports from people who have actually visited a crag and seen the conditions in person. They appear in the "Recent observations" table below the form.
Submitting an observation
Submit a field observation
Date
02/22/2026
Ice score
0 – No ice ▾
Trend
Growing ▾
Notes (optional)
What did you see? (ice thickness, water flow, approach, hazards, etc.)
Ice score options
0 – No ice · 1 – Thin / not climbable · 2 – Forming / mixed · 3 – Climbable / good · 4 – Prime / fat
Trend options
Growing · Stable · Shrinking
Reading recent observations
DATE
SCORE
TREND
NOTE
SUBMITTED
2026-02-08
1 (Thin / not climbable)
Stable
Barely
2026-02-08 08:06:54
Observations are submitted by users who visited the crag. They supplement the model — always cross-reference model data with the latest human report when available.
Hourly Data Tables
At the bottom of each detail page are two collapsible tables: one for forecast data (next 9 days, hourly) and one for observed data (last 14 days, hourly). Click the "Show hourly table" toggle to expand either one.
Table columns
Column
What it is
Example values
Time
Hour timestamp (local time)
2026-02-22 13:00
Temp
Air temperature at the crag elevation (°C), lapse-corrected from met station
−6.2°C, 1.4°C
Cloud
Cloud cover percentage
0%, 65%, 100%
Pressure
Atmospheric pressure (hPa)
1018 hPa
Precip
Precipitation rate for that hour (mm)
0.0, 0.5, 3.2
Symbol
Weather icon for that hour
☀️ 🌨 🌧 ☁️
FDH 24h
Freeze Degree Hours accumulated in the 24h window ending at that hour
0, 87, 312
FDH 72h
Freeze Degree Hours in the 72h window ending at that hour
0, 410, 850
Thaw 48h
Hours above 0°C in the 48h window ending at that hour
0, 8, 22
WetUF 24h
Warm/wet precipitation in the 24h window ending at that hour (mm)
0.0, 4.1
Builder
Build window badge for that hour — Conservative (C) and/or Wishful (W)
C W, W, blank
Ice (Cons)
Conservative ice model score at that hour (0–100)
0, 44, 87
Ice (Wish)
Wishful ice model score at that hour (0–100)
0, 61, 100
Rows highlighted in green are "builder" hours — conditions where the model calculates meaningful ice growth is occurring. Conservative builder rows are a lighter green; Wishful builder rows may be slightly brighter.
Observed vs Forecast tables: The observed table runs newest to oldest. The forecast table runs chronologically forward from now. Both tables can be very long — scroll horizontally on mobile if columns are cut off.