How Historical Weather Data Records are Created from Local Weather Station Observations

Visual Crossing Weather Data offers historical weather data coverage for most locations in the world. To provide as accurate a historical weather data picture as possible, the product looks at multiple nearby weather stations so that the most accurate weather picture is created. 

This article explains the process used to create the historical weather records, how to see the detail of the weather stations used for a particular record and how to modify the data definition settings so that more or less weather stations are included.

Creating weather record from multiple nearby weather stations

Historical weather data sets within Visual Crossing Weather Data are created by analyzing the weather stations in the proximity of the requested location. The maximum distance that the system will search is 50 miles by default but can be configured. The weather data engine will analyze each of the surrounding weather stations for each hour in the requested data. Once the engine has the list of stations with data, the weather records will be statistically combined up to a maximum number of stations defined by the user (the default is three stations). 

Records for weather stations closer to the requested location will be given more weight than the records for weather stations that are further away.

For example, if I request the historical weather data for the town of Reston in Virginia, USA. We can display the available weather stations on the data set. Doing this results in the following list of weather stations:


LEESBURG EXECUTIVE AIRPORT, (Id=72405503714, 22.0KM, 12%)


In this case, the historical weather query was run with a maximum of up to three weather stations. The three closest stations that reported data for this particular hour were Washington Dulles International Airport (8.5km/5.3miles away from Reston), Leesburg Executive Airport (22km/13.7miles away) and Gaithersburg Air Park (28km/17.4miles away)

Stations that are closer to the requested location are weighted more strongly than those further away. Therefore Washington Dulles Airport is given a very strong weighting (81%). Mathematically the historical temperature this can be found as:

0.81*(Temp at Washington Dulles)+0.12*(Temp at Leesburg)+0.07*(Temp at Gaithersburg)

So if we consider a case where the temperature reported at Washington Dulles is 85F, Leesburg is 80F and Gaithersburg 75F. We could could estimate Reston’s temperature based on the arithmetic mean of 80F for Reston’s temperature. However we use the above the weighting towards the closest weather station. This results in a weighted value of 83.7F. This makes sense because we would expect the temperature to be nearer to that of the weather station that is closest to the requested location.

This behavior can be modified by the user by modifying the maximum number of weather stations to be considered and the maximum distance to search for weather stations.

Note that this analysis is performed on a hour by hour basis. If a weather station is unavailable for a particular hour, then the next closest will be considered, up to the maximum distance. Therefore it is usual for the weather station list to vary from row to row. It is common to see more than the maximum number requested weather stations in the station information when viewing aggregated historical values; for example,  if one of the weather stations was unavailable when retrieving daily level data for part of the day. In this case, a fourth station is used to fill in the data. The station list for that particular day of weather data will include four stations.

Are historical observations pre-cached to a grid?

We do not pre-analyze weather observations and create a cached grid. Each row of observation data is calculated at query time to reflect the latest station observation data and requested parameters. This approach ensures that we offer flexible approaches to querying the data with different station search parameters. In addition, by always querying the most up-to-date station observations, the latest, most accurate data is used.

Viewing the weather station details for historical weather data set

Information on the weather stations used by any historical query is available as part of the weather data set result set. You can view this information within the browser using the query builder:

Query builder weather station information

The query builder shows a map and table of the weather stations used in the query. The information includes the location (as a longitude, latitude coordinate), the name, id and distance to the station from the requested point of information.

Modifying the weather station search count and search radius

If you need finer control over the weather stations that are used, the “Maximum number of weather stations” and “Maximum distance to stations” settings allow you to control maximum number of weather stations to consider:

In the query builder web site, the maximum distance to stations setting is specified in kilometers or miles depending on your chosen unit group setting. The distance is always specified as a value in meters for API queries.

There are a number of reasons why these settings can be useful:

Looking up historical data in remote locations – if the location of interest is not well served by weather stations, increasing the distance to search can identify useful weather station data.

Investigating a single weather station – if you are interested in understanding the weather data for  particular weather station, you reduce the maximum number of weather stations to one and reduce the search radius to a small radius. You can also query directly by station ID.

Why do I see more stations than the number requested in the ‘maxStations’ parameter?

The maximum station parameter described above sets the requested number of stations per hour. Therefore if one station is used for most observations, but then is a missing data for an hour, another station is used to replace that data. In this case, while the ‘maxStations’ setting was one, two stations were returned in the station information.

Additional sources of historical weather data

In addition to observations made at nearby weather stations, the weather data may also include additional sources of data. These include remote data from satellites and radar. Such remote sources are able to provide full coverage even when a station is not available nearby. For more information on the remote data sets, please consult our guide on including remote data in your data requests.

Questions or need help?

If you have a question or need help, please post on our actively monitored forum for the fastest replies. You can also contact us via our support site or drop us an email at

2 Replies to “How Historical Weather Data Records are Created from Local Weather Station Observations”

  1. I ran a history for 10/15-19/2020 for 13813 last week and got substantially different results than i did when i ran it again this week. The newer dataset was obviously mistaken, having high temp for that period as 58 F. ????

    1. Thank you for your question. We have reviewed the data for US Zip code 13813 and compared it with the high temperature from the official daily summaries from NOAA who collate the data in the US. When we compare the data from station BINGHAMTON/BROOM, NY (Id=KBGM,22.0mi), the high temperatures are agreeing to within 1 degree fahrenheit. A slight difference is expected because we interpolate multiple nearby stations based on distance.

      If you see large difference, could you please review the article I think that I’m seeing bad weather data. What should I do? and send the requested information at the bottom of the article to support (at so that we can investigate further? When contacting support, please use your account registered email.

      Visual Crossing Support

Comments are closed.