Sunday
✅ excellent conditions
Main blocker: Sea temperature
Malaysia · Updated Sat 05:03 (+08) · Source: Snapshot
The skinny
Go in the best window Report Sun 04:23Perhentian Islands has a usable snorkeling window around Sun 08:00. The main thing to watch is sea temperature.
Score: 8.3/10
Best time: Sun 08:00
Main risk: Sea Temperature
Best morning signal: Sun 11:00 (Excellent).
Best afternoon signal: Sun 12:00 (Excellent). Peak afternoon wind is about 3.6 m/s.
Good window is available today
Next safe window: Sun 00:00–11:00 (52% of next 72h are suitable)
Sunday
✅ excellent conditions
Main blocker: Sea temperature
Monday
✅ excellent conditions
Main blocker: Sea temperature
Tuesday
✅ excellent conditions
Main blocker: Sea temperature
Next safe window starts at Sun 00:00 until 11:00.
Main blockers across the next 72 hours:
Drift estimate from wind, swell, current and warm water.
Low drift risk now.
warm water supports seasonal jellyfish activity; surface drift/current is noticeable; local shoreline exposure is not mapped yet.
Sightings override the model: if you see small purple jellyfish with long trailing tentacles, treat them as sting-capable and give them space.
Next early morning high tide: Sun 16:00
Sun 03:00, Sun 16:00, Mon 04:00
Viewing live forecast
Sat 20:00 – Tue 20:00 (+08)
Best snorkel score is 0.83 around Sun 12:00; 12 of 24 hours are good, fair, or excellent.
Score trend, higher is better. Excellent ≥ 0.72, good 0.55–0.72, fair 0.35–0.55.
Tap a chart to load just that series.
24/24 sampled hours stay at or below 0.36m (range 0.1m to 0.14m).
Wind is at or below 5.4m/s in 24/24 sampled hours (range 0.2 to 4.07m/s).
Tides range from 0.24m to 1.36m; 2 of 24 hours are in or near peak slack windows.
We score each hour from 0 to 1 using daylight and these weighted components:
| Time | Wave (m) | Wind (m/s) | Sea temp (°C) | Status |
|---|---|---|---|---|
| Sat 21:00 | 0.10 · good | 0.87 · good | 31.10 · out of range | poor |
| Sat 22:00 | 0.10 · good | 2.15 · good | 31.10 · out of range | poor |
| Sat 23:00 | 0.10 · good | 0.20 · good | 31.10 · out of range | poor |
| Sun 00:00 | 0.10 · good | 0.59 · good | 31.10 · out of range | good |
| Sun 01:00 | 0.10 · good | 0.73 · good | 31.20 · out of range | good |
| Sun 02:00 | 0.12 · good | 0.82 · good | 31.30 · out of range | good |
| Sun 03:00 | 0.12 · good | 0.60 · good | 31.50 · out of range | excellent |
| Sun 04:00 | 0.12 · good | 0.46 · good | 31.60 · out of range | excellent |
| Sun 05:00 | 0.12 · good | 1.01 · good | 31.70 · out of range | excellent |
| Sun 06:00 | 0.12 · good | 2.36 · good | 31.80 · out of range | excellent |
| Sun 07:00 | 0.12 · good | 2.86 · good | 31.90 · out of range | excellent |
| Sun 08:00 | 0.12 · good | 3.58 · good | 31.90 · out of range | excellent |
| Sun 09:00 | 0.12 · good | 2.78 · good | 31.80 · out of range | excellent |
| Sun 10:00 | 0.12 · good | 1.03 · good | 31.80 · out of range | excellent |
| Sun 11:00 | 0.14 · good | 0.96 · good | 31.80 · out of range | excellent |
| Sun 12:00 | 0.14 · good | 2.49 · good | 31.70 · out of range | poor |
| Sun 13:00 | 0.14 · good | 3.03 · good | 31.70 · out of range | poor |
| Sun 14:00 | 0.12 · good | 4.07 · good | 31.60 · out of range | poor |
| Sun 15:00 | 0.12 · good | 3.81 · good | 31.50 · out of range | poor |
| Sun 16:00 | 0.12 · good | 3.40 · good | 31.40 · out of range | poor |
| Sun 17:00 | 0.12 · good | 2.14 · good | 31.40 · out of range | poor |
| Sun 18:00 | 0.12 · good | 2.68 · good | 31.30 · out of range | poor |
| Sun 19:00 | 0.12 · good | 3.02 · good | 31.30 · out of range | poor |
| Sun 20:00 | 0.12 · good | 3.79 · good | 31.30 · out of range | poor |
| Sun 21:00 | 0.12 · good | 2.35 · good | 31.30 · out of range | poor |
| Sun 22:00 | 0.12 · good | 2.19 · good | 31.30 · out of range | poor |
| Sun 23:00 | 0.10 · good | 2.46 · good | 31.30 · out of range | poor |
| Mon 00:00 | 0.10 · good | 1.99 · good | 31.30 · out of range | excellent |
| Mon 01:00 | 0.10 · good | 2.00 · good | 31.40 · out of range | excellent |
| Mon 02:00 | 0.10 · good | 2.47 · good | 31.50 · out of range | excellent |
| Mon 03:00 | 0.10 · good | 1.36 · good | 31.60 · out of range | excellent |
| Mon 04:00 | 0.10 · good | 0.96 · good | 31.70 · out of range | excellent |
| Mon 05:00 | 0.10 · good | 1.15 · good | 31.70 · out of range | good |
| Mon 06:00 | 0.10 · good | 2.07 · good | 31.80 · out of range | good |
| Mon 07:00 | 0.10 · good | 2.95 · good | 31.80 · out of range | good |
| Mon 08:00 | 0.10 · good | 3.61 · good | 31.80 · out of range | good |
| Mon 09:00 | 0.10 · good | 3.87 · good | 31.70 · out of range | good |
| Mon 10:00 | 0.10 · good | 3.76 · good | 31.70 · out of range | good |
| Mon 11:00 | 0.12 · good | 3.66 · good | 31.70 · out of range | good |
| Mon 12:00 | 0.12 · good | 3.30 · good | 31.60 · out of range | poor |
| Mon 13:00 | 0.12 · good | 3.25 · good | 31.60 · out of range | poor |
| Mon 14:00 | 0.12 · good | 3.83 · good | 31.60 · out of range | poor |
| Mon 15:00 | 0.12 · good | 3.70 · good | 31.50 · out of range | poor |
| Mon 16:00 | 0.12 · good | 3.57 · good | 31.50 · out of range | poor |
| Mon 17:00 | 0.12 · good | 2.84 · good | 31.50 · out of range | poor |
| Mon 18:00 | 0.12 · good | 2.84 · good | 31.50 · out of range | poor |
| Mon 19:00 | 0.12 · good | 2.20 · good | 31.50 · out of range | poor |
| Mon 20:00 | 0.12 · good | 2.41 · good | 31.40 · out of range | poor |
| Mon 21:00 | 0.12 · good | 2.69 · good | 31.40 · out of range | poor |
| Mon 22:00 | 0.12 · good | 2.01 · good | 31.40 · out of range | poor |
| Mon 23:00 | 0.12 · good | 1.81 · good | 31.40 · out of range | poor |
| Tue 00:00 | 0.12 · good | 1.31 · good | 31.40 · out of range | excellent |
| Tue 01:00 | 0.12 · good | 0.50 · good | 31.50 · out of range | excellent |
| Tue 02:00 | 0.14 · good | 0.51 · good | 31.60 · out of range | excellent |
| Tue 03:00 | 0.14 · good | 0.87 · good | 31.80 · out of range | excellent |
| Tue 04:00 | 0.14 · good | 0.14 · good | 31.90 · out of range | excellent |