001 / Case study Nonprofit · Trail Stewardship · 2026

Big Sky Trail Alliance: 4× faster hazard triage with AI-powered trail reporting

We built TrailMind — an AI-powered trail condition reporting platform that uses Claude Vision to classify hazards from volunteer photos, auto-generate work orders, and prioritize maintenance by trail traffic and severity. Replaced their spreadsheet-and-email workflow in 5 weeks.

faster hazard triage
60% ↓ duplicate reports
100% trail network coverage
Product interface
Product dashboard screenshot

The problem

Big Sky Trail Alliance maintains 340 miles of trails across the Gallatin and Madison ranges — everything from groomed Nordic loops to Class 4 scramble routes above 10,000 feet. Their volunteer network of 180 patrollers submits condition reports year-round: deadfall, erosion gullies, washed-out bridges, missing signage, wildlife closures.

Until TrailMind, those reports came in as emails with phone photos attached and a free-text description that ranged from “big tree down near the creek” to a six-paragraph essay. The trail coordinator was spending 15 hours a week triaging the inbox — manually geocoding locations from vague descriptions, categorizing hazard types, deduplicating reports from overlapping patrols, and entering work orders into a shared Google Sheet.

Priority decisions were gut calls. A downed bridge on a lightly used connector trail might sit for weeks while a cosmetic deadfall on the popular Hyalite Creek trail got cleared immediately because more people reported it. There was no way to weigh severity against traffic volume, no spatial view of where hazards were clustering, and no closed-loop tracking from report to resolution.

The Alliance’s board wanted full trail network coverage and data-driven maintenance prioritization before the 2026 summer season. Their budget was tight — they needed a tool built for them, not a six-figure enterprise platform adapted to them.

What we did

Week one we mapped the reporting workflow end-to-end with Connie’s team and built the data model. Every trail segment got a PostGIS linestring with attributes: trail name, difficulty class, average weekly traffic (from their Trailmaster counter data), and maintenance history. We designed the report schema around what volunteers actually know in the field: a photo, a GPS pin from their phone, and a one-sentence description.

Week two we built the ingestion pipeline. Volunteers submit reports through a mobile-optimized web form — no app install required. The photo and GPS coordinates hit a serverless function on Vercel that calls Claude Vision with a structured prompt: classify the hazard type (deadfall, erosion, washout, structural damage, signage, wildlife), estimate severity on a three-point scale, extract any visible details (tree diameter, water depth, trail obstruction percentage), and flag whether the trail is passable or impassable. Claude returns structured JSON that populates the work order automatically.

Week three was the prioritization engine. Each work order gets a composite score: hazard severity × trail traffic volume × days-since-reported × seasonal weight (a washed-out bridge matters more in June than November). The coordinator dashboard shows a ranked queue with map pins color-coded by priority. Duplicate detection uses PostGIS proximity queries — if two reports land within 50 meters on the same trail segment and Claude classifies them as the same hazard type, the system merges them and links both reporters.

Week four we built the resolution workflow. Crew leaders claim work orders, log completion with a photo, and the system notifies the original reporter that the hazard is resolved. We added a seasonal planning view that shows historical hazard density by trail segment so the Alliance can pre-position crews and schedule preventive maintenance before problem areas recur.

Week five was testing with live volunteer reports, training the coordinator team, and hardening the deployment. We ran 60 real reports through the pipeline end-to-end, tuned Claude’s classification prompt against edge cases (is that a fallen tree or a deliberately placed log bridge?), and shipped documentation.

Results

In the first month of operation, TrailMind processed 147 volunteer reports. Hazard triage time dropped from an average of 25 minutes per report to under 6 minutes — a 4× improvement. The coordinator went from 15 hours a week on triage to 4. Duplicate reports fell 60%: volunteers still submit overlapping reports, but the system merges them automatically and the coordinator never sees the noise.

Full trail network coverage is now a reality. Every maintained trail segment has a live hazard status. The priority queue surfaced three erosion clusters on the Bridger Ridge connector that had been reported individually but never recognized as a systemic drainage problem — the Alliance rerouted 200 meters of trail before the damage compounded.

The board approved expanding TrailMind to two partner organizations for the 2027 season. Total build cost was $36k against a projected annual savings of $22k in coordinator labor alone, not counting the avoided trail damage from faster response.

In their words

“We went from a volunteer emailing a blurry photo to the office and hoping someone saw it, to a system that classifies the hazard, drops a pin on the map, and queues a work order before the hiker finishes their loop. TrailMind is the tool we've needed for ten years.”

Connie Marsh Executive Director · Big Sky Trail Alliance