PRMSL vs. MSLET for sea level pressure in GFS

Updated: Mar 22, 2021. | By: Craig McPheeters

Update March 22, 2021: GFS has been upgraded to v16. This new version changes its PRMSL field so that it is no longer filtered. With this change, the LuckGrib servers are now downloading and delivering PRMSL data directly from GFS. This MSLET to PRMSL conversion is no longer necessary.


This is part two of this topic, please see the blog post for the first part.

These two images are showing Hurricane Lane, August 24, 2018 at 12 UTC. This is the 0H GRIB data from GFS, showing 10m wind speed and two versions of sea level pressure. On the left, sea level pressure is represented using PRMSL, and on the right, the MSLET parameter is used.

Its pretty clear that the MSLET image on the right is much better.

Why is that? What’s going on?

GFS has two sea level pressure parameters

There were a long series of steps that led me from the image on the left to the image on the right, and I won’t go into all of those details.

It turns out in May 2011, the GFS model introduced a new parameter to represent sea level pressure: MSLET. The standard parameter for sea level pressure is PRMSL, GFS now has two sea level pressure parameters. PRMSL is pressure reduced to mean sea level and MSLET is mean sea level pressure using eta reduction. They sound very similar, but they are implemented very differently.

Its been difficult finding information on these two parameters. The best reference I have found is a short paper and its associated handout, submitted to the American Meterological Society. The two authors are Robert Hart and Levi Cowan, from the Department of Earth, Ocean, and Atmospheric Science, Florida State University.

The Potentially Deleterious Impact of Choice of Sea-Level Pressure Calculation in the GFS Model When Determining Cyclone Intensity and Track

link to abstract
link to handout
local cached copy of above handout
Presented on April 17th, 2018

If you are reading this article you are probably interested in weather models and I encourage you to read the above abstract and handout. I’ve extracted a couple of quotes from the handout below:

For the NCEP GFS model uniquely, two SLP fields are output by the post-processor. The first, MSLET, uses unsmoothed atmospheric fields, and computes below ground extrapolated temperature by relaxing Laplace’s equation. The second, PRMSL, for legacy reasons spectrally truncates fields to T80 (approximately 150km effective resolution) everywhere – even over water – before calculating SLP (H.-Y. Chuang, personal communication, 2017). This results in a much smoother SLP field than obtained by MSLET. Unfortunately, this smoothing often causes the analyzed intensity (minimum SLP) of cyclones using PRMSL to be significantly and artificially weaker than that obtained by MSLET.
(emphasis mine)

Hart/Cowan, April 17, 2018

There it is! That’s the answer - GFS has two parameters for sea level pressure and the paper describes them in some detail. The handout goes through a couple of examples and concludes with the following discussion:

As of the presentation of this poster, it is not clear that the entire scientific community is aware that the standard MSLP field (PRMSL) output by the GFS model is inaccurate, and that the more correct MSLET SLP field even exists. Since PRMSL is the default MSLP field in GRIB tables, many official NWS websites and unofficial websites show the PRMSL SLP field from model forecasts, and the GFS appears to be the only major operational model (globally) in which the PRMSL SLP field is so biased. Thus, given the examples shown here, many users of graphically displayed GFS forecasts may be misled by unacceptable biases in cyclone intensity and track. Accordingly, we strongly recommend that NCEP consider associating the PRMSL GRIB variable with the unsmoothed MSLP field (currently MSLET), as many other operational models around the world do.
(emphasis mine)

Hart/Cowan, April 17, 2018

Note that this paper was presented on April 17, 2018. Now re-read the first line in bold. As I will show later, many other weather services are having this confusion between PRMSL and MSLET.

Returning to the above Hurricane Lane example one more time now that we have more detail:

The paper provided the information that PRMSL is being smoothed to a 150km resolution. In the image above, the line shown is 150km long. Clearly additional resolution is needed to capture the cyclone details and this is provided by MSLET.

A couple more examples

Once you know what to look for, finding more examples of tropical cyclones being missed by PRMSL is easy (its convenient that its currently the northern hemisphere cyclone season.)

This cyclone is roughly 1000km NE of Guam, forecast for August 29th, 2018. The PRMSL central pressure is 997, the MSLET central pressure 969.

This is the Azores high. PRMSL and MSLET are quite similar, with PRMSL showing a much smoother contour but roughly the same information. This is expected - the PRMSL smoothing removes all the small wiggles in the MSLET data but as this high is generally uniform, the two show similar results.

Once you see a few of these examples you can start to identify which pressure fields are MSLET and which are PRMSL simply due to the extreme smoothing going on in PRMSL.

LuckGrib is now delivering MSLET as PRMSL

There were several ways I could have implementated the switch from PRMSL to MSLET. In the end, I have decided to simply download the MSLET data to the server cluster and then process it to change its parameter from MSLET to PRMSL. Once this is complete, everybody requesting fresh weather data from the GFS or FV3-GFS models will receive MSLET when they request PRMSL. The GRIB data is packaged as PRMSL and so will work with all versions of LuckGrib as well as any other applications you choose to export the data to.

After this change, the only way to know that the PRMSL data in LuckGrib’s GFS data is actually MSLET is to read this note, or recognize the difference in the two fields visually (true PRMSL is very smooth and the data delivered as PRMSL in LuckGrib’s GFS no longer has this property.)

I am expecting this to be a seamless transition. I hope so anyway.

If you are curious about comparing the actual PRMSL data to MSLET, you can do this. LuckGrib is unique in that it provides access to the full GFS model, with the data being served directly from NOAA. You can download the actual PRMSL data using the ‘GFS served directly from NOAA’ model, available in the ‘Global / Models served by NOAA’ area. Download sea level pressure from the LuckGrib server cluster and then again using the ‘direct from NOAA’ method and you can then compare the two parameters.

Did anybody else miss this announcement? What are the other weather providers doing?

The Hart/Cowan handout mentions that MSLET has been available since May 2011. As MSLET appears to be the superior parameter for sea level pressure, I was curious about what the other weather file providers are doing.

Using the clue provided in the Hart/Cowan handout for the date of the parameters introduction, I searched for information from NCEP regarding this new parameter, hoping for some more detail. The only reference I was able to find is the implementation notice below:

  • Addition of a new membrane sea level pressure (SLP) field to the 0.5, 1.0 and 2.5 degree pressure grib (pgrb) files only. This pressure is generated by first relaxing the underground virtual temperature and then integrating the hydrostatic equation downward. The field will be subject to Spectral Gibsing near the coast, but this will be addressed in a future implementation.

May, 2011, implementation notice

The usefulness of this new parameter doesn’t exactly spring from the page in that description…

What follows is a superficial overview of other weather providers serving the sailing community. If you’ve read this far, you should know what to look for when determining if another source of data is delivering PRMSL or MSLET data.

All of the pairs of images from these examples are taken from the same GFS run and are shown at the same time.

A popular provider on the left, LuckGrib’s new PRMSL on the right. This provider is using PRMSL.

A second popular provider on the left, LuckGrib’s new PRMSL on the right. This provider is also using PRMSL.

A third popular provider on the left, LuckGrib’s new PRMSL on the right. This provider is also using PRMSL.

If you are obtaining GFS data from multiple sources, you can perform this test yourself pretty easily by downloading the same region and comparing them.


This is all a little embarrasing. It turns out that the GFS model has had two parameters representing mean sea level pressure since May 2011 and a lot of the weather providers have missed the introduction. The newer MSLET appears to be a superior choice for this parameter.

LuckGrib is now delivering MSLET data packaged as PRMSL - everybody downloading GFS data from the LuckGrib server cluster will now be getting the new and improved data.

As always, feedack is welcome.