METAR
METARs are standardized reports that describe current weather conditions at aviation and weather observation stations worldwide. They are most commonly associated with airports, but may also originate from other permanent observation sites.
Each METAR provides a snapshot of observed weather at a specific time, including wind, visibility, temperature, cloud conditions, precipitation, and barometric pressure. Reports are typically issued at regular intervals, with special reports generated when conditions change significantly.
The METAR endpoints in this API allow you to retrieve both raw METAR reports and decoded representations. Decoded METARs transform the compact METAR text format into structured fields, along with additional derived values and unit conversions to simplify integration and analysis.
Raw, Short, or Decoded Responses
We offer three API response models for METARs - Raw, Short, and Decoded - allowing you to choose between original report text, a streamlined summary, or fully structured data optimized for application use.
1. Raw Response
All METAR endpoints return the standardized raw METAR text by default. For consistency, you can optionally append/rawto the endpoint path.
Example:
https://api.checkwx.com/v2/metar/ktpa
https://api.checkwx.com/v2/metar/ktpa/raw
Response:
{
"results": 1,
"data": [
"SPECI KTPA 252358Z 15010G17KT 10SM TS SCT037CB BKN180 BKN250 29/24 A3007 RMK AO2 TSB57 OCNL LTGIC SW AND DSNT S TS SW MOV NE CB DSNT S VCSH SW T02940239"
]
}
2. Short Response
Adding/shortto the end of any METAR endpoint path to receive a simplified JSON response. This includes the ICAO code, observed time, and the raw METAR text.
Example:
https://api.checkwx.com/v2/metar/ktpa/short
Response:
{
"results": 1,
"data": [
{
"icao": "KTPA",
"raw_text": "SPECI KTPA 252358Z 15010G17KT 10SM TS SCT037CB BKN180 BKN250 29/24 A3007 RMK AO2 TSB57 OCNL LTGIC SW AND DSNT S TS SW MOV NE CB DSNT S VCSH SW T02940239",
"observed": "2026-06-25T23:58:00Z"
}
]
}
3. Decoded Response
Adding/decoded to any METAR endpoint to receive a fully parsed METAR in structured JSON format. The response includes weather parameters in key-value pairs for easier processing.
Example:
https://api.checkwx.com/v2/metar/ktpa/decoded
Response:
{
"results": 1,
"data": [
{
"icao": "KTPA",
"raw_text": "SPECI KTPA 252358Z 15010G17KT 10SM TS SCT037CB BKN180 BKN250 29/24 A3007 RMK AO2 TSB57 OCNL LTGIC SW AND DSNT S TS SW MOV NE CB DSNT S VCSH SW T02940239",
"observed": "2026-06-25T23:58:00Z",
"report": {
"type": "SPECI",
"status": "Special Report"
},
"conditions": [
{
"code": "TS",
"text": "Thunderstorm"
}
],
"clouds": [
{
"code": "SCT",
"feet": 3700,
"type": {
"code": "CB",
"text": "Cumulonimbus"
},
"meters": 1128.0,
"text": "Scattered"
},
{
"code": "BKN",
"feet": 18000,
"meters": 5486.0,
"text": "Broken"
},
{
"code": "BKN",
"feet": 25000,
"meters": 7620.0,
"text": "Broken"
}
],
"ceiling": {
"code": "BKN",
"feet": 18000,
"meters": 5486.0,
"text": "Broken"
},
"dewpoint": {
"celsius": 24,
"fahrenheit": 75
},
"flight_category": "VFR",
"temperature": {
"celsius": 29,
"fahrenheit": 84
},
"humidity": 74,
"station": {
"icao": "KTPA",
"iata": "TPA",
"name": "Tampa International Airport",
"geometry": {
"type": "Point",
"coordinates": [
-82.5332,
27.9755
]
},
"location": "Tampa, Florida, United States"
},
"pressure": {
"hg": 30.07,
"mb": 1018.0
},
"visibility": {
"miles": 10.0,
"meters": 9999.0,
"text": "Greater than 10 miles"
},
"wind": {
"degrees": 150,
"speed": {
"kts": 10,
"mph": 12,
"kph": 19,
"mps": 5
},
"gust": {
"kts": 17,
"mph": 20,
"kph": 31,
"mps": 9
},
"direction": "SSE"
},
"remarks": [
"Automated station type AO2",
"Thunderstorm began at 57 mins past the hour and is continuing",
"Occasional Lightning (Intracloud) SW",
"Thunderstorm",
"Nearby Showers SW",
"Exact temperature 29.4°C, dewpoint 23.9°C"
]
}
]
}
METAR by ICAO
Returns the latest METAR data for one or more ICAO codes
Endpoint Path
/v2/metar/{icao}
Path Parameters
icao
string
Required
A single ICAO code or multiple ICAO codes seperated by commas
Maximum of 25 comma seperated ICAO codes per request
Examples
https://api.checkwx.com/v2/metar/KTPA
https://api.checkwx.com/v2/metar/KJFK/decoded
https://api.checkwx.com/v2/metar/KDFW,KLAX/short
METAR Nearest to ICAO
Returns the latest METAR data nearest to the requested ICAO.
Endpoint Path
/v2/metar/{icao}/nearest
Path Parameters
icao
string
Required
A single ICAO code
Querystring Parameters
limit
integer
Optional
Number of ICAOs with a METAR to return
Default: 1
minimum value: 1
maximum value: 25
include
boolean
Optional
Include the origin ICAO's METAR in the results
Default: false
Examples
https://api.checkwx.com/v2/metar/nearest/KTPA
https://api.checkwx.com/v2/metar/nearest/KJFK/decoded
https://api.checkwx.com/v2/metar/nearest/JKFK/short?limit=3
https://api.checkwx.com/v2/metar/nearest/JKFK/short?limit=3&include=true
Notes
- Additional postion fields are included in the decoded response data to show the distance and direction from the specified ICAO.
METAR within Radius of ICAO
Returns the latest METAR data within a specified radius of a single ICAO code
Endpoint Path
/v2/metar/{icao}/radius/{radius}
Path Parameters
icao
string
Required
A single ICAO code
radius
integer
Required
The surrounding radius in miles
minimum value: 1
maximum value: 250
Querystring Parameters
limit
integer
Optional
Number of ICAOs with a METAR to return
Default: 10
minimum value: 1
maximum value: 25
include
boolean
Optional
Include the origin ICAO's METAR in the results
Default: false
Examples
https://api.checkwx.com/v2/metar/KJFK/radius/50
https://api.checkwx.com/v2/metar/KJFK/radius/50?limit=5
Notes
- The results are sorted based on the distance from the requested ICAO code
- Additional postion fields are included in the decoded response data to show the distance and direction from the specified ICAO.
METAR Nearest to Latitude/Longitude
Returns the latest METAR data for nearest to the latitude and longitude
Endpoint Path
/v2/metar/lat/{latitude}/lon/{longitude}
Path Parameters
latitude
float
Required
The latitude in decimal degrees
minimum value: -90
maximum value: 90
longitude
float
Required
The longitude in decimal degrees
minimum value: -180
maximum value: 180
Querystring Parameters
limit
integer
Optional
Number of ICAOs with a METAR to return
Default: 10
minimum value: 1
maximum value: 25
Examples
https://api.checkwx.com/v2/metar/lat/40.72/lon/-73.99
https://api.checkwx.com/v2/metar/lat/40.72/lon/-73.99/decoded
Notes
- Additional postion fields are included in the decoded response data to show the distance and direction from the specified Latitude/Longitude
METAR within Radius of Latitude/Longitude
Returns the latest METAR data within a specified radius of the latitude and longitude
Endpoint Path
/v2/metar/lat/{latitude}/lon/{longitude}/radius/{radius}
Path Parameters
latitude
float
Required
The latitude in decimal degrees
minimum value: -90
maximum value: 90
longitude
float
Required
The longitude in decimal degrees
minimum value: -180
maximum value: 180
radius
integer
Required
The surrounding radius in miles
minimum value: 1
maximum value: 250
Querystring Parameters
limit
integer
Optional
Number of ICAOs with a METAR to return
Default: 10
minimum value: 1
maximum value: 25
Examples
https://api.checkwx.com/v2/metar/lat/40.72/lon/-73.99/radius/25
Notes
- The results are sorted based on the distance from the requested ICAO code
- Additional postion fields are included in the decoded response data to show the distance and direction from the specified Latitude/Longitude
Endpoints+
Endpoints+ are premium API endpoints exclusively available to users with a Developer, Business, or Enterprise subscription plan. Compare Plan Features.
Previous METARs by ICAO
Returns the previous METAR data for a one or more ICAO codes
Endpoint Path
/v2/metar/{icao}/previous/{limit}
Path Parameters
icao
string
Required
A single ICAO code or multiple ICAO codes seperated by commas
Maximum of 25 comma seperated ICAO codes per request
limit
integer
Required
The number of previous METARs to return for each ICAO
minimum value: 2
maximum value: 50
Examples
https://api.checkwx.com/v2/metar/KTPA/previous/10
https://api.checkwx.com/v2/metar/KJFK,KLAX/previous/10
METARs by Country
Returns the latest METAR data for stations within a specified country code
Endpoint Path
/v2/metar/country/{code}
Path Parameters
code
string
Required
A single, two character country code
Examples
https://api.checkwx.com/v2/metar/country/GB
https://api.checkwx.com/v2/metar/country/GB/decoded
Notes
- Decoded METARs for this endpoint can be quite large
- For the United States, it is recommened to instead use the METARs by State endpoint
METARs by State (US)
Returns the latest METAR data for stations within the United States, specified by a state code
Endpoint Path
/v2/metar/state/{code}
Path Parameters
code
string
Required
A single, two character state code
Examples
https://api.checkwx.com/v2/metar/state/FL
https://api.checkwx.com/v2/metar/state/FL/decoded
Notes
- Decoded METARs for this endpoint can be quite large
New METAR Fields
These new fields have been added to METAR decoded JSON responses.
-
icao
string
Examples:
ICAO airport code or station indicator
KJFK -
raw_text
string
The unparased METAR text
METAR KJFK 232136Z 32003KT 10SM ... -
report
object
-
type
string
Report type
METAR , SPECI -
flags
string
Report flags
AUTO , COR -
status
string
Report status text
Automated Report , Corrected Report
-
-
observed
string
DateTime the conditions were observed
2025-12-25 16:00:00 -
station
object
-
name
string
Station name
John F Kennedy International Airport -
location
string
City, (State/Province), Country
New York, New York, United States -
geometry
object
GeoJSON object
-
point
string literal
Indicates place of interest
Point -
coordinates
array
GeoJSON order [longitude, latitude]
[-73.779, 40.639]
-
-
-
clouds
array
Array of cloud layer objects
-
code
string
Cloud abbreviation code
OVC -
text
string
Human-readable translation of the code
Overcast -
feet
integer
Cloud height in feet above ground level
3200 -
meters
integer
Cloud height in meters above ground level
975
-
-
ceiling
object
-
feet
integer
Ceiling height in feet above ground level
1400 -
meters
integer
Ceiling height in meters above ground level
427
-
-
colors
string
Airfield weather state categories
BLU , GRN -
conditions
array
Array of weather conditions
-
code
string
Weather conditions abbreviation code
FG , +SHRA -
text
string
Human-readable translation of the code
Fog , Heavy rain showers
-
-
dewpoint
object
-
celsius
integer
Dewpoint measurement in celsius
3 -
fahrenheit
integer
Dewpoint measurement in fahrenheit
37
-
-
flight_category
string
Current flight conditions category
VFR , LIFR -
humidity
integer
Relative humidity percentage
90 -
pressure
object
-
hg
decimal
Pressure in inches of mercury
29.85 -
mb
decimal
Pressure in millibars
1010.84
-
-
runway_state
object
-
runway
string
Runway identifier
18/36 -
condition
object
Runway conditions
-
code
string
Condition code
SNOCLO -
desc
string
Human-readable translation of the code
Closed due to snow
-
-
deposit
object
Runway deposit type
-
code
string
Deposit code
1 , 7 -
desc
string
Human-readable translation of the code
Damp , Ice
-
-
contamination
object
Runway contamination extent
-
code
string
Contamination code
1 -
desc
string
Human-readable translation of the code
11–25%
-
-
depth
object
Runway deposit depth
-
code
string
Deposit depth code
1 -
millimeters
integer
Deposit depth in millimeters
10
-
-
friction
object
Runway braking friction
-
code
string
Friction code
1 -
friction
integer
Runway deposit depth in millimeters
10 -
braking
integer
Runway deposit depth in millimeters
10
-
-
-
runway_visual
object
-
runway
string
Runway identifier
24 -
visual_range
object
Runway visual range
-
minimum
object
-
feet
integer
Minimum range in feet
492 -
meters
integer
Minimum range in meters
150
-
-
maximum
object
-
feet
integer
Maximum range in feet
1000 -
meters
integer
Maximum range in meters
304
-
-
trend
object
-
code
string
Trend code
D -
text
string
Human-readable translation of the code
Downward trend, RVR is decreasing
-
-
-
text
string
Description of the runway visual
Runway 24 , 150 meters
-
-
temperature
object
-
celsius
integer
Temperature measurement in celsius
3 -
fahrenheit
integer
Temperature measurement in fahrenheit
37
-
-
trend
object
Weather trend
-
change
object
Weather trend change
-
code
string
Trend change code
BECMG -
text
string
Human-readable translation of the code
Gradual lasting changes
-
-
clouds
array
See Clouds field
-
colors
string
See Colors field
-
conditions
array
See Conditions field
-
dewpoint
object
See Dewpoint field
-
pressure
object
See Pressure field
-
temperature
object
See Temperature field
-
wind
object
See Wind field
-
visibility
object
See Visibility field
-
-
visibility
object
-
miles
float
Prevailing visibility in statute miles
6 -
meters
float
Prevailing visibility in meters
9656 -
text
string
Text represention of visibility
Less than 1/4SM -
direction
string
Prevailing visibility direction
120NW -
minimum
object
Minimum visiblity if reported
-
miles
float
Minimum visibility in statute miles
1 -
meters
float
Minimum visibility in meters
1609
-
-
-
wind
object
-
degrees
integer
Wind direction in degrees
230 -
direction
string
Wind compass direction
SW -
speed
object
-
kts
integer
Speed in knots
6 -
mph
integer
Speed in miles per hour
7 -
kph
integer
Speed in kilometers per hour
11 -
mps
integer
Speed in meters per second
3
-
-
gust
object
-
kts
integer
Gust in knots
20 -
mph
integer
Gust in miles per hour
21 -
kph
integer
Gust in kilometers per hour
37 -
mps
integer
Gust in meters per second
10
-
-
-
windshear
array
Array of one or more Runway windshear reports
['Runway 09R'] -
remarks
array
Array of decoded remarks from the RMK section of a METAR
['Sea-level pressure 1007.3 hPa'] -
position
object
Included for Nearest/Radius endpoints
-
points
string
Reference point, either ICAO or coordinates
KJFK -> KLGA -
bearing
integer
True bearing from request point -> to results point
180 -
distance
object
-
meters
float
Distance in meters
10,000 -
miles
float
Distance in nautical miles
5.4
-
-