— Developer Tools

Free NMEA Sentence Decoder

Paste NMEA 0183 sentences or open a GPS log to read every field, catch bad checksums and see the track on a map.

— Samples
Sentences 12Bad checksums 0Distance 0.59 kmValid
Live

What is a NMEA Sentence Decoder?

NMEA 0183 is the plain-text format GPS receivers, chartplotters and boat instruments use to talk to each other. Each line is a sentence such as $GPGGA, with comma-separated fields and a checksum. This decoder names every field and maps the track.

It decodes eleven of the most common sentences, from GGA and RMC fixes to satellite, heading, depth and wind data, and checks the *hh checksum on every line. Valid fixes become a track you can see on a map, summarise, or export as GeoJSON for mapping tools.

Key Features

Every Field Named

Time, position, fix quality, satellites, DOP, speed, course, heading, depth and wind, with units.

Checksums Checked

Each sentence’s XOR checksum is recomputed, and wrong ones are flagged and left out of the track.

Track on a Map

Valid GGA, RMC and GLL fixes are drawn as a line, with distance, time span and top speed.

GeoJSON Export

Download the track as a GeoJSON LineString for QGIS, geojson.io or a web map.

Logs Stay Private

Sentences are decoded in your browser. The map loads OpenStreetMap tiles for the area shown.

Perfect for everyone

  • Sailors
  • Drone and robotics developers
  • GPS module tinkerers
  • Surveyors and anyone with a raw GPS log

How to Use the NMEA Sentence Decoder

Paste the sentences or open the log, then pick a view.

1

Get the Sentences

Copy them from a serial terminal, gpsd, a chartplotter export or a logger’s text file.

2

Paste or Open

Mixed sentence types and other text are fine. Lines without a sentence are skipped.

3

Read the Fields

Sentences explains every line and its checksum, with the map above.

4

Summarise or Export

Summary gives distance, time and speed. GeoJSON downloads the track for mapping tools.

Worked Examples

NMEA Sentences, Decoded

Each row is NMEA traffic as a receiver sends it, and each answer is this decoder’s output in the mode on the chip. Several come from the reference examples every NMEA guide quotes.

REF_001A GGA fix

“$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47”

REF_002An RMC with date and speed

“$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A”

REF_003A wrong checksum

“$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*48”

REF_004Satellites in view

“$GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75”

REF_005Satellites used and DOP

“$GPGSA,A,3,04,05,,09,12,,,24,,,,,2.5,1.3,2.1*39”

REF_006Boat instruments

“$GPVTG,054.7,T,034.4,M,005.5,N,010.2,K*48 $HEHDT,274.07,T*19 $SDDBT,8.1,f,2.4,M,1.3,F*0B $WIMWV,214.8,R,0.1,K,A*28”

REF_007A receiver with no fix yet

“$GPGGA,002153.000,,,,,0,00,99.99,,,,,,*53”

REF_008A track summary

“$GPGGA,183000.00,3751.5400,N,12228.6800,W,1,09,0.9,3.0,M,-32.1,M,,*5E $GPRMC,183000.00,A,3751.5400,N,12228.6800,W,5.8,122.4,271026,13.1,E,A*12 $GPGGA,183010.00,3751.5040,N,12228.6140,W,1,09,0.9,3.1,M,-32.1,M,,*53 $GPRMC,183010.00,A,3751.5040,N,12228.6140,W,6.1,122.9,271026,13.1,E,A*19 $GPGGA,183020.00,3751.4680,N,12228.5480,W,1,09,0.9,3.2,M,-32.1,M,,*52 $GPRMC,183020.00,A,3751.4680,N,12228.5480,W,6.4,123.4,271026,13.1,E,A*12”

REF_009Track as GeoJSON

“$GPGGA,183000.00,3751.5400,N,12228.6800,W,1,09,0.9,3.0,M,-32.1,M,,*5E $GPRMC,183000.00,A,3751.5400,N,12228.6800,W,5.8,122.4,271026,13.1,E,A*12 $GPGGA,183010.00,3751.5040,N,12228.6140,W,1,09,0.9,3.1,M,-32.1,M,,*53 $GPRMC,183010.00,A,3751.5040,N,12228.6140,W,6.1,122.9,271026,13.1,E,A*19”

REF_010Sentences this tool passes on

“$PGRME,15.0,M,45.0,M,25.0,M*1C $IIMTW,18.4,C*1E !AIVDM,1,1,,B,15M67FC000G?ufbE`FepT@3n00Sa,0*5C”

Sentence Types

The Sentences This Decoder Reads

The three letters after the talker ID name the sentence. These ten cover position, satellites and the instruments on most boats.

01 / GGA

GGA

The fix: time, position, fix quality, satellites used, HDOP and altitude above sea level.

“Which GGA field says there’s a fix?”

02 / RMC

RMC

The recommended minimum: time, date, status, position, speed and course over ground.

“Which sentence carries the date?”

03 / GLL

GLL

Latitude, longitude, time and status, the oldest and shortest position sentence.

“Does GLL include altitude?”

04 / VTG

VTG

Course over ground, true and magnetic, with speed in knots and kilometres per hour.

“What does VTG carry besides course?”

05 / GSA

GSA

Which satellites are in the solution, the fix type, and the PDOP, HDOP and VDOP.

“What does a fix type of 3 mean?”

06 / GSV

GSV

Satellites in view with elevation, azimuth and signal strength, four per sentence.

“How many satellites fit in one GSV?”

07 / ZDA

ZDA

UTC date and time with the local time zone offset, often sent once a second.

“Which sentence gives a four-digit year?”

08 / HDT

HDT

True heading from a gyrocompass or a GNSS compass, which a single antenna can’t give.

“Which talker usually sends HDT?”

09 / DBT

DBT

Depth below the transducer in feet, metres and fathoms.

“Is DBT depth below the keel?”

10 / MWV

MWV

Wind angle and speed, relative to the bow or true, from a masthead sensor.

“What does reference R mean?”

Anatomy of a Sentence

Every NMEA 0183 sentence follows the same frame, whatever device sent it. These parts explain what each piece of a line such as $GPGGA,123519,…*47 means and how the checksum is worked out.

Start Character

A dollar sign starts a normal sentence. An exclamation mark starts encapsulated data such as AIS.

Talker ID

Two letters name the source: GP for GPS, GN for a multi-constellation receiver, HE for a gyrocompass.

Sentence Type

Three letters name the content, such as GGA or RMC. P instead of a talker means proprietary.

Fields

Comma-separated values in a fixed order. An empty field between two commas means no data.

Coordinates

Latitude is ddmm.mmmm and longitude dddmm.mmmm, each followed by a hemisphere letter.

Checksum

An asterisk and two hex digits, the XOR of every character between the start character and the asterisk.

Line Length

A sentence is at most 82 characters including the CR LF, which keeps fields short and terse.

Talker IDs You Will Meet

The two letters after the dollar sign say which kind of device sent the sentence. A modern boat or receiver mixes several of them on one stream.

GP, GL, GA and GB

A receiver reporting one constellation: GPS, GLONASS, Galileo or BeiDou. Older units only ever send GP.

GN

A multi-constellation receiver combining several systems into one fix, the norm for modules since about 2015.

HE, HC and SD

A gyrocompass, a magnetic compass and a depth sounder, the classic instruments on a ship’s bridge.

II and WI

Integrated instrument displays and weather sensors, which often repeat data from other talkers.

Getting NMEA Out of a Device

Almost every GPS speaks NMEA, but getting the text out differs by device. These are the usual routes to a log you can paste here.

Tip 01

USB GPS Modules

u-blox, Quectel and SiRF modules appear as a serial port. Open it at 9600 or 38400 baud in any terminal.

Tip 02

gpsd

On Linux, gpspipe -r prints the raw sentences gpsd receives from every connected receiver.

Tip 03

Chartplotters

Many plotters log NMEA to a memory card, or send it over Wi-Fi to apps on TCP port 10110.

Tip 04

NMEA 2000 Gateways

Boats with NMEA 2000 need a gateway such as a YDNR or Actisense to convert PGNs to 0183 sentences.

Tip 05

Phones

Android exposes NMEA to apps through the location API, and logging apps can save it to a file.

Tip 06

Drones and Robots

Flight controllers and ROS drivers often record NMEA alongside their own logs for debugging.

When to Decode NMEA

Whenever a GPS or instrument hands you a stream of text and you need to know what it says.

Testing a GPS Module

Check fix quality, satellite count and DOP while bringing up a new board.

Debugging a Boat Network

See which talker sends which sentence when instruments disagree.

Checking a Log

Map a passage or test drive and spot gaps, jumps or bad checksums.

Converting to GeoJSON

Turn a raw log into a track for QGIS, Leaflet or a report.

Learning NMEA

Compare raw fields with their meaning sentence by sentence.

NMEA Pitfalls

Mistakes that trip up parsers and people reading logs.

Tip 01

Minutes, Not Decimals

4807.038 is 48° 7.038′, which is 48.1173°, not 48.07038°. Reading it as a decimal puts you kilometres away.

Tip 02

Status V

An RMC with status V has no valid fix, even if a stale position is still in the fields.

Tip 03

Ignoring the Checksum

Serial noise flips characters. Without the check, a corrupted position goes straight into the track.

Tip 04

Two-Digit Years

RMC dates have two-digit years, so software has to guess the century.

Tip 05

Height Above Ellipsoid

GGA altitude is above mean sea level. Add the geoid separation for height above the WGS 84 ellipsoid.

Tip 06

Talker Changes

A receiver switching between GP and GN talkers can break parsers that match the full sentence name.

Frequently Asked Questions