The three sources
🌐 yr.no · ECMWF
Run by the
Norwegian Meteorological Institute using the European Centre (ECMWF) model at ~1 km resolution. Gives hourly forecasts with a weather symbol and precipitation amount — this is the most granular signal here.
Note on probability: yr.no's public API does not expose a raw precipitation probability number. The % shown here is
derived from the hourly
symbol_code (e.g.
thunderstorm → 85%,
lightrain → 40%,
cloudy → 20%) and the forecast precipitation amount. It's a calibrated heuristic, not a model ensemble output.
The morning window (06–11h) tells you what the model thought overnight. The trading window (12–18h) is what matters for your position. The 12–14 / 14–16 / 16–18 buckets show
when within that window rain is most likely.
Source: api.met.no · locationforecast/2.0/compact via Cloudflare Worker proxy (CORS).
🇸🇬 NEA 24h forecast
The
Meteorological Service Singapore (MSS/NEA) official island-wide daily forecast, issued twice a day (roughly 5am and 5pm SGT). Gives a plain-language condition like "Thundery showers in the afternoon" plus a forecast high temperature.
The
rain likelihood % shown here is derived — it maps NEA's condition text to a probability bucket (e.g. "Thundery showers" → ~75%). This is an approximation, not a model output. Treat it as a qualitative signal that corroborates or contradicts yr.no.
Source: api.data.gov.sg · 24-hour-weather-forecast (no API key, direct).
📍 NEA 2h · Changi area
The most
real-time signal here. NEA publishes a 2-hour outlook for ~50 named areas across Singapore, updated every 30 minutes. This card shows the reading for
Changi specifically — the area that contains WSSS.
Useful for intraday checks: if it says "Thundery showers" at 11:30am, rain is likely already arriving or imminent. The % is again derived from the condition text.
Limitation: "Changi" here is an NEA area zone, not the exact airport station. Convective rain in Singapore is very localised — the station can be dry while Changi area shows showers, or vice versa.
Source: api.data.gov.sg · 2-hour-weather-forecast (no API key, direct).
What the colours mean
Red · 0–40%
— Dry conditions, max temp more likely to run high. Favourable to trade.
Blue · 40–70%
— Moderate risk. Rain possible but not certain. Use judgment, check NEA 2h closer to entry.
Grey · 70–100%
— High rain risk. Rain likely suppresses daily max. Lean toward skipping.
Note: red = dry = good for a high-temp bet. The colours are intentionally inverted from typical "danger = red" convention because in this context, rain is the risk you're avoiding.
How to use this at ~11am entry
01Check yr.no trading window (12–18h) first — this is your primary quantitative signal. Below 40% (red) with a clear morning reading: conditions are dry, trade is likely worth taking.
02Cross-check NEA 24h condition text. If it says "Thundery showers in the afternoon" and yr.no is also above 50%, that's two sources agreeing — strong skip signal. If they disagree, be cautious.
03Look at the bucket breakdown (12–14 / 14–16 / 16–18h) on yr.no. Early afternoon rain (12–14h peak) is worse for daily max suppression than post-4pm rain. If the peak is after 15h, the max may already be set by then.
04At entry time, glance at NEA 2h (Changi). If it already shows "Showers" or "Thundery showers" at 11am, the system is arriving — skip. If it shows "Partly cloudy", conditions are still benign.
05Always confirm against the live METAR above. The current dew point depression (temp − dew point) is a direct humidity read: a wide spread (≥6°C, green) means dry air at the station itself. A tight spread (≤2°C, red) means the boundary layer is saturated — convective rain is much easier to trigger.
Limitations to keep in mind: yr.no's grid point is snapped to the nearest ~1km cell to WSSS coordinates — it is not the exact station sensor. NEA condition text is island-wide or area-wide, not point-specific. The derived % from NEA text is a heuristic mapping, not a model probability. Singapore convective rain is highly localised — a storm cell can drench one side of the airport and leave the WSSS sensor dry. None of these signals are a guarantee; they are inputs to your decision, not a decision system.