SendTrain

About SendTrain

Conditions are everything for those of us who climb on southern sandstone. And, for those of us who have to spend 6 hours in the car to reach the crag, it's disappointing when the weather doesn't live up to expectations. It's even more disappointing when you call off a trip because of a dreary forecast only to hear from your friends that the Red was flawless all day on Saturday.

SendTrain is my attempt to get better at modeling the interplay of weather and rock.

Reading the page

The map

One bubble per major climbing area, colored by the day's call for that crag's typical wall: currently modeled as vertical everywhere except the Red, where it defaults to 10° overhanging.1 Bubble size corresponds to the number of routes within an area. Neighboring crags cluster when zoomed out: the cluster's ring shows their mix of conditions and the number says how many crags it holds. A dashed blue ring means the four weather forecast models disagree about rain that day. Pick a day above the map; hover over a crag (or tap it) for more info, and click it for the detailed views below. The map is refreshed every four hours.

Detailed views

The date

Choose a start date in a crag's view. Recent days and the next two weeks use the Open-Meteo forecast; anything older than about three months comes from the ERA5 reanalysis, back to 2000. In the US, past rain is scaled to radar totals; forecast rain is the median of four weather models. The model always runs 60 days before the first day shown, so seeps and rock temperature start from the real history.

The daily call and its components

One word for the day: the worst condition that lasts 3 or more hours between 9am and 5pm. A damp morning that dries by 11 does not sink the day. Mouse over the "i" bubbles for more on specific parts of the forecast, but the tl;dr is that the model looks at the weather over the past 60 days and uses it to model four main components: water on the face from precipitation, seepage from water soaked into the rock and the ground above it, rock condensation from rock temperature and moisture in the air (the shower mirror effect), and rock/air temperature as it relates to climber comfort and friction under your shoes.

Hour by hour breakdown

Rock is the thick line, air the thin grey line, dew point2 the dashed line. The shaded gap between rock and dew point is your friction margin. It turns purple when the rock drops to the dew point or below. Blue bars are rain. The row of squares above the chart gives each hour's state, the rock temperature and the margin above the dew point (°F).

The states, worst first

State Meaning
Snow Snow falling at the crag.
Rain Raining on or near the crag.
Wet rock Water film on the face from rain that has not dried yet.
Sweating Rock at or below the dew point: water condensing on it. Mostly warm humid air arriving on cold rock.
Damp Last of the water drying off. Fine on some routes, slick on small holds.
Hot Air at 85°F or more.
Warm Air 75–84°F: friction fading.
Freezing Air below 32°F at the crag.
Muggy Air dew point 60°F or higher (humid crags only).
Good Dry rock, reasonable margin.
Prime Humid crags: dew point 40°F or lower, dry rock well above it, rock 40–70°F. Dry crags: air 55–72°F, dry rock.

Your wall

Everything in a crag's view is computed for the wall you describe using the sliders below the hourly chart. Angle sets how much rain the face catches (none past 100°, a few percent on vertical rock from runoff above, more toward slabs), how much sky it sees (clear nights cool it and can make it sweat the next morning) and whether sun can reach it. Facing and sun exposure matter only when direct sun gets through. "Rock in view" and "forest air" set how much the face is held near the temperature of the rock around it and how much cooler the crag air is than the forecast.

The defaults are seasonal. For example, under eastern hardwood forest the sun default follows the leaves (about 70% with them off, 30% with them on), changing later the further north you go. Elsewhere the default is a constant. Past 100° the rock is modeled as never seeing direct sun.

What's behind all of this

As I said up top, the goal is to beat pure weather forecasts for identifying good climbing days.

I've gone through several iterations of this using a large publicly available dataset of climber performance and conditions reports. I started out by creating a random forest model looking at fall/redpoint/flash/onsight rates across grade ranges but discovered that was so overwhelmingly dictated by individual climber skill that the best I could say was "experienced climbers chose to climb on this day" (which has value of its own).

After beating my head against the wall, I decided to look at tick comments rather than the objective measure of send/fall/grade. It's 2026 and compute is underpriced, so I used an LLM to help read about 10 million ticks on 110,000 routes. About 3.5 million had comments; a keyword search flagged about 250,000 that might be about conditions, the LLM sorted those, and about 120,000 really were: hot, sweaty, seeping, wet, runoff, crispy, dry, grippy, etc. More than enough to tune a model and check it against actual climbing performance (even mutant strong climbers aren't typically sending 5.13 when the rock is wet).

Across all crags, we're factoring in:
* Climber self-reports of conditions, used to check the model (not as an input).
* Climate: each crag is classed humid or dry from its summer dew point. That changes what counts as prime (dew point at humid crags, air temperature at dry ones) and how fast seeps dry out.
* Weather from seven datasets: four forecast models, the ERA5 reanalysis for history, and two radar rainfall products in the US (details below). Radar rain is especially useful where storms are very local, like summer thunderstorms and the mountains.
* A generic rock temperature model: an hourly heat balance of a sandstone face (sun, sky, wind, evaporation and heat soaking into 6 m of rock), set for each crag's climate.
* Rock type isn't an input (yet). Every crag uses sandstone-like thermal properties and one set of water settings, tuned at the Gunks. Those held up across the continent without per-crag tuning, and there's no good crag-by-crag data on how porous or conductive the rock is. It's on the list.

In the Red, where I started because it's where I climb, the model is more refined. I'll be slowly rolling this out to other areas as my poor little home server churns through public datasets. So far that's included:

V2 of this will attempt to get down to a more granular level. I'd love to have things configured to let you click an individual cliff on a map, factor in its direction/topography/microclimate and spit out a conditions report. That's all doable, so stay tuned!

How well does it perform?

What it does well: say when rock is wet, drying or seeping, which matches what climbers report better than rain totals do; wet rock reported days after rain follows its seep water, not the rain. Radar rainfall makes those calls better still, most of all in summer thunderstorms. Sweating rock is flagged when the modeled rock falls to the dew point. Rock temperature and air temperature drive comfort and help dictate when climbers are happy.

What it does not do: move the odds of a send much. Measured against the same grade on clear days, bad days cost a few points mainly on the hardest routes. Most of what makes a day "sendy" shows up as the season (cool, dry fall), which surfaces in the model through temperature and dew point. Finally, it's difficult to tease out causal relationships between sending and falling because the most consistent strong climbers are usually smart enough to stay off hard climbs when the weather sucks.

Sources and methods

Weather

The rock model

The heat balance follows established models of rock-wall temperature from permafrost research, mainly TEBAL (Gruber et al. 2004) and CryoGrid applied to steep rock walls (Schmidt et al. 2021, The Cryosphere 15:2491). It includes sun with terrain shading, sky and terrain longwave radiation, convection, evaporation and condensation, and heat flow through 16 layers of rock down to 6 m. The bottom layer follows the area's annual temperature cycle, fitted from 26 years of ERA5. Other pieces:
- Sandstone thermal properties (albedo 0.2–0.35, emissivity ~0.93, conductivity 1.5–3.5 W/m/K) come from the rock-weathering literature. At the Red, the infrared readings pushed conductivity up to 5.5.
- How much cooler and steadier the air is under forest canopy than in the open comes from De Frenne et al. 2019 (Nature Ecology & Evolution, 714 paired sites).
- How much wind reaches a sheltered face comes from the wind adjustment factors used in fire-behavior modeling (Andrews 2012, USFS RMRS-GTR-266).
- For sanity checks on measured cliff temperatures: Hasler et al. 2011 (The Cryosphere 5:977) and Gage et al. 2024 (Niagara dolostone).
- Water on the face is a thin film filled by rain (scaled by how much the wall catches) and emptied by evaporation, with runoff above a set maximum. Seeps are a slower store that fills from heavy rain and snowmelt and drains back onto the face over the following days to weeks.

Field data at the Red

Climber reports and sends

Limits, Disclosures, Ethics

Model Limits

One weather grid point per area, so a storm cell over one wall and not the next is missed. Past rain uses radar daily totals (US only), so its timing within a day is spread like the weather model's. Seep amounts are set per area by hand, and which routes seep is not modeled. Rock temperatures have been checked with an infrared thermometer at the Red only. The map uses each crag's typical wall; your wall can differ a lot.

Disclosures

I used a lot of Claude Code for this. Parts of it are sloppy. I didn't consult any actual rock conditions experts, meteorologists, pro climbers, statisticians or ML experts. No shit.

On the flip side, I've got more than 20 years of experience in GIS, 12 years of climbing (only 300 people have logged more ticks than me!), and 15 years of working with large healthcare datasets doing kinda samesies types of models.

Ethics

The people who recorded their ticks on a publicly available website did the hard work here. Its public pages made this possible: I spent the equivalent of roughly 5,000 human hours (about two and a half working years) reading that data and taking notes. I want to acknowledge that. Open access to data is awesome and great for everyone.


  1. Expect that to change: I'm working on methods to refine the steep vs. slabby modeling. ↩

  2. Everyone gets hung up on relative humidity, but relative humidity is relatively useless, both as a measure of comfort and as a factor in climbing conditions. It's a measure of how close the air is to full saturation, but what we care about is how well we can cool ourselves by sweating and how much moisture is going to condense out of the air onto the rock (the shower mirror effect). Dew point is far more useful here, because it's a direct measure of how much water is in the air. It tells us the temperature at which water will start to collect on a cold rock face, and it sets the rate of evaporation off a warm surface (e.g. your 98.6° skin). ↩

  3. Want to help? If you have an infrared thermometer, take readings at the crag and note the time, the wall, which way it faces, whether it's in the sun, and the air temperature if you know it. Readings from crags other than the Red are the most useful, since that's where the model has never been checked. Send them through the contact form. ↩