Hourly, validated and automated in-situ ground-based meteorological observations in the Netherlands
Technical documentation
Introduction
KNMI collects in-situ meteorological surface observations from automatic weather stations situated in the Netherlands, including the BES islands. The network consists of sea and land-based locations, including wind poles and sites at airports. The weather stations report every 10 minutes essential climate variables (ECVs), surface precipitation, pressure, global radiation, temperature, wind speed and direction, clouds, and visibility. Variables such as sunshine duration are calculated from the ECVs. When applicable, minima, maxima, means, and sums are defined or calculated.
These measurements are aggregated into hourly, daily, monthly, and annual datasets. Additional variables such as water vapor and potential evotranspiration are calculated. 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.
This dataset contains meteorological observations since 1951-01-01 at an hourly interval. The data has undergone manual validation by KNMI experts, filling gaps and correcting measurement errors, after which it becomes available. The expert validation can take 1-10 working days to complete. Validated data can be modified at any moment in the future if further issues are found with the data.
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", below).
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.
Because of station relocations and changes in observation techniques, the data in these datasets are inhomogeneous. As a result, these series are not suitable for trend analysis. For climate change studies we refer to the homogenized daily temperature data of the five principal stations in the Netherlands or the updated monthly timeseries of the Central Netherlands Temperature. Trend analyses are presented in KNMI’23 Climate Scenario’s.
Time
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 or longer than the interval of the file. This is denoted in the description of the variable and the measurementType.duration field of the EDR metadata.
Examples of how different timestamps are displayed
| Type | Aggregation period | Filename | NetCDF and EDR |
|---|---|---|---|
| 10-minute | 2025-01-02T23:50:00Z 2025-01-03T00:00:00Z |
KMDS__OPER_P___10M_OBS_L2_202501022350.nc | 2025-01-03T00:00:00Z |
| 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 file without unnecessary polling or redownloading. This is the fastest way to get new files as soon as they are available.
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.
Stations
The stations in these datasets are part of the WMO Integrated Global Observing System (WIGOS). The datasets contain the location, name, and the WIGOS identifier of each station.
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.
Some automatic weather stations consist of multiple sublocations where sensors are installed. This is especially the case at aerodromes with multiple sensors for aviation purposes. This dataset represents measurements from those sensors that are installed with minimal local effects, to ensure representative synoptic observations at each station.
Not all stations are present during the entire runtime of the dataset. Stations have been added and decommissioned since the start of this dataset. The start and end dates can also be found in the station metadata.
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). The aggregation method for any variable can be found in the description of the parameter in the NetCDF, or in the collection metadata of the EDR.
Manual validation process
The hourly data is thoroughly validated by KNMI experts. The quality of the data is assessed based on various criteria. Data is also compared with neighbouring stations and assessed based on the expertise of the validation team. If deviations are found, the data is corrected.
Manual validation is carried out during office hours and may also take place in non-chronological order. In some cases, validation can take up to 30 working days. The exact availability of each dataset can be found in the table under “List of datasets”.
Reasons for correction include:
Missing data
In the case of missing data points, 100% completeness is guaranteed for temperature, solar radiation and precipitation for all land stations. Other variables are supplemented as long as quality can be guaranteed. For example, in the event of a prolonged sensor malfunction, a variable cannot always be supplemented.
Measurement errors
Measurement errors can arise due to faulty sensors, calibration problems or temporary malfunctions in the measuring equipment. These errors are detected by internal quality controls and by comparison with nearby measuring stations. Where possible, incorrect values are corrected or replaced.
Sensor drift
Sensor drift occurs when a sensor gradually starts to measure deviating values over time, for example due to ageing or wear and tear. This type of deviation is identified through long-term analyses and periodic checks, after which corrections are applied or the sensor is replaced.
Undesirable environmental influences
Environmental factors may temporarily differ, resulting in unreliable measurements. This is prevented as much as possible by the placement of the stations, but cannot always be avoided. This may concern maintenance, but animals or vehicles (e.g. helicopters at a drilling platform) can also influence measurements.
Data aggregation and validation flow

List of the datasets
An overview of the (planned) datasets available on the KNMI Data Platform
| Name | Period | Availability | Validated | Published |
|---|---|---|---|---|
| 10-minute-in-situ-meteorological-observations | 10 minutes | Near real-time | ✔️ | |
| hourly-in-situ-meteorological-observations | Hourly | Overnight | ✔️ | |
| hourly-in-situ-meteorological-observations-validated | Hourly | 1-10 working days | ✔️ | ✔️ |
| daily-in-situ-meteorological-observations | Daily | Overnight | ✔️ | |
| daily-in-situ-meteorological-observations-validated | Daily | 1-10 working days | ✔️ | ✔️ |
| monthly-in-situ-meteorological-observations-validated | Monthly | 1-10 working days after the end of the period | ✔️ | ✔️ |
| annual-in-situ-meteorological-observations-validated | Annual | 1-10 working days after end of period | ✔️ | ✔️ |
| daily-manual-precipitation-observations | 24 hours (8 AM – 8 AM) | Throughout the subsequent day | ||
| daily-manual-precipitation-observations-validated | 24 hours (8 AM – 8 AM) | 1-30 days working days after end of period | ✔️ |
Variables in the hourly datasets
All available variables in hourly-in-situ-meteorological-observations
| Parameter | Description | Unit | Observed property | Comment |
|---|---|---|---|---|
| DD | Past 10 minute mean wind direction, representative for 10 meters, in degrees; 360=north; 90=east; 180=south; 270=west; 0=calm; 990=variable | ° | Wind from direction | |
| DR | Hourly precipitation duration, in hours | h | Duration of precipitation | |
| EE | Hourly mean vapor pressure, in hectopascal | hPa | Water vapor partial pressure in air | |
| FF | Past 10 minute mean wind speed, representative for 10 meters, in meters per second | m/s | Wind speed | |
| FH | Hourly mean wind speed, representative for 10 meters, in meters per second | m/s | Wind speed | |
| FX | Hourly maximum wind gust, representative for 10 meters, in meters per second | m/s | Wind speed of gust | |
| IX | 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) | 一 | Indicator present weather code | |
| N | Past 10 minute cloud cover, in okta; 9=sky invisible | okta | Cloud area fraction | |
| P | Past 1 minute mean air pressure at sea level | hPa | Air pressure at mean sea level | |
| Q | Hourly global solar radiation, in joules per square centimeter | J/cm² | Integral wrt time of surface downwelling shortwave flux in air | |
| RH | Hourly precipitation amount, in millimeters | mm | Precipitation amount | *1 |
| SQ | Hourly sunshine duration, calculated from global solar radiation, in hours | h | Duration of sunshine | *2 |
| T | Past 1 minute air temperature at 1.50 meters, in degrees Celsius | °C | Air temperature | |
| T10N | Past 6 hour minimum air temperature at 10 centimeters, in degrees Celsius | °C | Air temperature | |
| TD | Past 1 minute dew point temperature at 1.50 meters, in degrees Celsius | °C | Dew point temperature | |
| U | Past 1 minute relative atmospheric humidity at the time of observation, at 1.50 meters, as percentage | % | Relative humidity | |
| VV | Past 10 minute horizontal visibility; 0=less than 100m; 1=100-200m; 2=200-300m;...; 49=4900-5000m; 50=5-6km; 56=6-7km; 57=7-8km; ...; 79=29-30km; 80=30-35km; 81=35-40km;...; 89=more than 70km | 一 | Visibility in air | |
| W1 | Hourly indicator of fog; 0=no occurrence; 1=occurred | 一 | Fog | |
| W2 | Hourly indicator of rainfall; 0=no occurrence; 1=occurred | 一 | Rain | |
| W3 | Hourly indicator of snow. 0=no occurrence; 1=occurred | 一 | Snow | |
| W5 | Hourly indicator of thunder. 0=no occurrence; 1=occurred | 一 | Thunder | |
| W6 | Hourly indicator of ice formation. 0=no occurrence; 1=occurred | 一 | Ice formation | |
| WW | Hourly present weather code, aggregated with an algorithm using 10-minute ww (WaWa) values from the preceding 6 hours; WMO table 4680 | 一 | Present weather code |
*1: For precipitation amounts the detection minimum is 0.05 millimeters.
*2: For sunshine duration the measured minimum is 0.05 hours.