010 / Case study Recreation · Community-Owned Ski Area · 2026

Bridger Bowl: 30% reduction in unnecessary avalanche control saves $45K/yr

We built SnowOps — a snowpack and operations intelligence platform for independent ski areas. Raspberry Pi sensor nodes on LoRa mesh feed real-time snowpack, weather, and crowd data into a unified operations dashboard. Grooming efficiency up 15%, midweek visits up 8%.

30% ↓ unnecessary avy control
15% ↑ grooming efficiency
$193K annual value created
Product interface
Product dashboard screenshot

The problem

Bridger Bowl is a community-owned ski area on the north side of the Bridger Range outside Bozeman, Montana. Two thousand acres, eight lifts, and roughly 350,000 skier visits per year. The mountain is known for expert terrain and cold smoke powder — and for running lean. There is no corporate parent to absorb a bad season.

Avalanche control decisions were made each morning by the ski patrol director based on a weather station at the summit, a manual snow study pit, and experience. On marginal days the call leaned conservative: close the terrain, throw explosives, wait. That caution was justified — but it also meant Bridger was spending over $150K per year on avalanche control routes that post-storm analysis showed were unnecessary roughly a third of the time. Closed terrain on powder mornings drove pass holders to larger resorts with better real-time information.

Grooming was scheduled on a fixed nightly rotation regardless of snowfall, traffic patterns, or freeze-thaw cycles. Fuel, labor, and machine hours were allocated evenly across runs that saw wildly different skier loads. Midweek visitation had been flat for five years despite growing season pass sales — guests had no reliable way to know current conditions before driving up.

What we did

Week one we surveyed the mountain with patrol and operations staff. We identified 14 sensor locations covering the four primary avalanche start zones, three grooming priority corridors, and the base-area crowd choke points. Each station runs a Raspberry Pi in a weatherproof NEMA enclosure with solar trickle charge, measuring snow depth, temperature, wind speed and direction, and humidity. LoRa radios relay readings every five minutes to two gateway nodes at the patrol shack and mid-mountain lodge.

Weeks two and three: MQTT broker on the patrol shack NixOS node ingests sensor data into TimescaleDB with PostGIS extensions for spatial queries. We wrote Python workers to merge readings with NOAA point forecasts and Bridger’s 12-year avalanche incident archive. A scikit-learn ensemble model scores each start zone on a rolling hazard index — not replacing patrol judgment, but giving them a quantitative second opinion before the morning control call.

Weeks four and five: grooming optimization. We built a nightly planning engine that combines forecasted snowfall, skier traffic from RFID lift scans, and snow surface temperature to rank runs by grooming urgency. Groomers get a prioritized list on a tablet at the start of each shift instead of a static rotation.

Week six: crowd prediction model. Historical lift scan data, weather forecasts, day-of-week, and school calendar feeds train a gradient-boosted regressor that predicts next-day and same-day attendance within 12% MAE. The public conditions page — a Next.js app with Mapbox terrain overlay — shows real-time snow depth, open terrain, grooming status, and a crowd forecast so guests can make an informed decision to drive up.

Weeks seven and eight: field hardening and edge resilience. NixOS rollback on failed OTA updates, offline buffering when LoRa uplinks drop, watchdog reboots, and battery failover testing at −30 °F. Week nine was runbook handoff, patrol training, and a live tabletop exercise simulating a multi-day storm cycle.

Results

In the first full season, Bridger reduced unnecessary avalanche control routes by 30%, saving $45K in explosives, helicopter time, and labor. Patrol opened avalanche terrain an average of 47 minutes earlier on moderate-hazard mornings. Grooming fuel and machine hours dropped 15%, saving $28K, while skier satisfaction scores on groomed run quality held steady. The public conditions page drove an 8% increase in midweek visits — $120K in incremental revenue — by giving pass holders confidence in real-time snow conditions. Total annual value created: $193K against a $58K project cost. The system runs on hardware that Bridger’s two-person IT staff can maintain and replace with off-the-shelf parts.

In their words

“We used to make the morning avalanche control call based on gut feel and whatever the ski patrol director saw on the drive in. Now we have 36 hours of continuous snowpack and wind data on a single screen. We're throwing fewer bombs and opening more terrain earlier. That's real money for a nonprofit ski area.”

Jake Sorensen Operations Director · Bridger Bowl