Quiver Guides

How Quiver Calibrates Your Beach

Calibration starts by saving a forecast, matching it to a later observation, and keeping offshore buoy height separate from breaking surf at the beach.

7 min read

How Quiver Calibrates Your Beach

field note

Key Takeaways

  • Calibration requires a saved forecast, matching ground truth, and a clear definition of the wave height being scored.
  • Calibration is the gap between what a global model predicts and what actually shows up at your beach. Closing that gap is the whole job.
  • Forecast in, real buoy reading in, learn the gap, apply the correction next time. Repeat per beach. That's the whole loop.
  • A forecast score needs a saved sample, named ground truth, reproducible rules, and clear limits.
  • The calibration loop catches your own bugs. We fix them, retrain, and keep the old predictions honest instead of rewriting history.
01

The Short Answer

Calibration starts by saving a forecast before conditions arrive, then matching it to a later observation using a fixed station and time-window rule. For buoy checks, the ground truth is offshore significant wave height at the sensor. That is not the same quantity as breaking face height at the beach. Quiver documents this method and its limits at /forecast-accuracy; it does not publish an accuracy ranking against other forecasts.

02

What 'Calibrated' Actually Means

Most surf forecasts start in the same place: a global wave model run by NOAA or a similar agency. WaveWatch III, ECMWF, and Open-Meteo all produce hourly predictions of swell height, period, direction, and wind for every spot on the planet. Those models are good. They are not perfect.

The gap between "model output" and "what actually shows up at your beach" is what calibration closes. Two things drive that gap:

  • Local seafloor and shoreline geometry. A global model has no idea your beach has a sandbar 300 feet offshore that turns a 4-foot reading into 3 feet of mush, or that the reef next door focuses the same swell into a head-high wall. The model just gives the open-ocean signal.
  • Systematic model bias. Every model has tendencies. Some run hot on small swells. Some underestimate long-period north swells. Some are great on dominant swell but miss secondary windswell. These biases don't go away — they just need to be measured and corrected.

Calibration is the act of measuring those biases for your specific beach and correcting the next forecast accordingly. It's the difference between "this is what the model said" and "this is what the model said, adjusted for what we've observed at your beach over the last several months."

Calibration is the gap between what a global model predicts and what actually shows up at your beach. Closing that gap is the whole job.

03

How It Works for Your Beach

Here's the data flow, in plain English:

1. Save the forecast. Keep the raw model value and any adjusted value with the issue time, valid time, location, lead time, variable, and units.

2. Pull the observation. Match the saved value to what a documented NDBC, CDIP, or IOOS buoy measured inside a fixed time window.

3. Keep the definition straight. A buoy reports offshore significant wave height. Do not label that as observed breaking face height at the beach.

4. Evaluate the adjustment. Compare the raw and adjusted offshore-height values on the same holdout sample. Keep the miss even when it is unfavorable.

5. Report the limits. Publish the sample, date range, beaches, forecast horizon, missing data, and error formula before making a performance claim.

This is not magic. It is a testable loop: predict, observe, measure, and keep the result. A correction only earns trust when the saved evaluation shows that it helped on unseen data.

Aerial view of organized swell lines approaching shore

How It Works for Your Beach

04

What the Method Has to Publish

Calibration only matters if it can be audited. The /forecast-accuracy page now states the standard Quiver expects its own evaluation to meet:

Preserve the forecast. The value must be saved before the observation arrives, with its timestamp, lead time, location, variable, and units.

Name the ground truth. Offshore significant wave height from a buoy and breaking face height at a beach are different quantities. A report must say which one it scores.

Use one sample for a comparison. Every provider must be evaluated across the same beaches, times, horizons, observations, and exclusion rules.

State what is missing. Quiver has not completed a same-sample comparison against other surf forecasts, so it does not claim an accuracy ranking.

A forecast score needs a saved sample, named ground truth, reproducible rules, and clear limits.

05

The Day I Caught My Own Bug

One thing about running a calibration loop is that it surfaces problems in your own code. You can't hide from it. The buoy is the buoy.

I shipped a forecast model, found a direction bug in our own data pipeline, fixed it, retrained it, and kept the old predictions instead of rewriting history. That's the difference: we check our own work.

The reason it matters is straightforward. If I'd quietly patched the model and replaced the old predictions, the evaluation would no longer describe what actually shipped. A forecast you can't audit isn't calibrated — it is just a number.

The model is a tool. The discipline is the loop: predict, observe, measure, and preserve the result. The method matters more than the marketing label.

Frequently Asked Questions

How is this different from a regular surf forecast?+

A regular forecast hands you the global model's output and stops there. We take the same starting point — global model — and add a per-beach correction trained on what the local buoys actually measured. The forecast number you see has been adjusted for the systematic biases at your specific beach, not just the open ocean grid cell.

What should an accuracy report publish?+

At minimum: the saved forecast sample, date range, beaches, lead times, exact variable and units, observation source, matching window, missing-data rules, and error formula. A head-to-head also needs every provider evaluated on that same sample.

What happens when the model is wrong?+

The saved forecast and its matched observation should stay in the evaluation set. Do not delete the miss or replace the original prediction after conditions arrive. Being wrong is part of a valid test; rewriting the sample breaks it.

Does calibration establish an accuracy ranking?+

No. Quiver has not completed a same-sample comparison across identical beaches, timestamps, lead times, observations, and wave-height definitions. It does not claim an accuracy ranking.

How long does it take a new beach to be well-calibrated?+

There is no universal cutoff. Readiness depends on enough independent forecast-observation pairs across the conditions the beach receives, followed by holdout evaluation. More history alone does not prove that an adjustment improves the forecast.