Ilha da Madeira & Porto Santo · Porto MonizRecommended level: Intermediate-Advanced / Pointbreak

Contreiras & Ribeira da Janela

Two complementary setups side by side: surf low tide on the long left at Ribeira da Janela (up to 2m), then transition to Contreiras as the tide pushes from mid toward high.

WHERE TO SURF TODAY
Clean surf on the SW coast (Jardim & Paul do Mar) + Fajã da Areia & Porto da Cruz fun at mid-tide
BEST WINDOW: {START}–{END}: 11:30–14:20 (1.10m–1.95m)
WAVE POWER & SIZE RIGHT NOW
110 kJ
0.6m · Sets 0.8m
Contreiras: Exit 50min Before Full High Tide
LIVE STREAM — Contreiras & Ribeira da JanelaLIVE 24/7
Contreiras & Ribeira da Janela · Câmara Principal
CAMERA VIEW:
WATCH LIVE CAMERA
HOW TO READ THIS CAMERA (LOCAL TIP)

1.15x shoaling factor with 1.28x set multiplier: classic reference session at 10 kt NNW 331° and 3.6m groundswell.

LOCAL WEATHER & PARKING (30 SPOTS)

PERSONAL SESSION NOTE: Contreiras works from mid-tide to high-tide (reference session: 10 kt, NNW 331°, 3.6m swell — enter 2 hours before high tide and exit 50 minutes before full high tide). Ribeira da Janela works best at low tide and holds up to ~2.0m.

WAVE SIZE
0.6m (Sets 0.8m)
1st Period (s): 12s · NW
POWER
110 kJ
Ideal size: {min}m–{max}m (Max {limit}m): 1.5m–3.0m (Max 4.5m)
BEACH WIND
19 km/h (10 kt)
cross-offshore · NNW
CURRENT TIDE
1.85m ▲
Contreiras: Exit 50min Before Full High Tide
ALL 3 ACTIVE SWELLS IN THE WATER (SWELL 1, 2 & 3)3 Simultaneous Swells
1ST SWELLNW
0.6m · 12s
[Sets 0.8m] · 110 kJ
2ND SWELLNNW
0.3m · 10s
345° · 45 kJ
3RD SWELLW
0.2m · 8s
270° · 45 kJ
TODAY'S TIDE CHARTBEST WINDOW: {START}–{END}: 11:30–14:20
2.2m1.2m0.4mBEST WINDOW: {START}–{END} (0.80m – 1.95m)CURRENT TIDE: 1.85m ▲00:0004:0008:0012:0016:0020:0023:59
ENTER & EXIT SAFELY
WATER ACCESS

PERSONAL SESSION NOTE: Contreiras works from mid-tide to high-tide (reference session: 10 kt, NNW 331°, 3.6m swell — enter 2 hours before high tide and exit 50 minutes before full high tide). Ribeira da Janela works best at low tide and holds up to ~2.0m.

SIMPLE GUIDE FOR BEGINNERS & SURFERSHow waves, wind, and tides work at Contreiras & Ribeira da Janela
1. AVERAGE SIZE & BIGGER SETS
0.6m (Sets up to {height}m 0.8m)
Every 5 to 10 minutes, a group of larger waves ("sets") arrives reaching 0.8m. Always judge the spot by the set size before paddling out.
2. TIME BETWEEN WAVES (SECONDS)
Best from 14 seconds up
Under 8s means weak, messy wind waves. Above 14s means clean ocean groundswell with long walls and much more push.
BEST TIDE HEIGHT:
0.8m a 1.9m (Contreiras: Mid to High Tide (enter 2h before high, exit 50m before full high) · Janela: Low Tide (holds up to ~2m))
Between 0.8m and 1.9m the wave peels best. Too high tide causes backwash off the rocks/wall.
ENTER & EXIT SAFELY
Safe tide: 0.8m – 1.9m
Window 1: Ribeira da Janela Left (Low Tide up to ~2.0m)

24-HOUR HOUR-BY-HOUR FORECAST

Hourly + 6-Day Overview

Contreiras & Ribeira da Janela — 1. Current Wave Size & Wind

1. Wave Size [Sets]: Sets up to {height}m
2. Period (s): 2. Best Tide Hours to Get In & Out
3. Wave Power (kJ): Wave Power & Size Right Now
4. Wind & Tide: 3. Beach Bottom, Access & Safety Tips
1ST SWELL (Mon 08 Nov)1ST SWELL (Primary Breaking) + 2ND SWELL & 3RD SWELL
1ST SWELLPrimary Breaking
1.5m [Sets 1.9m] · 13s
Power: 810 kJ · NNW (340°)
NNW
2ND SWELLSecondary Train
0.6m · 15s
Power: 150 kJ · NW (318°)
NW
3RD SWELLTertiary Train
0.4m · 10s
Power: 44 kJ · NNE (14°)
NNE
COASTAL MAP · 1ST SWELL & WINDContreiras & Ribeira da Janela · Mon 08 Nov (14:00)GPS 32.8458°, -17.1469° · DIRECTION THE BEACH FACES: N (10°)
N 0°E 90°S 180°W 270°SWELL 3:0.4m @ 10s NNE (14°) · 44 kJSWELL 2:0.6m @ 15s NW (318°) · 150 kJSWELL 1:1.5m [1.9m] @ 13s NNW (340°) · 810 kJCONTREIRAS & RIBWIND (ONSHORE): 19 km/h (10 kt) NNWCURRENT TIDE (14:00): 2.18m · RATING (0-10) 4.4/10
1ST SWELL (Primary Breaking)Aligned Pulse
1.5m [Sets 1.9m] · 13s NNW (340°) · 810 kJ
2ND SWELL (Secondary Train)Aligned Pulse
0.6m · 15s NW (318°) · 150 kJ
3RD SWELL (Tertiary Train)Aligned Pulse
0.4m · 10s NNE (14°) · 44 kJ
WIND & CURRENT TIDE (14:00)Onshore
19 km/h (10 kt) NNW · Current Tide 2.18m
24-HOUR HOUR-BY-HOUR FORECASTMon 08 Nov — 00:00 - 23:00HI: 02:10 (2.2m) / 14:20 (2.2m) · LO: 08:15 (0.1m) / 20:35 (-0.0m)
Select Day (24h):
Hour (00h–23h)
00:00
01:00
02:00
03:00
04:00
05:00
06:00
07:00
08:00
09:00
10:00
11:00
12:00
13:00
14:00
15:00
16:00
17:00
18:00
19:00
20:00
21:00
22:00
23:00
Rating (0-10)
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
4.4
4.4
4.4
4.4
4.4
4.4
4.4
4.4
4.4
4.4
4.4
4.4
4.4
1st Swell [Sets]
Primary (m · s · kJ)
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.3m [1.7m]
NNW
12s · 562kJ
1.5m [1.9m]
NNW
13s · 810kJ
1.5m [1.9m]
NNW
13s · 810kJ
1.5m [1.9m]
NNW
13s · 810kJ
1.5m [1.9m]
NNW
13s · 810kJ
1.5m [1.9m]
NNW
13s · 810kJ
1.5m [1.9m]
NNW
13s · 810kJ
1.4m [1.8m]
NNW
12s · 652kJ
1.4m [1.8m]
NNW
12s · 652kJ
1.4m [1.8m]
NNW
12s · 652kJ
1.4m [1.8m]
NNW
12s · 652kJ
1.4m [1.8m]
NNW
12s · 652kJ
1.4m [1.8m]
NNW
12s · 652kJ
1.4m [1.8m]
NNW
12s · 652kJ
2nd Swell
Swell 2
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 10s
NW
100kJ · 313°
0.6m · 15s
NW
150kJ · 318°
0.6m · 15s
NW
150kJ · 318°
0.6m · 15s
NW
150kJ · 318°
0.6m · 15s
NW
150kJ · 318°
0.6m · 15s
NW
150kJ · 318°
0.6m · 15s
NW
150kJ · 318°
0.6m · 10s
NW
100kJ · 310°
0.6m · 10s
NW
100kJ · 310°
0.6m · 10s
NW
100kJ · 310°
0.6m · 10s
NW
100kJ · 310°
0.6m · 10s
NW
100kJ · 310°
0.6m · 10s
NW
100kJ · 310°
0.6m · 10s
NW
100kJ · 310°
3rd Swell
Swell 3
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 9s
N
40kJ · 9°
0.4m · 10s
NNE
44kJ · 14°
0.4m · 10s
NNE
44kJ · 14°
0.4m · 10s
NNE
44kJ · 14°
0.4m · 10s
NNE
44kJ · 14°
0.4m · 10s
NNE
44kJ · 14°
0.4m · 10s
NNE
44kJ · 14°
0.4m · 9s
N
40kJ · 6°
0.4m · 9s
N
40kJ · 6°
0.4m · 9s
N
40kJ · 6°
0.4m · 9s
N
40kJ · 6°
0.4m · 9s
N
40kJ · 6°
0.4m · 9s
N
40kJ · 6°
0.4m · 9s
N
40kJ · 6°
Wind (Hourly)
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW17 km/hOnshore
NNW19 km/hOnshore
NNW19 km/hOnshore
NNW19 km/hOnshore
NNW19 km/hOnshore
NNW19 km/hOnshore
NNW19 km/hOnshore
N20 km/hOnshore
N20 km/hOnshore
N20 km/hOnshore
N20 km/hOnshore
N20 km/hOnshore
N20 km/hOnshore
N20 km/hOnshore
Tide & Entry
1.58m ▲
Tide Caution ({tide}m)
1.98m ▲
Tide Caution ({tide}m)
2.16m ▲
Tide Caution ({tide}m)
2.07m ▼
Tide Caution ({tide}m)
1.74m ▼
Tide Caution ({tide}m)
1.25m ▼
Tide Caution ({tide}m)
0.75m ▼
Tide Caution ({tide}m)
0.35m ▼
Tide Caution ({tide}m)
0.16m ▼
Tide Caution ({tide}m)
0.23m ▲
Tide Caution ({tide}m)
0.55m ▲
Tide Caution ({tide}m)
1.03m ▲
Tide Caution ({tide}m)
1.54m ▲
Tide Caution ({tide}m)
1.96m ▲
Tide Caution ({tide}m)
2.18m ▲
Tide Caution ({tide}m)
2.12m ▼
Tide Caution ({tide}m)
1.81m ▼
Tide Caution ({tide}m)
1.32m ▼
Tide Caution ({tide}m)
0.77m ▼
Tide Caution ({tide}m)
0.30m ▼
Tide Caution ({tide}m)
0.03m ▼
Tide Caution ({tide}m)
0.02m ▲
Tide Caution ({tide}m)
0.28m ▲
Tide Caution ({tide}m)
0.74m ▲
Tide Caution ({tide}m)
18 Compared Slots18 Compared Slots
Day // TimeMon 08 NovTue 09 NovWed 10 NovThu 11 NovFri 12 NovSat 13 Nov
Slot
AM
08:00
PM
14:00
NIGHT
20:00
AM
08:00
PM
14:00
NIGHT
20:00
AM
08:00
PM
14:00
NIGHT
20:00
AM
08:00
PM
14:00
NIGHT
20:00
AM
08:00
PM
14:00
NIGHT
20:00
AM
08:00
PM
14:00
NIGHT
20:00
Rating (0-10)
3.8
4.4
4.4
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
3.8
4.4
4.4
4.4
1st Swell [Sets]
Primary Breaking
1.3m
[1.7m]
1.5m
[1.9m]
1.4m
[1.8m]
1.2m
[1.5m]
1.3m
[1.7m]
1.2m
[1.5m]
1.0m
[1.3m]
1.1m
[1.4m]
1.0m
[1.3m]
1.0m
[1.3m]
1.1m
[1.4m]
1.1m
[1.4m]
1.2m
[1.5m]
1.3m
[1.7m]
1.2m
[1.5m]
1.4m
[1.8m]
1.5m
[1.9m]
1.4m
[1.8m]
1st Swell Dir
NNW335°
NNW340°
NNW332°
NNW335°
NNW340°
NNW332°
NNW335°
NNW340°
NNW332°
NNW335°
NNW340°
NNW332°
NNW335°
NNW340°
NNW332°
NNW335°
NNW340°
NNW332°
1st Period (s)12s13s12s12s12s12s11s12s12s11s12s12s12s12s12s12s13s12s
1st Power (kJ)562 kJ810 kJ652 kJ479 kJ562 kJ479 kJ305 kJ402 kJ332 kJ305 kJ402 kJ402 kJ479 kJ562 kJ479 kJ652 kJ810 kJ652 kJ
2nd Swell
Swell 2 (Size · s · kJ)
0.6m · 10sNW100 kJ · 313°
0.6m · 15sNW150 kJ · 318°
0.6m · 10sNW100 kJ · 310°
0.5m · 10sNW69 kJ · 313°
0.6m · 14sNW140 kJ · 318°
0.5m · 10sNW69 kJ · 310°
0.4m · 9sNW40 kJ · 313°
0.5m · 14sNW97 kJ · 318°
0.4m · 10sNW44 kJ · 310°
0.4m · 9sNW40 kJ · 313°
0.5m · 14sNW97 kJ · 318°
0.5m · 10sNW69 kJ · 310°
0.5m · 10sNW69 kJ · 313°
0.6m · 14sNW140 kJ · 318°
0.5m · 10sNW69 kJ · 310°
0.6m · 10sNW100 kJ · 313°
0.6m · 15sNW150 kJ · 318°
0.6m · 10sNW100 kJ · 310°
3rd Swell
Swell 3 (Size · s · kJ)
0.4m · 9sN40 kJ · 9°
0.4m · 10sNNE44 kJ · 14°
0.4m · 9sN40 kJ · 6°
0.3m · 9sN22 kJ · 9°
0.4m · 9sNNE40 kJ · 14°
0.3m · 9sN22 kJ · 6°
0.3m · 8sN20 kJ · 9°
0.3m · 9sNNE22 kJ · 14°
0.3m · 9sN22 kJ · 6°
0.3m · 8sN20 kJ · 9°
0.3m · 9sNNE22 kJ · 14°
0.3m · 9sN22 kJ · 6°
0.3m · 9sN22 kJ · 9°
0.4m · 9sNNE40 kJ · 14°
0.3m · 9sN22 kJ · 6°
0.4m · 9sN40 kJ · 9°
0.4m · 10sNNE44 kJ · 14°
0.4m · 9sN40 kJ · 6°
Wave ShapeAligned PulseAligned PulseAligned PulseAligned PulseAligned PulseAligned PulseSingle TrainAligned PulseAligned PulseSingle TrainAligned PulseAligned PulseAligned PulseAligned PulseAligned PulseAligned PulseAligned PulseAligned Pulse
Wind
NNW17 km/h9 kt
NNW19 km/h10 kt
N20 km/h11 kt
NNW19 km/h10 kt
NNW20 km/h11 kt
N24 km/h13 kt
NNW19 km/h10 kt
NNW20 km/h11 kt
N22 km/h12 kt
NNW15 km/h8 kt
NNW17 km/h9 kt
N19 km/h10 kt
NNW15 km/h8 kt
NNW17 km/h9 kt
N17 km/h9 kt
NNW17 km/h9 kt
NNW19 km/h10 kt
N20 km/h11 kt
Wind EffectOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshoreOnshore
Entry / Exit
BouldersTide Caution ({tide}m)
BackwashTide Caution ({tide}m)
BouldersTide Caution ({tide}m)
BouldersTide Caution ({tide}m)
BackwashTide Caution ({tide}m)
BouldersTide Caution ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
BouldersTide Caution ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
In PocketTide OK ({tide}m)
High / Low Tide
HI: 02:10 (2.2m)HI: 14:20 (2.2m)
LO: 08:15 (0.1m)LO: 20:35 (-0.0m)
HI: 02:45 (2.2m)HI: 14:55 (2.2m)
LO: 08:50 (0.2m)LO: 21:05 (0.0m)
HI: 03:20 (2.1m)HI: 15:25 (2.1m)
LO: 09:20 (0.2m)LO: 21:35 (0.1m)
HI: 03:45 (2.1m)HI: 15:50 (2.0m)
LO: 09:50 (0.3m)LO: 22:00 (0.2m)
HI: 04:15 (2.0m)HI: 16:20 (1.9m)
LO: 10:20 (0.4m)LO: 22:30 (0.3m)
HI: 04:45 (1.9m)HI: 16:45 (1.8m)
LO: 10:50 (0.5m)LO: 22:55 (0.4m)