A wave is energy passing through, not water arriving
When a swell rolls in, the water itself hardly travels. Each bit of water goes round in a loop and comes back to nearly where it started. What moves across the ocean is the energy, handed from one loop to the next.
You know this already. Float out past the ramp on a swell day and you rise, drift forward, sink and drift back. That loop is the wave going through you.
In deep water the loops are circles, and they shrink fast as you go down. Half a wavelength below the surface they're about 4% of their size at the top, which is why divers can sit still under a big swell.
In shallow water the seabed gets in the way. The circles are squashed into flat ovals, and near the bottom the water just slides back and forth. That sideways slosh is what the app calls Surge. Switch the animation to At the ramp to see it.
Height matters. Period matters more than you'd think.
A forecast gives three numbers for a swell: height, period (seconds between crests) and direction. Most people read the height and skip the rest. The figure below lets you set the first two and see what each one changes.
Period sets the wavelength, and wavelength decides how deep the wave reaches. A wave starts to feel the seabed once the water is shallower than about half its wavelength. For a 10-second swell that's around 78 m down, so it's scraping the bottom across the whole shelf off Manly, which sits at 20 to 40 m.
A long-period swell feels the bottom sooner, bends more, and carries more punch for its height. It's the one that finds its way into places you'd expect to be sheltered.
Swell and sea are two different things
Swell was made by a storm somewhere else, often days ago and hundreds of kilometres away. By the time it gets here it has sorted itself into long, even lines.
Sea (or wind-wave) is made by the wind that's blowing now, nearby. It's short, steep and jumbled, and it stops growing soon after the wind drops. In the water you get both at once, added together.
The forecast usually gives both, and the app scores them differently. Swell mostly drives Entry and Surge. The local wind's sea is most of Chop, the bumpy surface you feel mid-swim.
Sets: why waves come in groups
Swell doesn't arrive evenly. A run of bigger waves comes through, the set, then smaller ones for a while, the lull. A real swell is many waves of slightly different period travelling together. Where their crests line up they add, and where the crests of one meet the troughs of another they cancel.
The simplest picture is just two swells, of 10 s and 11 s. They slip out of step and back in every 110 s (the two periods multiplied, divided by the gap between them). So a set comes through about every 11 waves.
In deep water a set, and the energy it carries, moves at only half the speed of its crests. So each crest appears at the back of a set, grows as it runs through, and fades out at the front. Follow the orange dot: a set is a pattern moving through the swell, not a fixed bunch of waves.
A groundswell from a distant storm has been sorted on its way here, because longer waves travel faster and arrive first. The waves reaching you at any one time have very similar periods, so its sets are distinct, with long lulls between them. A local wind sea mixes many periods at once, so its groups are short and messy. Neither keeps time like the two swells above: real sets vary in size, and so do the gaps between them.
Feeling the bottom: waves slow, bunch up and stand taller
Once a wave feels the seabed, the bottom drags on it and it slows down. In shallow water the speed depends mainly on depth:
The back of the wave is still in deeper water and moving faster, so it catches up with the front. The energy gets packed into less space and the wave stands taller. This is shoaling. It's why a swell you barely noticed from the promenade can rear up over the last few metres before the sand.
Shoaling also changes what the water around you does. The loops flatten into that back-and-forth slide: compare the two close-ups above. So the same swell feels more like a push and pull the shallower you are.
Bending round: refraction and diffraction
Refraction
A wave line arriving at an angle hits shallow water at one end first. That end slows down while the other end keeps going, so the whole line swings round to face the shore. It's the same thing that makes a straw look bent in a glass of water.
Cabbage Tree Bay opens to the north-east, with Shelly headland guarding its south-east side. A south-easterly has to swing round that headland to get in. The data shows it. A swell forecast from about 157° (SSE) turns up at the bay mouth from around 124°. It has bent about 30 degrees, and lost most of its height doing it.
Diffraction
When a wave passes the end of a headland, some of its energy spills sideways into the sheltered water behind it. That's diffraction. The shadow behind a headland is never completely flat: it gets a weaker, spread-out copy of the swell outside.
Both effects are stronger for longer waves: switch either animation to 13 s to see it. At this bay mouth, though, two years of data barely show it. A south-easterly arrives from about 124° whatever its period, because the headland sets the angle. And most of the extra height a longer swell seems to bring is the Nearshore model counting more of the same waves as swell rather than sea.
The point: where the swell gathers
A short way along from the South Steyne corner towards Shelly, a rocky point sticks out into the swell. Its rock shelf carries on underwater, so the water in front of the point is shallower than the water either side.
The swell slows down over the shelf. Either side of it, the same crests are still in deeper water and moving faster, so they swing in towards the point. It's refraction again, working from both sides at once, so the swell’s energy converges on the point. The point gets more swell, and a stronger back-and-forth, than the bay beside it, even on mornings when the bay is quiet.
A longer-period swell feels the shelf from further out, so it starts turning, and gathering, sooner: switch the animation to 14 s to see it. It also carries more power for its height. That's why the app's Surge card looks at the point as well as the bay, and names the point when it's the reason Surge isn't Steady.
Bouncing back: reflection
A wave that hits something steep and solid, like a sea wall or a rock shelf, doesn't break. It bounces back out to sea. The reflected wave runs into the next one coming in, and the two add together.
Close to the wall, the water mostly goes up and down. About a quarter of a wavelength out, often around 10 m, the back-and-forth motion of the two waves stacks up, and the slosh can be close to double what the incoming swell alone would give.
This depends on the tide. At high tide the waves reach the wall and reflect. At low tide they spend their energy on the sand and rocks first. Switch the animation to Low tide to see the difference. The app's Surge score includes a wall-reflection term that grows at high tide for this reason.
Carried along: when the water itself travels
In the first section, each bit of water goes round a loop and comes back to nearly where it started. This is the nearly. Under a crest the water moves forward a little faster than it moves back under the trough. So each loop ends slightly ahead of where it began, and the water creeps along the way the waves are travelling. This is Stokes drift.
For a swell in deep water it is tiny: a 1 m, 10-second swell moves the top of the water about 6 mm a second, under 40 cm a minute. It grows with steeper waves and in shallow water. Double the height and the creep is four times faster. A half-metre, 10-second wave in 2 m of water moves the top about 4 cm a second, six times faster than that metre-high swell in deep water.
Wind does more. It drags the top layer of water downwind at roughly 3% of its own speed, so a 20 km/h wind moves the surface about 0.6 km/h, 10 m a minute. That is more than 20 times the creep of the 1 m, 10-second swell. Switch the animation to Swell + 20 km/h wind to compare the two.
Waves that break at an angle to a beach push a current along it, inside the surf zone. Switch the animation to Along a beach to see it from above. Out at sea, a 1 m, 10-second swell comes in 30° off straight-in. It breaks in about 1.7 m of water and drives a current of about 0.5 m/s along the beach, 30 m a minute. Water pushed along a beach has to get back out to sea, and where it funnels seaward it forms a rip current.
Wind: direction first, then speed
Wind builds sea over the stretch of open water it blows across. That stretch is called the fetch. Roughly, the chop grows with the wind speed times the square root of the fetch. So the direction of the wind matters as much as its strength, because it decides how much water the wind has to work with.
- North-east: the wind comes across about 6 km of open water, and the chop has room to grow.
- East round to south: the wind has just crossed Shelly headland or Fairy Bower, so it gets a short run of water: under a kilometre from the east, and only about 50 to 120 m from the south-east round to the south.
- West: offshore at South Steyne. It blows against incoming waves and flattens them, and the buildings behind the beach take some of its strength before it reaches the water.
At the bay mouth, two years of data show it clearly. When a north-easter blows 30 to 45 km/h, the model holds a median of about 1.1 m of wind sea there. A westerly of the same strength leaves about 0.2 m.
What two years of data say
We lined up two sets of numbers hour by hour, from December 2023 to December 2025:
- the offshore swell, from an ocean wave model about 8 km east of Manly, which is the kind of number a forecast gives you;
- the swell the NSW Nearshore Wave Tool puts at the mouth of Cabbage Tree Bay (node 103218). That's the model the app runs on.
From 8,142 hours with a real swell running, we worked out how much of the offshore swell reaches the bay mouth, direction by direction, and how the swell's period and size change it.
Show the numbers
| Direction | Measured | 7 s | 10 s | 13 s |
|---|
That last number is the reason the app doesn't use the forecast height directly. WillyWeather's offshore swell is a fair picture of what's happening out at sea. What gets past the headlands is a very different number, and it depends on direction.
The biggest number on the forecast isn't the one that matters. Look at the direction next to it.
Simulator
Set a swell and a wind the way a forecast would show them. The simulator runs them through the bay: the fitted formula takes the swell to the bay mouth, the app's own shelter table takes it round the corner to the South Steyne entry, and wave physics turns it into what the water around you does.
These numbers are modelled, not measured, and this isn't a forecast. The simulator shows how the pieces fit together; it doesn't say whether to swim. For today's call, use the app. The arrival direction depends on the forecast direction only: in theory a longer swell swings a few degrees further towards the beach, but two years of data here show no consistent effect.
Shelter table and chop settings: the copy saved on 29 Sep 2026.
Further reading
- VIZ — Dive conditions simulator
- C. Sillig — Waves course (PDF, and geophysical fluid dynamics)
- Southard — Water motions due to waves
- Bosboom & Stive — Coastal Dynamics: refraction
- ScienceDirect — Shoaling wave
- WeatherSTEM — Waves lesson
- Surfertoday — What is wave diffraction?
- Data: NSW Nearshore Wave Tool hindcast, node 103218; Open-Meteo marine hindcast; WillyWeather via the app's forecast history.