Contrail Forecast Tool

This tool uses public weather data to estimate whether aircraft contrails are likely to form and persist at typical cruising altitudes on a given day.

Future dates are limited to 7 days.

About the Results

How to interpret the results

For your chosen date and location, the tool downloads hourly upper-air data from a weather model at multiple altitude levels up to roughly 45,000 ft. It then evaluates conditions in the typical passenger-jet cruise band (about 27,000–44,000 ft) and assigns each hour-and-altitude point a contrail likelihood score.

What the tool is checking

At each hour and altitude, it asks two practical questions:

1) Can a contrail form at all?
Contrails require air that is cold enough, and sufficiently humid, for jet exhaust to cool and reach saturation so ice crystals can form. If the air is not cold/humid enough, the result is formation unlikely.

2) If one forms, is it likely to persist?
If formation is possible, the tool then estimates whether the surrounding air is moist enough with respect to ice for those ice crystals to survive and grow rather than evaporate quickly. This is reported using an ice-humidity indicator (RHi) and grouped into persistence “bins”.

Reading the dot-grid chart

  • X-axis (left to right): hour of day (0–23, local time)
  • Y-axis (bottom to top): cruising altitude band (27k–44k ft)
  • Each dot: one hour at one flight level (a 1,000 ft band)

The colour/score (0–4) is the interpretation:

  • Formation unlikely: air is not cold/humid enough for contrails to form.
  • Forms, but unlikely to persist: contrails may appear briefly, then fade (dry with respect to ice).
  • Forms, short-lived: persistence is possible but marginal.
  • Forms, likely persistent: contrails are more likely to last and spread.
  • Forms, very likely persistent: strong ice-supersaturation, favouring long-lived contrails and potential contrail cirrus.

How to use it in practice

  • A vertical streak of high values (3–4) at a given hour suggests a deep layer where persistent contrails are plausible at multiple cruising levels.
  • A thin band of 3–4 suggests contrails may persist only at certain altitudes (aircraft a little higher/lower may see different outcomes).
  • Mostly 0s means contrails are unlikely, even if aircraft are overhead.
  • Lots of 1s and 2s means you may see short contrails that break up quickly.

This tool indicates atmospheric favourability, not whether aircraft will actually be present at that place and time.

How This Tool Works

Technical Summary 

The tool estimates contrail favourability using hourly upper-air weather-model data for the selected location and date. It queries Open-Meteo’s GFS endpoint for one day and retrieves vertical profiles at multiple pressure levels spanning typical jet cruising altitudes. For each hour, it interpolates atmospheric conditions to standard flight levels (FL270–FL440) and applies two checks:

  1. Formation (can a contrail initiate)
  2. Persistence (would it survive and grow)

Data source and variables

For the chosen latitude/longitude and date, the tool requests hourly values on pressure levels 350, 325, 300, 275, 250, 225, 200, 175, 150 hPa, retrieving:

  • Temperature at level L: T_L(h) in degrees C
  • Relative humidity with respect to water at level L: RHw_L(h) in percent
  • Geopotential height at level L: z_L(h) in metres above mean sea level

Model times are returned in local time (timezone auto), and the tool evaluates hours 0 to 23.

Flight-level grid and interpolation

Flight levels are evaluated in 1,000 ft bands:

  • FL = 270, 280, …, 440

Each flight level is converted to an approximate geometric height target:

  • feet = FL * 100
  • z_target_m = feet * 0.3048

For each hour, the tool forms a height-sorted profile of points (z_i, T_i, RHw_i) from the pressure levels, then linearly interpolates T and RHw to z_target_m using the two bracketing heights:

  • X(z_target) = X0 + ((z_target – z0) / (z1 – z0)) * (X1 – X0)

where X is either T or RHw. If z_target is outside the available profile range, the tool treats that point as unfavourable (to avoid false positives).

Converting humidity over water to humidity over ice (RHi)

Persistence is assessed using relative humidity with respect to ice:

  • RHi = RHw * esw(T) / esi(T)

where esw(T) is saturation vapour pressure over liquid water and esi(T) is saturation vapour pressure over ice.

The tool uses stable empirical approximations (Buck-type) for saturation vapour pressure in hPa, with T in degrees C:

  • esw(T) = 6.1121 * exp( (18.678 – (T / 234.5)) * (T / (257.14 + T)) )
  • esi(T) = 6.1115 * exp( (23.036 – (T / 333.7)) * (T / (279.82 + T)) )

Formation proxy and persistence scoring (0–4)

Each hour x flight level cell is assigned an index v in {0,1,2,3,4}.

Formation threshold (pass/fail)

A Schmidt–Appleman-style proxy using thresholds:

  • formation_pass = (T <= T_thresh) AND (RHw >= RHw_thresh)

Default constants:

  • T_thresh = -40 C
  • RHw_thresh = 60 percent

If formation fails, then v = 0 regardless of RHi.

Persistence categories (RHi ranges)

If contrail formation is possible, the tool groups the calculated RHi into fixed ranges to indicate how likely the contrail is to persist.

  • if RHi < 90: v = 1
  • if 90 <= RHi < 100: v = 2
  • if 100 <= RHi < 110: v = 3
  • if RHi >= 110: v = 4

Interpretation

  • v = 0 indicates contrail initiation is unlikely at that hour/altitude.
  • v = 1 to 4 indicates contrails could form, with higher values representing increasingly ice-supersaturated air and a higher chance of persistence and spreading.

Practical limitations

  • Results reflect modelled atmospheric favourability, not whether aircraft will actually be present.
  • Flight levels are a pressure-altitude convention; using geometric height for interpolation is an approximation.
  • Geopotential height is above mean sea level, not height above ground.