top of page

How to Read METARs, TAFs, and PIREPs: Decoding Aviation Weather Reports

Updated: 4 days ago

METARs, TAFs, and PIREPs are the language of aviation weather. If you can decode them fluently, you can extract enormous amounts of information from a few lines of cryptic-looking text. If you can't, you're flying with a fraction of the information you should have. The good news: the format is highly standardized once you learn the codes, and after a few hundred METARs you'll read them as easily as English.


This post covers all three weather report types in practical decoding depth: how to read each line of a METAR, how to interpret TAF change groups (TEMPO, BECMG, FM, PROB), how to format a PIREP, and worked examples that show you exactly how to extract the information you need.



Study this full length lesson (video, podcast, flashcards, and quiz) here: Full Length Lesson >


METAR — Meteorological Aerodrome Report

A METAR is a current weather observation at an airport, issued hourly (or more frequently when conditions change). The METAR format is rigorously standardized internationally, so once you learn the format, you can decode any METAR anywhere.


The METAR Format Breakdown

A typical METAR looks something like this:

KSLC 161854Z 24008KT 10SM FEW040 SCT080 BKN200 22/15 A3008 RMK AO2 SLP188 T02220150

Let's decode it line by line:

Position 1 — Station Identifier: KSLC

The four-letter ICAO airport identifier. K prefix indicates a U.S. airport, then the three-letter airport code. Common examples:

  • KSLC — Salt Lake City International

  • KORD — Chicago O'Hare

  • KSFO — San Francisco International

  • KLAX — Los Angeles International


Position 2 — Date/Time Group: 161854Z

  • First two digits: Day of the month (16th)

  • Next four digits: Time in UTC/Zulu (1854 Z)

  • Z suffix: Zulu time (UTC)

This METAR was observed on the 16th at 1854 Zulu (or 12:54 PM Mountain Daylight Time).


Position 3 — Wind: 24008KT

  • First three digits: Wind direction in degrees true (240°)

  • Next two digits: Wind speed in knots (8 KT)

  • Suffix: KT (knots), some international formats use MPS (meters per second)


Variations:

  • 00000KT — Calm winds

  • VRB05KT — Variable direction at 5 knots

  • 25015G25KT — From 250° at 15 knots, gusting to 25 knots

  • 30025KT 280V340 — From 300° at 25 knots, varying between 280° and 340°


Position 4 — Visibility: 10SM

Visibility in statute miles in the U.S. (or meters internationally).

  • 10SM — 10 statute miles (or more — 10SM is the typical maximum)

  • 2 1/2SM — 2.5 statute miles

  • 1/4SM — Quarter statute mile

  • 1SM — 1 statute mile


If visibility is reduced significantly, runway visual range (RVR) may also be reported: R31L/3500FT means the RVR for runway 31L is 3,500 feet.


Position 5 — Weather Phenomena:

Optional, only included when present. Format uses qualifier + descriptor + phenomenon.


Common weather codes:

  • RA — Rain

  • SN — Snow

  • DZ — Drizzle

  • TS — Thunderstorm

  • GR — Hail (greater than 1/4 inch)

  • GS — Small hail

  • FG — Fog (visibility under 5/8 SM)

  • BR — Mist (visibility 5/8 to 6 SM)

  • HZ — Haze

  • FU — Smoke


Qualifiers (precede the phenomenon):

  • - — Light

  • + — Heavy

  • VC — In the vicinity (within 10 SM)


Descriptors:

  • TS — Thunderstorm

  • SH — Shower

  • FZ — Freezing

  • BL — Blowing

  • DR — Drifting


Examples:

  • -RA — Light rain

  • +TSRA — Heavy thunderstorm with rain

  • FZDZ — Freezing drizzle

  • BLSN — Blowing snow

  • VCTS — Thunderstorm in the vicinity


Position 6 — Sky Condition: FEW040 SCT080 BKN200

Code

Coverage

SKC or CLR

Sky clear

FEW

1-2 oktas (1/8 to 2/8)

SCT

3-4 oktas (3/8 to 4/8)

BKN

5-7 oktas (5/8 to 7/8) — ceiling

OVC

8 oktas (overcast) — ceiling

VV

Vertical visibility (sky obscured)

The number is altitude in hundreds of feet AGL. So:

  • FEW040 — Few clouds at 4,000 feet AGL

  • SCT080 — Scattered at 8,000 feet AGL

  • BKN200 — Broken at 20,000 feet AGL


Special notations:

  • BKN015CB — Broken cumulonimbus at 1,500 feet

  • SCT080TCU — Scattered towering cumulus at 8,000 feet

  • BKN030 OVC080 — Broken at 3,000 (ceiling), overcast at 8,000


Determining ceiling: The lowest BKN, OVC, or VV layer. FEW and SCT layers are NOT ceilings.


Position 7 — Temperature/Dewpoint: 22/15

In Celsius:

  • First number: Temperature (22°C)

  • Second number: Dewpoint (15°C)

  • M prefix indicates negative: M05/M10 = -5°C / -10°C


Spread: 22 - 15 = 7°C, or about 12.6°F. A small spread suggests fog/low ceiling potential.


Position 8 — Altimeter Setting: A3008

  • A prefix

  • Four digits in inches of mercury (with implied decimal): 30.08 inHg


Some international stations use Q1019 for hectopascals (millibars).


Position 9 — Remarks (RMK): RMK AO2 SLP188 T02220150

Optional supplemental information after RMK. Common items:

  • AO2 — Automated station with precipitation discriminator

  • SLP188 — Sea Level Pressure 1018.8 hPa

  • T02220150 — Temperature 22.2°C, dewpoint 15.0°C (more precise than the body)

  • PRESRR/PRESFR — Pressure rising/falling rapidly

  • WSHFT — Wind shift

  • TSB30 — Thunderstorm began at minute 30

  • PK WND 25030/55 — Peak wind 250° at 30 knots at minute :55



TAF — Terminal Aerodrome Forecast

A TAF is a forecast of expected conditions at a specific airport, typically valid for 24-30 hours. TAFs are issued four times daily (00, 06, 12, 18 Z) and are amended as conditions change.


The TAF Format

A typical TAF looks like this:

KSLC 161730Z 1618/1718 26010KT P6SM FEW100 SCT200
   FM170200 24006KT P6SM SCT200
   FM171000 18004KT 4SM BR SCT003 OVC005
   TEMPO 1712/1715 1SM BR
   FM171800 22008KT P6SM SCT080

Let's decode it:

Header line:

  • KSLC — Salt Lake City

  • 161730Z — Issued on the 16th at 1730 Zulu

  • 1618/1718 — Valid from 16th 1800Z through 17th 1800Z (24 hours)


Initial conditions:

  • 26010KT — Wind 260° at 10 knots

  • P6SM — Visibility greater than 6 SM (P = "plus")

  • FEW100 SCT200 — Few clouds at 10,000, scattered at 20,000


Change groups:

FM (FRom) — Used for rapid significant changes. Indicates a complete replacement of forecast conditions starting at the specified time.

  • FM170200 — From 0200Z on the 17th

  • All conditions following FM replace previous forecast

BECMG (BECoMinG) — Used for gradual changes occurring over a period.

  • BECMG 1606/1610 — Becoming, between 06Z and 10Z on the 16th

  • The change occurs gradually within the time window

TEMPO (TEMPOrary) — Temporary fluctuations (typically less than half the time period).

  • TEMPO 1712/1715 — Temporary, between 12Z and 15Z on the 17th

  • Conditions persist less than half the time

  • Returns to underlying forecast outside this period

PROB (PROBability) — Probability of specified conditions.

  • PROB30 1700/1704 — 30% probability between 00Z and 04Z on the 17th

  • Used for less certain forecast elements


Reading the example:

  • From 1800Z on the 16th: 260° at 10 knots, more than 6 SM visibility, few clouds at 10,000, scattered at 20,000

  • From 0200Z on the 17th: 240° at 6 knots, more than 6 SM visibility, scattered at 20,000

  • From 1000Z on the 17th: 180° at 4 knots, 4 SM visibility in mist, scattered at 300, overcast at 500 (IFR ceiling)

  • Temporarily between 1200Z and 1500Z on the 17th: 1 SM visibility in mist (worse conditions during this window)

  • From 1800Z on the 17th: 220° at 8 knots, more than 6 SM, scattered at 8,000 (improving back to VFR)


TAF time periods:

The validity period is shown as YYHH/YYHH where:

  • First YY: Day of month

  • First HH: Hour

  • Slash separates start from end

  • Second YY: Day of month

  • Second HH: Hour


1618/1718 means valid from the 16th at 1800Z to the 17th at 1800Z.



PIREP — Pilot Report

A PIREP is a real-time weather report from a pilot in flight. Unlike METARs and TAFs, PIREPs are based on actual aircraft observations of conditions.


Why PIREPs matter:

  • Real conditions vs. forecast or automated observation

  • The only source for in-flight turbulence and icing observations

  • Help following pilots and ATC understand actual conditions

  • Can lead to AIRMET amendments and flight advisories

  • Save lives by warning others of conditions encountered


Two PIREP types:

UA — Routine PIREP: Standard observations UUA — Urgent PIREP: Severe conditions (severe turbulence, severe icing, low-level wind shear, volcanic ash, tornadoes)

The PIREP Format


PIREPs use a specific format with letter codes for each element:

UA /OV BIL090045 /TM 2240 /FL080 /TP C172 /SK BKN035-TOP060 OVC080-TOP120 /WX FV05SM HZ /TA M03 /WV 27015KT /TB LGT-MOD /IC TRC RIME /RM SMOOTH AT 6500

Decoded:

  • UA — Routine PIREP

  • /OV BIL090045 — Over (location) — 90° at 45 NM from BIL VOR

  • /TM 2240 — Time 2240 Zulu

  • /FL080 — Flight level 8,000 feet

  • /TP C172 — Aircraft type Cessna 172

  • /SK BKN035-TOP060 OVC080-TOP120 — Sky condition: Broken at 3,500 with tops at 6,000; overcast at 8,000 with tops at 12,000

  • /WX FV05SM HZ — Weather: Flight visibility 5 SM in haze

  • /TA M03 — Outside air temperature -3°C (M = minus)

  • /WV 27015KT — Winds 270° at 15 knots

  • /TB LGT-MOD — Light to moderate turbulence

  • /IC TRC RIME — Trace rime icing

  • /RM SMOOTH AT 6500 — Remarks: Smooth at 6,500 feet


Required PIREP elements:

The minimum required information is location, time, altitude, aircraft type, and one weather observation.


Optional elements that add value:

  • /SK — Sky condition (cloud bases, tops, layers)

  • /WX — Weather (visibility, precipitation type)

  • /TA — Air temperature

  • /WV — Winds

  • /TB — Turbulence (NEG, LGT, MOD, SEV, EXTRM, CHOP)

  • /IC — Icing (NEG, TRC, LGT, MOD, SEV)

  • /RM — Remarks (anything else useful)


Turbulence intensity:

Code

Definition

NEG

None encountered

LGT

Light — slight, occasional, brief, with intensity

MOD

Moderate — noticeable changes in altitude/attitude, slight problems with chart reading

SEV

Severe — large abrupt changes, momentary loss of control

EXTRM

Extreme — aircraft violently tossed, may be impossible to control

CHOP

Continuous — rough but limited displacement


Icing intensity:

Code

Definition

NEG

None encountered

TRC

Trace — barely perceptible

LGT

Light — buildup in 15-30 minutes

MOD

Moderate — equipment use needed

SEV

Severe — equipment fails to control


How to File a PIREP

PIREPs can be filed several ways:

1. Through ATC: "Center, Cessna 12345, like to file a PIREP."

ATC will respond and you can dictate. They forward it to Flight Service.

2. Through Flight Service Station (FSS) on 122.0 (formerly Flight Watch) or other available frequencies: Direct contact with Flight Service.

3. Through 1800wxbrief.com: Online filing through your account on Leidos Flight Service.

4. Through EFB apps: Many apps like ForeFlight allow PIREP filing through ADS-B/datalink connections.


What ATC asks for:

  • Location (relative to airport or NAVAID)

  • Altitude

  • Time of observation

  • Aircraft type

  • Weather phenomenon and intensity


Why pilots should file PIREPs:

  • Helps following pilots

  • Helps ATC make better decisions

  • Helps Flight Service amend AIRMETs and SIGMETs

  • Required by regulation in some severe weather conditions

  • Builds your contribution to the aviation community


Common reasons NOT to file (mistakes pilots make):

  • "Nothing special" — even routine smooth conditions are useful PIREPs

  • "Someone else will file" — they often don't

  • "It's too much trouble" — it takes 30 seconds with ATC

  • "ATC is too busy" — they handle PIREPs as time permits


Filing a PIREP is one of the most useful things a pilot can do for the aviation community. It costs you 30 seconds and can save lives.


Putting It All Together

The three reports work as a system:

  • METAR — What's happening NOW at airports

  • TAF — What's FORECAST at airports

  • PIREP — What's actually happening EN ROUTE between airports


Use them together for a complete picture:

  • METAR for current departure conditions

  • TAF for arrival forecast

  • PIREPs for en route conditions

  • Cross-reference to see if forecasts are verifying


When forecasts and PIREPs disagree, trust the PIREP — it's actual observation.


On the Written Test and Checkride

METARs, TAFs, and PIREPs appear consistently on tests. The most commonly tested topics:

  • METAR format and decoding

  • TAF change groups (FM, BECMG, TEMPO, PROB)

  • Cloud coverage codes

  • Weather phenomena codes

  • PIREP format and filing

  • Turbulence and icing intensity definitions


Quick Reference

METAR Order:

  1. Station identifier

  2. Date/Time (Zulu)

  3. Wind (direction/speed/gust)

  4. Visibility (SM)

  5. Weather phenomena

  6. Sky condition (FEW, SCT, BKN, OVC)

  7. Temperature/Dewpoint (°C)

  8. Altimeter (A + 4 digits)

  9. Remarks (RMK)


TAF Change Groups:

  • FM — From (rapid change, replaces forecast)

  • BECMG — Becoming (gradual change)

  • TEMPO — Temporary (less than half the period)

  • PROB30/40 — Probability of conditions


PIREP Codes:

  • /OV — Location

  • /TM — Time (Zulu)

  • /FL — Flight level

  • /TP — Aircraft type

  • /SK — Sky condition

  • /WX — Weather/visibility

  • /TA — Temperature

  • /WV — Winds

  • /TB — Turbulence

  • /IC — Icing

  • /RM — Remarks


Intensity scales:

  • Turbulence: NEG, LGT, MOD, SEV, EXTRM, CHOP

  • Icing: NEG, TRC, LGT, MOD, SEV



Study Full Aviation Courses:

wifiCFI's full suite of aviation courses has everything you need to go from brand new to flight instructor and airline pilot! Check out any of the courses below for free:


Study Courses:


Checkride Lesson Plans:


Teaching Courses:



Author: Nathan Hodell

CFI, CFII, MEI, ATP, Creator and CEO

Nathan is an aviation enthusiast with thousands of hours of flying and dual instruction over the past 15+ years. Through his aviation career he has been able to earn his ATP, fly as an airline pilot, own/operate flight schools, and create and host wifiCFI.



 
 
bottom of page