Documentation hourly, daily, monthly and annual in-situ ground-based meteorological observations in the Netherlands
KNMI collects in-situ meteorological observations in the Netherlands aggregated into hourly, daily, monthly, and annual datasets. These data are derived from the 10-minute automatic measurements since the early 1990s, hourly observations from 1951, and daily observations from 1901. The earliest data starts in 1901 with one station and gradually increases to the current measurement network of more than 50 automatic weather stations.
The weather stations measure essential climate variables (ECVs), surface precipitation, pressure, global radiation, temperature, water vapor, wind speed and direction, clouds, and visibility. Sunshine duration and potential evapotranspiration are calculated from the ECVs. When applicable, minima, maxima, means, and sums are defined or calculated.
Purpose
These datasets are meant to provide meteorological observations in the Netherlands. Distinction is made between quickly available hourly and daily datasets which have only passed operational quality control, and datasets which have passed through manual validation(see figure under "Data aggregation and validation flow", at the bottom of the page).
Using these datasets KNMI can calculate statistics to observe the climate in the Netherlands. Their use is not limited to climate science, and they are also intended for applications outside of meteorology or climatology.
Timestamps in the file and filename are stored in UTC. For the Netherlands, local time is UTC+1 (CET) and during daylight saving times local time is UTC+2 (CEST).
The timestamp in the files indicates the end of the measuring interval preceding that timestamp. The filenames use an abbreviated timestamp indicating the total interval. See the table below for examples.
Individual variables may be measured and aggregated over a different time interval. This can be shorter than the interval of the file. This is denoted in the description of the variable and the `measurementType.duration` field of the EDR metadata.
Table 1: Examples of how different timestamps are displayed
Type
Aggregation period
Filename
NetCDF and EDR
Hourly
2025-01-02T23:00:00Z
2025-01-03T00:00:00Z
hourly-observations-20250102-23.nc
2025-01-03T00:00:00Z
Daily
2025-01-02T00:00:00Z
2025-01-03T00:00:00Z
daily-observations-20250102.nc
2025-01-03T00:00:00Z
Monthly
2024-12-01T00:00:00Z
2025-01-01T00:00:00Z
monthly-observations-202412.nc
2025-01-01T00:00:00Z
Annual
2024-01-01T00:00:00Z
2025-01-01T00:00:00Z
annual-observations-2024.nc
2025-01-01T00:00:00Z
Availability
The unvalidated hourly and daily datasets are updated on a nightly basis with data from the preceding day. Validated hourly and daily datasets are updated during working days and can be delayed up to 10 working days. Validated data can be modified at any moment in the future if further issues are found with the data.
Monthly and yearly datasets are updated after all days in their respective period have been validated and can receive further updates up to months later.
It is highly recommended to use the MQTT Notification Service to be notified when the dataset receives new or updated files, to always get the latest data without unnecessary polling or redownloading.
The datasets are available as NetCDF files. The files can be downloaded via the Open Data API. The datasets are also available as an Environmental Data Retrieval (EDR) collection. The EDR API makes it possible to query the dataset on specific variables in a spatio-temporal manner, without requiring the user to download full datasets.
A historical record of some of the station metadata is kept in the weather stations dataset on the Data Platform. More metadata and information about the stations can also be found in the WMO OSCAR database.
The unvalidated hourly and daily datasets contain both observations from the Netherlands as well as the Caribbean Netherlands (BES islands).
Aggregation methods
Observations from sensors located at Automatic Weather Stations are processed into time series of 10-minute intervals. From these 10-minute intervals the data is subsequently aggregated to hourly, daily, monthly and annual intervals. Aggregated values can only be calculated if data availability of the underlying datasets allow for it.
The methodology for aggregating depends on the variable and can vary. For example: Daily mean pressure is calculated as a mean of the 24 pressure values of that day (midnight to midnight UTC). The monthly maximum wind gust is calculated as the maximum of the daily maximum wind gust values of all days in that month, which in turn are the maximum wind gust values of the 24-hourly wind gust maxima (midnight to midnight UTC).
Manual validation process
The hourly data is thoroughly validated by KNMI experts. Validation is carried out by comparing data with neighboring stations and the expertise of the team. In the event of missing data points, 100% completeness is guaranteed for all land stations for temperature, solar radiation and precipitation. Other variables are filled in as long as the validation team can guarantee sufficient quality. For example, it may not be possible to fill a variable if a sensor has had a prolonged outage.
Manual validation is carried out during working hours and may also be performed in non-chronological order. In some cases, validation may take up to 30 working days. The exact availability of each dataset can be found in the table under "List of the datasets".
Table 2: An overview of the (planned) datasets available on the KNMI Data Platform
Hourly indicator present weather code; 1=manned and recorded (using code from visual observations); 2; 3=manned and omitted (no significant weather phenomenon to report; not available); 4=automatically recorded (using code from visual observations); 5; 6=automatically omitted (no significant weather phenomenon to report; not available); 7=automatically set (using code from automated observations)
Daily vector mean wind direction, representative for 10 meters, in degrees. Wind direction has been weighted with wind speed during aggregation. 360=north; 90=east; 180=south; 270=west; 0=calm/variable
*1: The derived value has been calculated from the hourly timeseries. For this variable the hourly timeseries reflects the measurements in the 1 min up to the whole hour, not all samples measured over the whole period.
*2: The derived value has been calculated from the hourly timeseries. For this variable the hourly timeseries reflects the measurements in the 10 min up to the whole hour, not all samples measured over the whole period.