Winds Aloft Forecasts: How to Read and Use Them
Decode the winds and temperatures aloft forecast: the DDff+TT groups, 9900 winds, issuance times, and how to pick a smarter cruising altitude.
The winds and temperatures aloft forecast, known as the FB (formerly FD), is a text forecast of wind direction, wind speed, and temperature at fixed altitudes over a network of selected stations across the US, issued four times a day for 6-, 12-, and 24-hour forecast periods. It exists to answer three planning questions: what altitude gives us the best groundspeed, how much fuel the wind will cost or save, and where the freezing level sits.
It’s one input among several in a full preflight weather briefing, but it’s the one that decides your altitude, so it pays to read it fluently rather than squinting at coded groups on the ramp.
Reading the coded format
Each entry in the table packs wind direction, wind speed, and temperature into one coded group. The structure is DDff+TT:
- DD: wind direction in tens of degrees, referenced to true north
- ff: wind speed in knots
- +TT / -TT: temperature in degrees Celsius
Decoded first, as always. This group says the wind is forecast from 240° true at 31 knots, temperature -8°C:
2431-08
A few conventions trip people up the first time.
9900 means light and variable. When the forecast speed is below 5 knots, the group reads 9900 and no direction is given. 9900+15 is light and variable wind, +15°C.
Winds over 99 knots get folded into the direction. Two digits can’t hold a 3-digit speed, so for speeds of 100 through 199 knots the coder adds 50 to the direction and subtracts 100 from the speed. You decode by reversing it. This group is wind from 230° at 119 knots, temperature -60°C:
731960
Work it out: 73 - 50 = 23, so 230°. 19 + 100 = 119 knots. Any direction digit pair from 51 through 86 is your cue that the speed is 100 knots or more. Speeds of 200 knots or more are simply coded as 99 (meaning 199 knots or greater).
Blank columns aren’t missing data. No wind is forecast for a level within 1,500 ft of the station elevation, and no temperature within 2,500 ft (the 3,000 ft level never gets a temperature at all). That’s why Denver’s 3,000 and 6,000 ft columns are empty: the field sits at 5,434 ft. The forecast starts where the level is meaningfully above the ground.
Above 24,000 ft, the minus sign disappears. Temperatures up there are always negative, so the sign is dropped to save space. The header says so explicitly: TEMPS NEG ABV 24000. A group of 267233 at FL300 is wind 260° at 72 knots, temperature -33°C.
Here’s a real row from a July afternoon, decoded first. Over Denver, the wind at 9,000 ft is light and variable, +20°C. At 12,000 ft it’s from 110° at 6 knots, +12°C; at 18,000 ft, from 150° at 7 knots, -4°C. At FL300 the group 261728 reads 260° at 17 knots, -28°C, with the minus sign dropped:
FT 3000 6000 9000 12000 18000 24000 30000
DEN 9900+20 1106+12 1507-04 2107-13 261728
The two blank columns are the station-elevation rule at work, and that 9900 at 9,000 ft is the light-and-variable code in the wild.
When it’s issued and which forecast to use
The FB is computer-generated from the 0000Z, 0600Z, 1200Z, and 1800Z model data, so a fresh set comes out four times a day. Each set contains 6-, 12-, and 24-hour forecasts, and each forecast carries a valid time and a “for use” window in its header:
DATA BASED ON 221800Z
VALID 230000Z FOR USE 2000-0300Z. TEMPS NEG ABV 24000
Read that header every time. The valid time is the single moment the forecast targets; the for-use window is the span the forecasters consider it representative. If your ETA falls outside the window, pull the next period rather than stretching this one.
Using it: altitude, fuel, and the freezing level
The FB earns its place in the briefing when you do arithmetic with it. Say we’re flying a 200 NM leg on a course of 250° true at 110 KTAS, and the forecast shows 230° at 19 knots at 6,000 ft and 240° at 33 knots at 9,000 ft. The headwind component works out to about 18 knots at 6,000 and about 32 knots at 9,000. That’s a groundspeed of 92 versus 78 knots: 2:10 en route at 6,000, 2:34 at 9,000. Twenty-four minutes and roughly four gallons at 10 GPH, for the same airplane on the same day. Westbound on a day like that, low wins unless terrain or turbulence says otherwise. Flip the course eastbound and the same math argues for climbing.
Two more things fall out of the same table:
The surface wind picture. The FB doesn’t forecast surface wind — that’s the TAF’s job, and our METAR vs TAF guide covers which product owns which question. But the lowest usable FB level tells you what the surface wind can become once daytime mixing brings that air down. A 3,000 ft forecast of 30 knots over a calm morning field is a standing invitation to run the arrival numbers through a crosswind calculator before you commit to an afternoon ETA.
Temperature versus standard. ISA at 9,000 ft is about -3°C. The Denver row above forecasts +20°C there, which is ISA+23: the airplane will climb and cruise like it’s several thousand feet higher than the altimeter claims. When the aloft temps run that warm, run your takeoff and cruise numbers through a density altitude calculator instead of trusting book figures for the indicated altitude. Why warm air steals that much performance, and where it bites hardest, is covered in density altitude: the invisible performance thief.
The vertical profile has its own stories:
- Shear layers. A big jump in direction or speed between adjacent levels (say 9900 at 3,000 ft under 250° at 35 knots at 6,000) marks a shear layer. Expect the bumps during climb and descent right where the wind changes, and treat a strong low-level jump over a calm surface as a low-level wind shear cue for departure and arrival.
- Inversions. Temperature normally falls about 2°C per thousand feet. When the FB shows it rising with altitude instead, that’s an inversion: smooth and often hazy below the top, and frequently the same shear layer described above riding along it.
- Freezing level. Interpolate where the temperature crosses 0°C. The Denver row shows +12°C at 12,000 ft and -4°C at 18,000, which puts the freezing level near 16,500 ft. In visible moisture, that number, not the MEA, is the one that decides your altitude.
Where to get it now
The official text product lives on aviationweather.gov’s Wind/Temp data page, which serves the FB by region, forecast cycle, and level. For a graphical view of the same data, the GFA’s winds tab draws wind barbs and temperatures at your chosen altitude, which makes the vertical shear picture much easier to see than columns of digits. Flight planning apps and briefing services carry the same FB data, usually already decoded along your route.
What the FB can’t tell you
Know its limits before you lean on it:
- It’s a point forecast. The FB covers a fixed set of stations; everything between them is interpolation. Mountain ranges between two stations will do things to the wind that no six-digit group admits to.
- The levels are coarse. From 12,000 to 18,000 ft is a 6,000 ft gap. A shear layer or inversion can live entirely between two forecast levels and never appear in the table.
- It goes stale. The 24-hour forecast in the current set is built on model data up to a day old. If convection or a front moved faster than the model expected, the FB doesn’t know. Compare the forecast against PIREPs and what your groundspeed actually reads in cruise, and re-brief when the next cycle drops.
- No gusts, no turbulence. The FB gives a mean wind. What it feels like along the way comes from the AIRMETs, PIREPs, and your own reading of the shear between levels.
Ten minutes with the FB during planning usually settles the altitude question before you ever load the airplane. The pilots who get burned by winds aloft are rarely the ones who read the forecast wrong — they’re the ones who didn’t read it at all.
Common questions
- What does 9900 mean in a winds aloft forecast?
- Light and variable. When the forecast speed is below 5 knots the group reads 9900 and no direction is given, so 9900+15 is light and variable wind at plus 15 degrees Celsius. It is one of three conventions worth memorising, alongside the folded coding for winds over 99 knots and the dropped minus sign above 24,000 ft.
- Why are some winds aloft columns blank?
- Because the level is too close to the ground to be meaningful. No wind is forecast for a level within 1,500 ft of the station elevation, and no temperature within 2,500 ft, with the 3,000 ft level never carrying a temperature at all. That is why Denver, at 5,434 ft, has empty 3,000 and 6,000 ft columns.
- How do I find the freezing level from the FB?
- Interpolate between the levels where temperature crosses zero. A row showing plus 12 degrees at 12,000 ft and minus 4 degrees at 18,000 ft puts the freezing level near 16,500 ft. In visible moisture that number, rather than the MEA, is the one that decides your altitude.