21 August 2026
Session report, August 14-16, 2026
Three days in a row at Gwendrez, mid-August 2026: what HappySession forecast, compared to what we actually found in the water. A transparency exercise, session by session.
Three sessions in a row at Gwendrez, Friday, Saturday and Sunday, the occasion to share for the first time an exercise I do regularly on my own: taking what HappySession had forecast for each slot and checking it against what we actually got in the water.
| Slot | App forecast (estimated size) | Actually found | Gap |
|---|---|---|---|
| Fri 14, 2-4:30pm | ≈0.8 m, slight rise, light NNE wind | Chest-high max, cross-shore/offshore wind, a bit of chop | Size slightly overestimated; the chop wasn't explicitly flagged |
| Sat 15, 10:30am-12pm | ≈0.6 m dropping, light wind | Waist-high, dropping, clean | Trend and quality well confirmed, but the most overestimated size of the 3 days |
| Sat 15, 2-4:30pm | ≈0.6 m, freshening wind | Waist-high, chop, cross-shore/offshore wind | Size slightly overestimated; the clean-to-wind-swell shift was well captured by the model, signalled indirectly by the reliability index (orange) but not explicitly as such |
| Sun 16, afternoon | ≈0.3 m | Nothing or almost nothing, very small waves | The cleanest match of the three days |

Forecast: west swell, around a metre, rising slightly over the slot, light north-north-east wind.
Actual: small waves, chest-high at best, cross-shore/offshore wind, a bit of chop on the surface.
Consistent on size. The chop we felt wasn't explicitly "flagged" as such in the app at the time — the kind of nuance we can still surface better.
On composition, the app already showed a multiple swell (several overlapping swell trains, not a single primary swell) with a wind component starting to show — not yet strong enough to degrade the read of the water, but an early sign of what was coming the next day.
Tide-wise: slot on a rising tide, well before high water, outside the window where the spot switches to shorebreak.

Forecast: north-west swell, around a metre but dropping progressively over the slot, light wind.
Actual: small waist-high waves, dropping, clean.

The downward trend was there, and the lack of strong wind translates exactly into what we found: a clean water surface, no chop. On the other hand, this is the slot where the displayed size drifted furthest from what it felt like, more than Friday or Saturday afternoon.
It's also, in terms of composition, the cleanest slot of the three days: still a multiple swell but well structured, no wind component this time — the small signal from Friday hadn't progressed, quite the opposite.
Tide-wise: we were in the last third of the falling tide, approaching low water.

Forecast: the ground swell starts giving way to a locally wind-generated component, wind freshening slightly.
Actual: small waist-high waves, cross-shore/offshore wind, chop.
This is the most interesting slot to look back on: internally, the model's calculation had shifted from a well-structured multiple swell to a clearly dominant wind swell, and that's precisely what we felt in the water. A wind swell isn't just a choppy surface sitting on an otherwise fine swell: the swell itself is lower quality, less well formed, less powerful, less regular than a true ground swell.
Worth noting, though: the reliability index shown was orange ("Correct conditions"), a signal on HappySession's end of degrading swell quality and an increasingly hard-to-read water surface, without being an explicitly qualitative indicator. A possible area for improvement.
Tide-wise: low tide then the start of the rise (under 2.5 m throughout the slot), still well outside the shorebreak zone.

Forecast: barely any exploitable swell left, flat to very flat sea.
Actual: nothing or almost nothing, tiny waves.
The only slot of the three days where flat was announced unambiguously, and it's the one that matched best.
The wind swell that appeared Saturday afternoon stayed dominant, with a pronounced north-west orientation. The period had dropped to 4 seconds, against 8-9 s on Friday and Saturday morning: the typical signature of a wind swell, not just smaller but intrinsically lower quality.
Gwendrez is one of the spots we flag as exposed to shorebreak — waves that break directly on the sand, generally toward the end of a rising tide or at high water, when there's no longer enough water in front of the beach for the wave to break progressively. It's a real hazard at this spot, not specific to this weekend.

The two afternoon sessions, Friday and Saturday, wrapped up around 4:30pm; the waves, for their part, really stopped being surfable around 5-5:30pm both days. Nothing alarming: the swell that weekend stayed small, so the shorebreak that came with it stayed small too. But enough to end the session, while other surfers, both days, were still in the water, or even paddling out, right as the tide was rising toward that risk window.
That's a concrete area for improvement for the app: at that point, it did indicate the absence of surfable waves, but without spelling out the shorebreak risk itself, a signal that could be useful to the user. That risk is nonetheless already detectable in the data being calculated; it still needs to be surfaced as an alert in its own right, at the right moment.
Across the three days, the forecasts were on the whole fairly reliable, but two details are worth digging into.
Looking back at the numbers: on Friday and Saturday, the displayed height seemed slightly overestimated compared to what it felt like (even more so on Saturday morning than the other two slots), while on Sunday, with much smaller waves, the estimate matched better. Wave-height perception is inherently subjective, specific to each surfer and how they read a given spot: it's not that individual feel that HappySession is trying to reproduce exactly, but a common, consistent reference, the same calibration applied to every spot, so that an announced size means the same thing everywhere. On this specific point, the calibration seems to have slightly overestimated the actual size at Gwendrez that weekend. Not enough to change the decision to go or not, but the kind of systematic gap that's worth digging into rather than ignoring.
Second point worth digging into: comparing not just the latest displayed number, but also what the app was forecasting several days ahead for the same date. For Sunday's slot specifically, the day before (Saturday) the app was still showing 0.7 m; the same-day forecast, meanwhile, had dropped to 0.3 m, the correct value.

What the app was forecasting on Saturday for Sunday's 5pm slot, to compare with the actual same-day capture further up (0.3 m).
The idea I'm working on: when you save a session for a spot on a future date, the app keeps tracking that forecast up to the day itself and alerts you if it changes significantly, up or down, on both wave height and quality. Not possible yet today, but it's the next thing to build.
Important information
HappySession provides estimates based on available data and a surf-focused analysis. Actual conditions may differ. Every surfer remains responsible for their own safety and should always be careful.