Secure websites use HTTPS
Scam alert
Waitlist for API key is now open. Register here for higher rate limits, priority support and maintenance notifications. Rate limits will be rolled out from 1 September 2025 onwards.
Historical 24-hour Weather Forecast (2019)
Data from Jan 2019 to Dec 2019
Last updated: 16 Apr 2025, 12:57 SGT
Historical 24 hour weather forecast data for Singapore. The data includes various attributes related to the forecast, such as forecast date, wind speed, relative humidity, temperature, and forecast descriptions. All timestamps are provided in Singapore Time (SGT), formatted in ISO 8601.
⠀
Disclaimer: This dataset may contain missing records and has not undergone quality control procedures applied to climate data and records. For official climate records or climate data reports, please contact sales_climo@nea.gov.sg. Please note that fees may apply for data and report preparation.
Date Date (YYYY-MM-DD) | Timestamp Text | Update Timestamp Text | Wind Speed High Numeric | Wind Speed Low Numeric | Wind Speed Direction Text | Forecast Text Text | Forecast Code Text | Relative Humidity High Numeric | Relative Humidity Low Numeric | Valid Period Text Text | Valid Period Start Text | Valid Period End Text | Temperature High Numeric | Temperature Low Numeric | Time Period Text Text | Time Period Start Text | Time Period End Text | South Forecast Text Text | South Forecast Code Text | North Forecast Text Text | North Forecast Code Text | East Forecast Text Text | East Forecast Code Text | Central Forecast Text Text | Central Forecast Code Text | West Forecast Text Text | West Forecast Code Text |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
(Null)0.0% | (Null)0.0% | (Null)0.0% | (Null)0.0% 20.032.4% 25.030.6% 15.021.9% 30.010.3% | (Null)0.0% 10.046.3% 15.024.7% 5.024.4% 20.04.4% | (Null)0.0% SSE20.9% NE14.9% NNE11.7% SE9.7% | (Null)0.0% Thundery Showers69.2% Showers6.8% Fair & Warm5.9% Passing Showers4.4% | (Null)0.0% TL69.2% SH6.8% FW5.9% PS4.4% | (Null)0.0% 95.083.5% 90.016.4% 85.00.1% | (Null)0.0% 60.036.9% 55.034.3% 65.012.6% 50.012.2% | (Null)0.0% 6 AM 30 Mar - 6 AM 31 Mar0.3% 6 PM 12 Jan - 6 PM 13 Jan0.3% 6 AM 8 May - 6 AM 9 May0.3% 6 PM 11 Jun - 6 PM 12 Jun0.3% | (Null)0.0% 2019-01-12T18:00:00+08:000.3% 2019-03-30T06:00:00+08:000.3% 2019-05-08T06:00:00+08:000.3% 2019-06-11T18:00:00+08:000.3% | (Null)0.0% 2019-01-13T18:00:00+08:000.3% 2019-03-31T06:00:00+08:000.3% 2019-05-09T06:00:00+08:000.3% 2019-06-12T18:00:00+08:000.3% | (Null)0.0% 34.042.2% 33.033.0% 35.08.2% 32.08.1% | (Null)0.0% 24.046.7% 25.035.5% 26.012.5% 23.04.4% | (Null)0.0% | (Null)0.0% 2019-06-12T06:00:00+08:000.2% 2019-04-01T12:00:00+08:000.2% 2019-05-08T12:00:00+08:000.2% 2019-04-01T18:00:00+08:000.2% | (Null)0.0% 2019-06-12T12:00:00+08:000.2% 2019-04-01T18:00:00+08:000.2% 2019-05-08T18:00:00+08:000.2% 2019-06-12T06:00:00+08:000.2% | (Null)0.0% Partly Cloudy (Day)23.1% Thundery Showers19.5% Partly Cloudy (Night)18.8% Cloudy11.6% | (Null)0.0% PC23.1% TL19.5% PN18.8% CL11.6% | (Null)0.0% Thundery Showers26.8% Partly Cloudy (Night)18.7% Partly Cloudy (Day)16.9% Cloudy10.5% | (Null)0.0% TL26.8% PN18.7% PC16.9% CL10.5% | (Null)0.0% Thundery Showers22.5% Partly Cloudy (Day)20.5% Partly Cloudy (Night)19.1% Cloudy10.8% | (Null)0.0% TL22.5% PC20.5% PN19.1% CL10.8% | (Null)0.0% Thundery Showers21.9% Partly Cloudy (Day)21.5% Partly Cloudy (Night)18.9% Cloudy11.4% | (Null)0.0% TL21.9% PC21.5% PN18.9% CL11.4% | (Null)0.0% Thundery Showers26.2% Partly Cloudy (Night)18.5% Partly Cloudy (Day)17.4% Cloudy10.8% | (Null)0.0% TL26.2% PN18.5% PC17.4% CL10.8% |
2019-01-01 | 2019-01-01T05:43:00+08:00 | 2019-01-01T06:06:14+08:00 | 30.0 | 15.0 | NW | Passing Showers | PS | 95.0 | 55.0 | 6 AM 1 Jan - 6 AM 2 Jan | 2018-01-01T06:00:00+08:00 | 2018-01-02T06:00:00+08:00 | 34.0 | 24.0 | 6 am to Midday 1 Jan | 2018-01-01T06:00:00+08:00 | 2018-01-01T12:00:00+08:00 | Partly Cloudy (Day) | PC | Partly Cloudy (Day) | PC | Partly Cloudy (Day) | PC | Partly Cloudy (Day) | PC | Partly Cloudy (Day) | PC |
2019-01-01 | 2019-01-01T05:43:00+08:00 | 2019-01-01T06:06:14+08:00 | 30.0 | 15.0 | NW | Passing Showers | PS | 95.0 | 55.0 | 6 AM 1 Jan - 6 AM 2 Jan | 2018-01-01T06:00:00+08:00 | 2018-01-02T06:00:00+08:00 | 34.0 | 24.0 | Midday to 6 pm 1 Jan | 2018-01-01T12:00:00+08:00 | 2018-01-01T18:00:00+08:00 | Passing Showers | PS | Passing Showers | PS | Passing Showers | PS | Passing Showers | PS | Passing Showers | PS |
2019-01-01 | 2019-01-01T05:43:00+08:00 | 2019-01-01T06:06:14+08:00 | 30.0 | 15.0 | NW | Passing Showers | PS | 95.0 | 55.0 | 6 AM 1 Jan - 6 AM 2 Jan | 2018-01-01T06:00:00+08:00 | 2018-01-02T06:00:00+08:00 | 34.0 | 24.0 | 6 pm 1 Jan to 6 am 2 Jan | 2018-01-01T18:00:00+08:00 | 2018-01-02T06:00:00+08:00 | Partly Cloudy (Night) | PN | Partly Cloudy (Night) | PN | Partly Cloudy (Night) | PN | Partly Cloudy (Night) | PN | Partly Cloudy (Night) | PN |
2019-01-01 | 2019-01-01T11:41:00+08:00 | 2019-01-01T12:06:14+08:00 | 30.0 | 15.0 | NW | Windy | WD | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | Midday to 6 pm 1 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-01T18:00:00+08:00 | Windy | WD | Windy | WD | Windy | WD | Windy | WD | Windy | WD |
2019-01-01 | 2019-01-01T11:41:00+08:00 | 2019-01-01T12:06:14+08:00 | 30.0 | 15.0 | NW | Windy | WD | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | 6 pm 1 Jan to 6 am 2 Jan | 2019-01-01T18:00:00+08:00 | 2019-01-02T06:00:00+08:00 | Windy | WD | Windy | WD | Windy | WD | Windy | WD | Windy | WD |
2019-01-01 | 2019-01-01T11:41:00+08:00 | 2019-01-01T12:06:14+08:00 | 30.0 | 15.0 | NW | Windy | WD | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | 6 am to Midday 2 Jan | 2019-01-02T06:00:00+08:00 | 2019-01-02T12:00:00+08:00 | Windy | WD | Windy | WD | Windy | WD | Windy | WD | Windy | WD |
2019-01-01 | 2019-01-01T13:25:00+08:00 | 2019-01-01T13:36:14+08:00 | 30.0 | 15.0 | NW | Windy | WD | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | Midday to 6 pm 1 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-01T18:00:00+08:00 | Windy | WD | Windy | WD | Windy | WD | Windy | WD | Windy | WD |
2019-01-01 | 2019-01-01T13:25:00+08:00 | 2019-01-01T13:36:14+08:00 | 30.0 | 15.0 | NW | Windy | WD | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | 6 pm 1 Jan to 6 am 2 Jan | 2019-01-01T18:00:00+08:00 | 2019-01-02T06:00:00+08:00 | Windy | WD | Windy | WD | Windy | WD | Windy | WD | Windy | WD |
2019-01-01 | 2019-01-01T13:25:00+08:00 | 2019-01-01T13:36:14+08:00 | 30.0 | 15.0 | NW | Windy | WD | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | 6 am to Midday 2 Jan | 2019-01-02T06:00:00+08:00 | 2019-01-02T12:00:00+08:00 | Windy | WD | Windy | WD | Windy | WD | Windy | WD | Windy | WD |
2019-01-01 | 2019-01-01T14:25:00+08:00 | 2019-01-01T14:36:15+08:00 | 30.0 | 15.0 | NW | Passing Showers | PS | 95.0 | 55.0 | 12 PM 1 Jan - 12 PM 2 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-02T12:00:00+08:00 | 34.0 | 24.0 | Midday to 6 pm 1 Jan | 2019-01-01T12:00:00+08:00 | 2019-01-01T18:00:00+08:00 | Passing Showers | PS | Passing Showers | PS | Passing Showers | PS | Passing Showers | PS | Passing Showers | PS |
No results found
Title | Column name | Data type | Unit of measure | Description |
---|---|---|---|---|
Date | date | Date (YYYY-MM-DD) | - | - |
Timestamp | timestamp | Text | - | - |
Update Timestamp | update_timestamp | Text | - | - |
Wind Speed High | wind_speed_high | Numeric | - | - |
Wind Speed Low | wind_speed_low | Numeric | - | - |
Wind Speed Direction | wind_speed_direction | Text | - | - |
Forecast Text | forecast_text | Text | - | - |
Forecast Code | forecast_code | Text | - | - |
Relative Humidity High | relative_humidity_high | Numeric | - | - |
Relative Humidity Low | relative_humidity_low | Numeric | - | - |
This code can be used to test a sample API query. It retrieves the data catalogue of this dataset. For a complete guide on query parameters and syntax, please refer to the API documentation. Try it out on your browser to see the response schema.
import requests
dataset_id = "d_d60871bc3b7e3889672ed0f1d53e7fc0"
url = "https://data.gov.sg/api/action/datastore_search?resource_id=" + dataset_id
response = requests.get(url)
print(response.json())
This dataset can be reused and cited in research publications.
16 Apr 2025
Free forever for personal or commercial use, under the Open Data Licence.