Historical cloud cover and visibility data are useful for transportation, aviation, solar-energy analysis, construction, insurance, research, outdoor recreation, and astronomy. Whether you need to investigate poor visibility on a particular day, analyze the effect of cloud cover on solar-panel performance, or identify clear nights for stargazing, Visual Crossing provides historical cloud and visibility data for locations worldwide.
You can retrieve the data using the Visual Crossing Weather Query Builder for an interactive, no-code download or through the Timeline Weather API for automated use in applications, scripts, and data pipelines. Historical weather records are available for many locations back to 1970, although the exact availability and completeness of cloud-cover and visibility data vary by location, date, and available weather sources.
What cloud and visibility measures are available?
The two main weather elements are:
| Weather element | API field | Description |
|---|---|---|
| Cloud cover | cloudcover | The percentage of the sky covered by clouds |
| Visibility | visibility | The estimated horizontal distance at which a prominent object can be seen and identified |
Both elements are available as hourly values and daily summaries. They can also be requested alongside temperature, precipitation, wind, humidity, solar radiation, and other weather elements in the same query.
What does visibility measure?
Visibility describes how far a person can see and identify a prominent object through the atmosphere. It is a horizontal measurement rather than a measurement of how clearly the sky can be seen overhead.
Visibility can be reduced by:
- Fog and mist
- Haze
- Smoke
- Dust
- Heavy rain or snow
- Other suspended particles or atmospheric conditions
A low visibility value indicates that objects become difficult to identify over relatively short distances. Visibility may fall close to zero in dense fog, heavy precipitation, smoke, or severe atmospheric pollution.
Visibility values should be treated as estimates rather than exact boundaries. Observing practices, instruments, local terrain, and reporting methods can vary between weather stations and data sources.
For applications in which short periods of poor visibility matter, such as aviation, road transport, construction, or incident investigation, hourly data is usually more useful than a daily average. A brief period of dense fog can be obscured by otherwise good visibility during the rest of the day.
What does cloud cover measure?
Cloud cover reports the percentage of the visible sky covered by clouds at a particular location and time.
The values range from:
- 0% – completely clear skies
- 100% – the sky is completely covered by clouds
Cloud cover includes clouds across the sky at different altitudes, but it does not provide information about cloud type or cloud-base height. It also does not directly account for haze, smoke, air pollution, humidity, or light pollution.
This distinction is important when interpreting cloud-cover data. For example:
- Low cloud cover does not always guarantee good astronomical visibility if the atmosphere is hazy or smoky.
- High cloud cover does not by itself describe how much solar radiation reaches the ground.
- Two periods with the same cloud-cover percentage can have different effects depending on cloud thickness, altitude, and type.
For solar-energy analysis, cloud cover is often most useful when evaluated alongside solarradiation, solarenergy, temperature, and other atmospheric conditions.
Cloud cover percentages and oktas
Cloud cover is sometimes reported in oktas, which divide the sky into eighths. For example, 0 oktas represents a clear sky, 4 oktas indicates approximately half the sky is covered, and 8 oktas represents complete cloud cover.
The Timeline Weather API returns cloudcover as a percentage from 0% to 100%, rather than as an okta value. A rough conversion can be made by dividing the percentage by 12.5, although reported okta categories and percentage values should not always be treated as exact equivalents.
| Oktas | Approximate cloud cover |
|---|---|
| 0 | 0% |
| 1 | 12.5% |
| 2 | 25% |
| 3 | 37.5% |
| 4 | 50% |
| 5 | 62.5% |
| 6 | 75% |
| 7 | 87.5% |
| 8 | 100% |
In aviation reports, cloud amount may also be described using categories such as FEW, SCT, BKN, and OVC. These categories describe cloud coverage in ranges rather than an exact percentage.
What are the units and ranges for historical cloud and visibility data?
Cloud cover is always reported as a percentage from 0% to 100%.
Visibility is reported using the distance unit associated with the selected API unitGroup. For example:
| Unit group | Visibility unit |
|---|---|
us | Miles |
metric | Kilometres |
uk | Kilometres |
base | Base SI distance unit |
If no unitGroup is specified, the Timeline Weather API defaults to us.
For example, a visibility value of 8.5 represents:
- 8.5 miles when using
unitGroup=us - 8.5 kilometres when using
unitGroup=metricorunitGroup=uk
Cloud cover remains a percentage regardless of the unit group.
How are daily cloud cover and visibility values calculated?
Hourly values describe conditions during individual hours.
At the daily level:
cloudcoveris the mean of the available hourly cloud-cover values for the day.visibilityis the mean of the available hourly visibility values for the day.
A daily visibility value is therefore not necessarily the lowest visibility experienced during that day. If you need to identify fog, smoke, or other short-duration visibility restrictions, retrieve the hourly records and calculate the minimum or another appropriate statistic for your application.
Similarly, daily cloud cover provides a broad summary of the day. Hourly data is better when you need to determine when clouds developed, cleared, or affected a particular event.
How can I find cloud and visibility data for a specific location and date?
Visual Crossing provides two main ways to retrieve historical cloud and visibility data:
- Use the Weather Query Builder to view and download data without writing code.
- Use the Timeline Weather API to retrieve the data programmatically.
Downloading cloud and visibility data with the Weather Query Builder
The Visual Crossing Weather Query Builder is the simplest option when you want to inspect the data online or download it for use in Excel, a database, or an analysis tool.
To retrieve the data:
- Open the Weather Query Builder and sign in or create a free account.
- Enter an address, city, postal code, or latitude and longitude.
- Select the historical date or date range.
- Choose hourly or daily data.
- Run the query and review the results.
- Download the dataset in CSV or Excel-compatible format.
The downloaded dataset can include cloud cover and visibility together with other relevant weather elements. For example, a solar-energy analysis might also include solar radiation, solar energy, temperature, and precipitation.
For a transportation investigation, you might include visibility, precipitation, wind speed, weather conditions, and severe-weather events.
Retrieving cloud and visibility data through the Weather API
The Timeline Weather API lets you retrieve historical cloud cover and visibility automatically from a script, application, command-line tool, or data pipeline.
A basic request follows this format:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/[location]/[start-date]/[end-date]?key=YOUR_API_KEY
For example, the following request retrieves hourly and daily cloud-cover and visibility data for London from January 1 through January 7, 2026:
https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London/2026-01-01/2026-01-07?unitGroup=metric&include=days,hours&elements=datetime,cloudcover,visibility&key=YOUR_API_KEY&contentType=json
The important parameters are:
| Parameter | Purpose |
|---|---|
location | The address, place name, postal code, or latitude and longitude |
start-date | The first date to retrieve |
end-date | The final date to retrieve |
unitGroup | Selects the measurement system |
include | Selects daily, hourly, or other response sections |
elements | Limits the response to selected weather fields |
key | Your Visual Crossing API key |
contentType | Selects JSON or CSV output |
The example uses:
include=days,hours
to request both daily and hourly records, and:
elements=datetime,cloudcover,visibility
to limit the response to the date or time, cloud cover, and visibility.
A simplified hourly JSON record might look like this:
{
"datetime": "14:00:00",
"visibility": 9.7,
"cloudcover": 82.4
}
With unitGroup=metric, this indicates an estimated visibility of 9.7 kilometres and cloud cover of 82.4%.
To retrieve the same data as CSV, change the output format:
contentType=csv
CSV output is convenient for loading data into Excel, databases, business-intelligence tools, and data-science applications. JSON is often preferable for websites, mobile applications, Python, Java, JavaScript, and other software integrations.
Can I retrieve other weather data in the same request?
Yes. One advantage of the Timeline Weather API is that cloud cover and visibility can be retrieved alongside other weather elements in a single request.
For example:
elements=datetime,temp,humidity,precip,windspeed,visibility,cloudcover,solarradiation,conditions
This can help provide context around the cloud and visibility values.
Depending on the application, useful related fields include:
conditions– A readable summary of the weathericon– A standardized weather-condition categoryprecip– Precipitation amountpreciptype– The type of precipitationhumidity– Relative humiditywindspeed– Wind speedsolarradiation– Solar radiationsolarenergy– Accumulated solar energysunriseandsunset– Sunrise and sunset timesmoonphase,moonrise, andmoonset– Moon information
For example, low visibility combined with high humidity may indicate fog or mist, while low visibility accompanied by rain or snow may be related to precipitation.
How far back is historical cloud and visibility data available?
Visual Crossing provides historical weather data for locations worldwide, with many records extending back to 1970.
However, the availability and completeness of individual weather elements depend on the requested location and period. A location may have temperature data for a date even when cloud-cover or visibility observations are unavailable.
Historical availability can vary because:
- Not every weather station reports every weather element.
- Reporting standards and equipment have changed over time.
- Some stations begin or stop reporting particular measurements.
- The available weather sources vary by region and historical period.
- Individual hourly observations may be missing or incomplete.
Applications should therefore be able to handle null or unavailable values, particularly when working with older historical records or locations with limited nearby observations.
For large projects, it is a good idea to test several representative locations and dates before processing the complete dataset.
Does the value come from a weather station at the exact requested location?
Not necessarily.
The Timeline Weather API resolves the requested address or place to a geographic location and selects the best available weather data for that point and time. Depending on the requested period and location, the result may use nearby weather-station observations and other available weather sources.
This makes it possible to request data for an address, business location, solar installation, road, or geographic coordinate even when no weather station is positioned at that exact point.
For historical analysis, remember that visibility and cloud cover describe the best available estimate for the requested location. They should not automatically be interpreted as a direct instrument reading taken at the precise coordinates supplied in the request.
Common uses for historical cloud and visibility data
Solar-energy analysis
Historical cloud-cover data can help explain changes in solar-panel output and support site comparisons. For the best analysis, combine cloud cover with solar radiation, solar energy, temperature, and precipitation.
Aviation and transportation
Hourly visibility data can be used to identify periods of fog, haze, smoke, heavy precipitation, or other conditions that may have affected flights, roads, railways, and shipping operations.
Construction and outdoor operations
Visibility, cloud cover, precipitation, wind, and temperature can help explain delays, safety restrictions, or changes in outdoor working conditions.
Insurance and incident investigation
Historical records can help reconstruct the weather conditions surrounding a collision, property claim, operational disruption, or other event at a specific time and place.
Astronomy and stargazing
Cloud cover can help identify potentially clear observing periods. It should be considered alongside visibility, humidity, precipitation, moon phase, moonrise and moonset, twilight, and local light pollution.
Research and climatology
Researchers can use daily or hourly data to compare cloudiness and visibility across locations, seasons, and years. When creating long-term statistics, account for missing observations and changes in reporting availability.
Frequently asked questions
Is cloud cover the same as visibility?
No. Cloud cover measures the percentage of the sky covered by clouds. Visibility measures how far a prominent object can be seen horizontally through the atmosphere.
A location can have low cloud cover but poor visibility due to haze, smoke, dust, or fog. It can also have high cloud cover while retaining good horizontal visibility beneath the cloud layer.
Is cloud cover the same as solar radiation?
No. Cloud cover describes how much of the sky is covered, while solar radiation measures the solar energy reaching the surface.
Cloud cover can influence solar radiation, but cloud thickness, altitude, type, and atmospheric conditions also affect how much solar energy reaches the ground.
Does visibility include fog?
Visibility reflects the combined effect of conditions that restrict horizontal sight, including fog, mist, smoke, haze, dust, rain, and snow. It does not separately identify which condition caused the reduction.
Use related weather fields such as humidity, precipitation, precipitation type, and conditions to provide additional context.
Is daily visibility the worst visibility during the day?
No. The daily visibility value is a mean of the available hourly values. Retrieve hourly data when you need to identify the lowest visibility or the exact timing of a restricted-visibility event.
Can cloud-cover or visibility values be missing?
Yes. Not every source reports every weather element for every hour. Availability can vary by location, date, station, and historical period. Software integrations should allow for null or unavailable values.
Can I download cloud and visibility data to Excel?
Yes. The Weather Query Builder lets you create a historical weather query and download the results for use in Excel or other analysis tools. You can also request CSV output directly from the Timeline Weather API.
Can I retrieve multiple weather elements at once?
Yes. Cloud cover and visibility can be combined with temperature, precipitation, wind, humidity, solar radiation, astronomical data, and many other elements in the same Timeline Weather API request.
Summary
Historical cloud cover and visibility data are available through the Visual Crossing Weather Query Builder and Timeline Weather API.
Use:
cloudcoverto retrieve the percentage of the sky covered by clouds.visibilityto retrieve the estimated horizontal viewing distance.- Hourly data to investigate short periods of cloud or restricted visibility.
- Daily data for broader summaries and long-term analysis.
- The Weather Query Builder for interactive searches and downloadable datasets.
- The Timeline Weather API for automated JSON or CSV retrieval.
Cloud cover and visibility are related but measure different aspects of atmospheric conditions. For the most useful analysis, combine them with related elements such as precipitation, humidity, wind, solar radiation, and weather conditions.
Historical coverage is available worldwide, with many locations extending back to 1970. The availability of individual cloud-cover and visibility values can vary by place, date, and source, so applications should account for occasional missing data.
To get started, open the Weather Query Builder to create a historical weather query or review the Timeline Weather API documentation to retrieve the data programmatically.

