Historical temperature is one of the most commonly requested weather measurements. It is used for everything from climate and seasonal analysis to energy planning, agriculture, insurance, retail, construction, event analysis, and investigating the weather conditions at the time of a specific event.
Visual Crossing provides historical, current, and forecast temperature through the Visual Crossing Weather Data tools and the Visual Crossing Weather API.
If you do not already have an account, you can sign up for Visual Crossing Weather.
Historical availability varies by location, date, weather element, and source. For current coverage information, see the Visual Crossing Weather Data Availability Guide.
What temperature measures are available?
The three primary temperature fields are:
temp
tempmax
tempmin
These represent:
| Field | Description |
|---|---|
temp | Temperature, or mean temperature for an aggregated period |
tempmax | Maximum temperature for the period |
tempmin | Minimum temperature for the period |
For a daily weather record, tempmax is the maximum temperature for the day and tempmin is the minimum temperature for the day.
The daily temp value is the mean temperature across the day.
Mean temperature is not necessarily the midpoint of the high and low
It is common to estimate a daily mean temperature using:
(tempmax + tempmin) / 2
However, that should not be assumed to be the same as the Visual Crossing daily:
temp
value.
The daily temp value represents the mean temperature over the day, while tempmax and tempmin represent the daily extrema. If your analysis requires the Visual Crossing daily mean temperature, use the returned temp value directly.
Daily versus hourly temperature
The resolution you should use depends on the question you are trying to answer.
Daily data is useful for questions such as:
- What was the average temperature each day?
- What was the daily high temperature?
- What was the daily low temperature?
- How did temperature vary across a month, season, or year?
Hourly data is useful for questions such as:
- What was the temperature at 2 PM?
- How quickly did temperatures rise during the morning?
- What was the temperature during a particular event?
- How long did temperatures remain above or below a threshold?
For hourly records, the primary temperature field is:
temp
Daily records additionally provide:
tempmax
tempmin
What units are used for temperature?
Temperature units are controlled by the request’s unit group.
The commonly used unit groups include:
unitGroup=us
unitGroup=metric
unitGroup=uk
For temperature:
| Unit group | Temperature unit |
|---|---|
us | °F |
metric | °C |
uk | °C |
The selected unit group also controls the units of other weather elements such as precipitation, wind speed, and snow.
What is feels-like temperature?
In addition to measured or modeled air temperature, Visual Crossing provides apparent temperature using:
feelslike
For daily records, you can also retrieve:
feelslikemax
feelslikemin
feelslike accounts for heat-index effects during sufficiently hot and humid conditions and wind-chill effects during sufficiently cold and windy conditions. Daily feelslike values represent the mean apparent temperature for the day.
For example:
temp = 94°F
feelslike = 105°F
indicates conditions where humidity is making the apparent temperature warmer than the measured air temperature.
Similarly:
temp = 25°F
feelslike = 14°F
indicates cold and windy conditions where wind chill makes the apparent temperature lower.
For more information, see Where Can I Find Historical Heat Index and Wind Chill Data?.
What is dew point?
Temperature is often useful when analyzed together with:
dew
humidity
dew is the dew-point temperature, while humidity represents relative humidity.
These fields can help explain why two days with the same air temperature may feel very different.
For example:
temp = 88°F
humidity = 35%
may feel quite different from:
temp = 88°F
humidity = 75%
even though the measured air temperature is identical.
How can I find temperature for a specific location and date?
The easiest no-code option is the Visual Crossing Weather Query Builder.
Enter the location, choose a historical date or date range, select the weather elements you need, and run the query.
You can then:
- Preview the results in your browser
- Download the weather data
- Open the data in Excel or another analysis tool
- Generate a Weather API request for automation
For basic temperature analysis, start with:
datetime
temp
tempmax
tempmin
For a broader analysis, you might also include:
feelslike
feelslikemax
feelslikemin
humidity
dew
Look up historical temperature by address
Visual Crossing can resolve a street address, city, postal code, landmark, or other location description.
For example:
London, UK
or:
1600 Pennsylvania Avenue NW, Washington, DC
When using an address, check the returned:
resolvedAddress
latitude
longitude
to confirm that the intended location was selected.
For more information, see How to Look Up Weather by Address.
Look up historical temperature by latitude and longitude
You can also specify an exact coordinate using:
latitude,longitude
For example:
38.9697,-77.3850
Coordinates are useful for:
- Weather stations
- Farms
- Construction sites
- Research locations
- Remote locations
- IoT devices
- Locations without a useful street address
Using coordinates also eliminates ambiguity introduced by geocoding place names or addresses.
For more information, see How to Look Up Weather by Latitude and Longitude.
Retrieve historical temperature using the Timeline Weather API
For automated applications, use the Timeline Weather API.
The basic historical request structure is:
/timeline/[location]/[date1]/[date2]
For example:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London,UK/2026-07-01/2026-07-07?unitGroup=metric&include=days&elements=datetime,tempmax,tempmin,temp&key=YOUR_API_KEY
This request retrieves daily:
datetime
tempmax
tempmin
temp
for London between July 1 and July 7, 2026.
The Timeline API uses the same endpoint for historical weather, current conditions, forecasts, and statistical weather data.
For complete details, see the Timeline Weather API documentation.
Retrieve hourly historical temperature
To retrieve hourly temperature, request:
include=hours
For example:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London,UK/2026-07-01?unitGroup=metric&include=hours&elements=datetime,temp&key=YOUR_API_KEY
The resulting hourly records can be used to examine temperature changes throughout the day.
For example:
{
"datetime": "14:00:00",
"temp": 24.7
}
Hourly data is particularly useful for event analysis, energy applications, transportation, agriculture, and situations where the exact timing of temperature conditions matters.
Retrieve recent historical temperature dynamically
The Timeline API also supports dynamic date periods.
For example:
last30days
can be used to retrieve the most recent 30 days:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London,UK/last30days?unitGroup=metric&include=days&elements=datetime,tempmax,tempmin,temp&key=YOUR_API_KEY
Other dynamic date values include periods such as:
today
yesterday
lastyear
For more information, see the Visual Crossing documentation for dynamic date periods.
Retrieve current temperature
Current conditions can be requested using:
include=current
For example:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London,UK?unitGroup=metric&include=current&elements=datetime,temp,feelslike,humidity,dew&key=YOUR_API_KEY
Current conditions are returned in:
currentConditions
and can include:
temp
feelslike
humidity
dew
Current conditions are based on the most recent suitable data available for the requested location.
Retrieve forecast temperature
Forecast temperature is retrieved through the same Timeline API.
For example:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London,UK?unitGroup=metric&include=days&elements=datetime,tempmax,tempmin,temp,feelslike&key=YOUR_API_KEY
This makes it possible to use a consistent data structure when an application needs to transition from historical temperature to current conditions and forecasts.
How historical temperature is created for a location
Historical weather for an arbitrary geographic point is not necessarily a direct copy of a single nearest weather station.
Visual Crossing can evaluate multiple observations and sources when creating historical weather for a requested location.
Factors can include:
- Distance
- Station quality
- Elevation
- Observation availability
- Weather element
- Source quality
The stations or sources contributing to the weather record can also change through time.
For more information, see How Historical Weather Data Records Are Created from Local Weather Station Observations.
Why nearby stations can report different temperatures
Two nearby weather stations do not necessarily record identical temperatures.
Differences can result from:
- Elevation
- Urban versus rural surroundings
- Distance from water
- Terrain
- Vegetation
- Instrument exposure
- Observation timing
- Local weather conditions
For example, a downtown weather station may remain warmer overnight than a rural station several miles away due to the urban heat-island effect.
In mountainous areas, elevation differences can produce large temperature differences over short geographic distances.
This is why simply selecting the geographically nearest station is not always the best way to estimate temperature at an arbitrary location.
Temperature and elevation
Air temperature generally decreases with elevation through much of the lower atmosphere, although the exact relationship varies with atmospheric conditions.
This can be important when requesting weather for:
- Mountain communities
- Ski areas
- Valleys
- Elevated roadways
- Remote terrain
A station several miles away at a similar elevation may sometimes represent a location better than a closer station with a large elevation difference.
Historical records can be updated
Recent historical temperature values can change after they are first published.
Additional observations may arrive, provisional reports may be replaced, or upstream sources may issue corrections.
For analyses involving very recent historical weather, it is possible for a later query to return an updated value.
For more information, see How Historical Weather Data Is Updated.
Missing temperature values
Visual Crossing uses null or empty values when temperature data is unavailable.
A missing value should not be interpreted as:
0
Zero is a valid temperature.
For example:
temp = 0°C
represents an actual temperature of zero degrees Celsius.
A null value means the requested temperature value is unavailable.
Weather-element availability can vary by location and historical period.
Example: analyzing a heat wave
Suppose you want to study a historical heat wave.
A useful daily dataset might contain:
datetime
tempmax
tempmin
temp
feelslikemax
humidity
dew
You could then analyze:
- Consecutive days above a temperature threshold
- Maximum daily temperature
- Overnight minimum temperatures
- Mean daily temperature
- Apparent temperature
- Humidity and dew point
Hourly data can provide additional insight into:
- When the maximum occurred
- How quickly temperatures rose
- How long a threshold was exceeded
- Whether overnight cooling occurred
Example: analyzing freezing conditions
For cold-weather applications, you might retrieve:
datetime
tempmin
tempmax
temp
feelslikemin
and identify days where:
tempmin <= 32°F
or:
tempmin <= 0°C
Depending on the application, hourly data may be preferable because a daily minimum alone does not tell you how long freezing conditions lasted.
This distinction can matter for:
- Agriculture
- Infrastructure
- Transportation
- Construction
- Freeze protection
Example: calculating heating or cooling metrics
Historical temperature is often used to create derived business or energy measures.
For example, temperature data can support calculations involving:
- Heating degree days
- Cooling degree days
- Growing degree days
- Threshold exceedance hours
- Freeze hours
- Heat exposure
For these calculations, make sure that the temperature resolution and aggregation method match the intended analysis.
Comparing temperature across years
Historical temperature can be used to compare the same period across multiple years.
For example, you might compare July temperatures for:
2022
2023
2024
2025
2026
using:
tempmax
tempmin
temp
This can help identify:
- Unusually warm periods
- Unusually cold periods
- Seasonal variation
- Year-to-year differences
- Long-term trends
For formal climate analysis, make sure that your reference period and statistical methodology are appropriate for the question being studied.
Historical temperature versus climate normals
Historical temperature records describe what occurred on specific dates.
Climate statistics answer a different question:
What is normally expected for this location and time of year?
For example:
July 4, 2025 tempmax
is a historical observation.
A 30-year mean July 4 maximum temperature is a climate statistic.
Both can be useful, but they should not be treated as the same type of data.
For information about climate summaries and statistical weather, see How to Create Monthly and Annual Climate Summaries and Normals.
Summary
Historical temperature is available through the Visual Crossing Weather Data tools and Timeline Weather API.
The main temperature fields are:
temp
tempmax
tempmin
For daily records:
tempmaxis the maximum temperature.tempminis the minimum temperature.tempis the mean temperature for the day.
Do not assume that daily temp is simply:
(tempmax + tempmin) / 2
For apparent-temperature analysis, also consider:
feelslike
feelslikemax
feelslikemin
and for atmospheric moisture:
humidity
dew
Use daily records for long-term summaries and hourly records when the timing of temperature changes matters.
You can retrieve temperature using Visual Crossing Weather Data or programmatically through the Timeline Weather API.
For current field definitions, see the Weather Data Documentation.
If you have questions about a specific temperature query or dataset, contact Visual Crossing Support.

