The actual pipeline, the actual thresholds — nothing here is aspirational
Every spot gets a single number from 1.0 to 5.0, recomputed on a schedule every 15 minutes and stored, not computed while you wait. That is deliberate: the card you tap and the forecast page you land on read the same stored number, so they cannot disagree with each other, and the forecast page tells you how old that number is. Scores snap to half-point steps (3.0, 3.5, 4.0…) and are clamped to the 1–5 range. One question is being answered: how favorable are conditions for paddling right now?
Example card — production styling.
| Score | Verdict | Meaning | |
|---|---|---|---|
| 4.0 and up | Worth it | Conditions are favorable for most paddlers. | |
| 3.0 – 3.5 | Careful | Mixed conditions. Check the details before heading out. | |
| Below 3.0 | Hard pass | Conditions are poor. Postpone if possible. |
Scores are shown in half-point steps — deliberately. The model computes to finer precision internally (kept for evaluation), but a paddling decision doesn't hinge on a 3.6 versus a 3.7, and every surface uses the same three verdict colours so the label always matches the number you see:
The exact colour stops the forecast pages use.
The score is a starting point, not a green light. A “Worth it” score does not mean conditions are safe for every paddler in every craft. Always apply your own judgment.
Forecast pages show the next three days from 6 AM to 8 PM at the lake, one band per day, so you can pick your launch hour instead of just your day. Every daylight hour is scored; hours when the sun is down at the lake stay dark and unscored. The hour you are in shows the same observed score as the top of the page, so there is one number for “now”; later hours are forecasts. Days, hours and “this hour” are always the lake’s own clock, wherever you are reading from. This is not a mock-up — the component below is the forecast page’s heatmap, rendering a live 3-day outlook. Tap a bar to open an hour:
Fetching a live 3-day forecast…
Rendered by the production Heatmap component.
Weather comes from WeatherAPI.com — three feeds fetched in parallel for every score: current conditions, a 3-day hourly forecast with government weather alerts, and marine data (wave height, swell, water temperature) where the location has coverage.
Where a value is missing it is omitted — never silently defaulted to a flattering number, and never shown to you as if it were measured.
Waves, swell and water temperature on inland water. Marine feeds are built for the sea. Asked about a landlocked point, our provider does not return an error — it returns a plausible-looking marine record anyway. We verified this: a query for Antero Reservoir, an alpine Colorado reservoir at roughly 8,900 feet, came back with 1.4 m waves, a 5.2-second swell, and 28.8 °C water. So we do not use marine data on lakes and rivers at all, and wave and swell rules simply do not fire there.
Water temperature: measured, or nothing. We show a water temperature, and let it trigger cold-water warnings and penalties, only when a sensor on that body of water measured it — the nearest sensor is often a creek that is not the lake you are paddling, so proximity alone does not count. Today none of our spots has a matched sensor, so every forecast page says “No sensor” and no water-temperature rule fires. Treat cold water as your own call. (The model itself was trained with a water-temperature input and still receives one derived from the air, because that is how it learned; that derived value is a model input only — it is never shown to you and never triggers a warning.)
River flow is not checked yet. The Colorado at Moab, the Trinity and the Merrimack are scored on the weather alone: we have not yet connected a river gauge to any of them, so a river running high on a calm, sunny day can still score well. Check the flow yourself before a river trip.
Each score passes through six stages, in this order:
direct-hgb-mono-v2-2026-09-18) trained on paddler ratings paired with the weather at the time of each paddle produces the base score. It is evaluated in our own server process, not called over the network. Out-of-fold error is 0.60 MAE (95% CI 0.51–0.70) on 187 rated paddles across 93 lakes, cross-validated grouped by lake so no lake appears in both sides of a fold. Seven features are monotonically constrained, so more wind, bigger gusts, higher waves, more rain can only ever lower the score.If the model service is unreachable, a rule-based fallback produces the score from the same inputs — starting at 3.0, rewarding calm wind (+0.8 under 5 mph) and comfortable temperatures (+0.3 for 18–30°C), and subtracting for strong wind (−1.2 over 20 mph), active warnings (−0.8), high UV and poor visibility. Fallback scores are marked with lower confidence.
After calibration, safety rules subtract points the model is never allowed to argue back. Most are small nudges for gusts, waves, heat, UV, visibility and rain — but a few are worth calling out, because they can sink an otherwise perfect day on their own:
Kaayko scores daylight hours only, and we do not condone paddling after dark. Once the sun is down at a spot — decided by that lake’s own sunrise and sunset, not your clock — no surface shows it a score: not the list, not search, not its page. The forecast shows the next daylight window instead. This is deliberate: the score is built from wind, water, and weather, and none of those inputs capture what actually makes night paddling dangerous — you cannot read the water, you cannot be seen by motorized craft, self-rescue is far harder, and a capsize that would be a nuisance at noon becomes a serious emergency in the dark.
Night paddling is also regulated. Many jurisdictions require navigation lighting after sunset, and a number of parks and reservoirs prohibit being on the water at night at all. Those rules are local, they change, and it is your responsibility to know them for the water you are on. A daytime score never implies that the same water is acceptable at night.
Lakes that freeze have no Paddle Score from October 1 until May 15. A score is built from wind and weather; it cannot see ice, and a frozen lake on a calm, sunny day would otherwise rate well. A lake is on this list only when an official source shows it freezes — ice-fishing rules, park notices, a published study — never because of its elevation alone. Today: Cottonwood, Taylor Park, Turquoise, Antero, Jackson, Jenny and String. Lakes that only rarely freeze, like Lake McDonald, stay scored.
Closed water has no score either. When the managing agency closes a lake to recreation (Antero, closed by Denver Water for 2026) or to boating for part of the year (Glacier allows boating on Lake McDonald only from the second Sunday in May to October 31), we show it as closed, with the agency’s notice and its date. Lakes without a score sit at the bottom of the list, greyed, so they never read as an option.
Wind that’s a workout in a kayak can be unmanageable on a stand-up paddleboard or a pedal boat. Pick your craft in Settings and every score adjusts through a fixed, documented rules layer — it is not part of the machine-learned model, so it can be audited line by line. The hard-shell kayak is the baseline (the training ratings were made from a kayak perspective); no craft ever scores higher than the baseline in wind, only lower.
| Craft | Wind asks effort | Wind gets demanding | Above handling range |
|---|---|---|---|
| Kayak (baseline) | — | — | — |
| Rowboat | 12 mph | 18 mph | 22 mph |
| Canoe | 10 mph | 16 mph | 20 mph |
| Inflatable kayak | 10 mph | 15 mph | 18 mph |
| SUP | 9 mph | 14 mph | 18 mph |
| Pedal boat | 8 mph | 12 mph | 16 mph |
Deductions run from a quarter point up to 1.5 points, with extra weight for chop on wave-sensitive hulls and for big gust spreads on craft that catch wind (SUP, pedal, inflatable). The thresholds follow published paddling-safety guidance: beginner SUP instruction places the comfortable ceiling near 8–10 knots of wind, beginner kayaking near 10 knots with ~25 mph as the widely cited danger line (aligning with NWS small-craft-advisory territory), and canoes’ higher freeboard makes them notably more wind-bound than kayaks. When your craft lowered a score, the forecast page says so, in plain words.
Forecast pages add short preparation tips — how much water to carry (computed from the NWS heat-index formula for the conditions on screen), wind technique for your craft, cold-water dressing, sun exposure. Every tip is computed from the live data shown on that page; if the data isn’t there, the tip isn’t either.
The same rule governs spot facts. Water type (lake or river) is recorded per spot. Cell coverage notes appear only for spots we’ve graded against FCC Broadband Data Collection coverage maps (per-carrier, ~100 m hexagons around the launch). “Know before you go” — fees, permits and invasive-species inspections, the put-in, motor boats, season, rentals, dogs, parking and hazards — comes from the agency that runs the water (park services, forest service, state wildlife and parks departments, cities) and shows its source and the date we checked it. Rules change: the linked source is the authority, not our copy. Nothing on these pages is inferred or guessed — a missing row means we don’t have a source for it yet.
Nothing you rate changes a score yet. The model’s labels came from people, and the plan is for its corrections to as well, but the loop is not connected: we have no ratings to learn from, and no lake has an offset.
What exists today:
Anti-abuse, concretely: one rating per device fingerprint per spot per day, with a two-hour window to revise your own submission, plus IP-based daily rate limits. The fingerprint exists to stop ballot-stuffing, not to identify you — no account, no name, no email.
Wear a life jacket. Every time, every body of water, regardless of what the score says. A PFD (personal flotation device) is the single most effective thing you can do to stay safe on the water.
The score is a decision aid, not a guarantee. Things we cannot measure or predict:
The Paddle Score supplements your judgment — it does not replace it. When in doubt, don't go out.
By using Kaayko Paddling Out, you acknowledge and agree to the following: