Data sources
Every tide time and height on this site comes from NOAA predictions, downloaded by a script and turned into pages without anyone retyping a number. This page lists the NOAA station behind each place, explains how we fill in what NOAA does not publish, and names the other sources we use.
Not for navigation
These are tide predictions for planning a beach visit. Do not use them for navigation, boating or any decision where safety depends on the exact water level.
NOAA tide predictions
The tide predictions come from NOAA's Center for Operational Oceanographic Products and Services (CO-OPS), through its public data API. We request them with these settings:
- Heights in feet above mean lower low water (MLLW), the zero NOAA uses for tide predictions and nautical charts (NOAA tidal datums). A negative height is a low tide below that average.
- Times in local California time, with daylight saving time applied when it is in effect (NOAA's "local standard/local daylight time" option).
- High and low tides for every station, and the full curve at 6-minute steps for the next 7 days at stations where NOAA publishes one.
Each station has its own MLLW, so the same height means a slightly different water level at two stations. On this site, compare heights within one place, not between places. The guide tohow to read a tide chart explains MLLW and negative tides with examples.
Which NOAA station each place uses
Each place page has one main NOAA station, chosen for that place and named next to its numbers. No two pages share a station. Where NOAA has no station at the place itself, the page says so next to the numbers. 12 places use 14 stations: 9 with full predictions and 5 with high and low tides only. The distance is measured from the point we use for the place to the station, as printed on its page.
| Place | NOAA station | NOAA publishes | Distance from the place | Used for |
|---|---|---|---|---|
| San Francisco | San Francisco (Golden Gate)ID 9414290 | Full predictions (harmonic) | near San Francisco | Whole page except the Ocean Beach section |
| San Francisco | Ocean Beach, outer coastID 9414275 | High and low only (subordinate) | near Ocean Beach | Ocean Beach section |
| Half Moon Bay | Pillar Point Harbor, Half Moon BayID 9414131 | Full predictions (harmonic) | near Half Moon Bay | Whole page |
| Santa Cruz | Santa Cruz, Monterey BayID 9413745 | High and low only (subordinate) | near Santa Cruz | Whole page |
| Monterey | Monterey, Monterey BayID 9413450 | Full predictions (harmonic) | near Monterey | Whole page |
| Pismo Beach | Port San LuisID 9412110 | Full predictions (harmonic) | 11 km west of Pismo Beach | Whole page |
| Santa Barbara | Santa BarbaraID 9411340 | Full predictions (harmonic) | near Santa Barbara | Whole page |
| Malibu | Santa Monica, Municipal PierID 9410840 | Full predictions (harmonic) | 26 km east of Malibu | Whole page |
| Huntington Beach | Balboa Pier, Newport BeachID 9410583 | High and low only (subordinate) | 11 km southeast of Huntington Beach | Whole page |
| Newport Beach | Newport Bay Entrance, Corona del MarID 9410580 | Full predictions (harmonic) | near Newport Beach | Whole page |
| Laguna Beach | San ClementeID TWC0419 | High and low only (subordinate) | 20 km southeast of Laguna Beach | Whole page |
| La Jolla | La Jolla (Scripps Institution Wharf)ID 9410230 | Full predictions (harmonic) | near La Jolla | Whole page |
| San Diego | San Diego (Broadway)ID 9410170 | Full predictions (harmonic) | near San Diego | Whole page except the tide pool section |
| San Diego | Point LomaID TWC0405 | High and low only (subordinate) | 8 km southwest of San Diego | Tide pool section (Cabrillo) |
Station names as NOAA writes them. Each name links to the station's NOAA tide predictions page.
Tide curves for subordinate stations
NOAA has two kinds of prediction stations. At a harmonic station it publishes the predicted water level every 6 minutes, so we can draw NOAA's own curve. At a subordinate station NOAA publishes only the times and heights of high and low tide, which it works out from a nearby reference station with time and height corrections. These are the reference stations for ours:
- Ocean Beach, outer coast (San Francisco): from station 9414290, San Francisco (Golden Gate)
- Santa Cruz, Monterey Bay (Santa Cruz): from station 9413450, Monterey, Monterey Bay
- Balboa Pier, Newport Beach (Huntington Beach): from station 9410660
- San Clemente (Laguna Beach): from station 9410170, San Diego (Broadway)
- Point Loma (San Diego): from station 9410170, San Diego (Broadway)
To draw a curve between those highs and lows, we use cosine interpolation: between a high and the next low (or a low and the next high), the line follows half of a cosine wave, so it is flat at the high and the low and steepest halfway between. The times and heights of the highs and lows are NOAA's; the shape of the line between them is our approximation. Real tides are often not symmetric, so the water level read off the curve between two tides can differ from what NOAA would predict there.
Interpolated curves are drawn on 3 pages:Santa Cruz tide chart, Huntington Beach tide chart and Laguna Beach tide chart. The caption under each of their 7-day charts says so.
The current water level
The water level "now" and the countdown to the next tide on every place page are worked out in your browser, from the high and low tides embedded in the page. The level between a high and a low uses the same cosine interpolation, at every station, so it is an approximation of the predicted curve. It is not a NOAA value and not a live reading from a tide gauge.
Sun and moon times
Sunrise, sunset, moonrise, moonset and the moon's phase are calculated withSunCalc, an open-source JavaScript library, for each place's coordinates and in California time. For the Ocean Beach section of the San Francisco page, they are calculated for the spot that section is about. SunCalc's sunrise is the moment the top edge of the sun appears on the horizon, and its sunset the moment the sun disappears below it.
The solunar calendar's periods come from the same moon positions. Major periods run from 60 minutes before to 60 minutes after the moon is highest in the sky or lowest below it; minor periods run from 30 minutes before to 30 minutes after moonrise and moonset. The solunar calendar explains how to use them.
How we rate tide pool windows
A tide pool window is a low tide between sunrise and sunset. A daylight low at 0.0 ft or lower is rated very good, one above that and up to 1.0 ft is rated good, and anything higher is not a tide pool window. Heights are rated after rounding to a tenth of a foot, the way they are shown, so a printed height and its rating always agree. A window within 30 minutes before sunset is flagged, because little daylight is left after it.
Tide pool tables, charts and lists of the highest tides cover the next 30 days from the day the site was built, not the calendar month.
Grunion runs and king tides
Expected grunion runs come from the California Department of Fish and Wildlife (CDFW), which publishes the dates and times each season. We copy them by hand from CDFW, and we do not work out run dates from tide tables. Fishing rules for grunion are CDFW's; theCalifornia grunion run schedule links to them.
We do not call any date a king tide on our own. The highest high tides between November and February on our pages are labeled "highest predicted high tides", which is what they are. Official king tide dates are announced by the California Coastal Commission'sCalifornia King Tides Project, and we only show them once they have been published and checked.
How often the data is updated
The site is rebuilt with fresh NOAA predictions once a week, early on Monday morning, California time. Each download covers the current month from its first day through at least the next six weeks, so calendars start on the 1st and the "next 30 days" never run out between rebuilds.
The predictions on the site now were downloaded on Thursday, October 1 at 11:40 PM, Pacific time, and cover Thursday, October 1 to Monday, November 30. Times shown as "today" or "now" follow your device's clock between rebuilds.