NMEA Sentence Parser
Paste raw NMEA 0183 GPS sentences below and decode them instantly, right in your Local Devices. With Zero Data Storage Nothing is uploaded — works offline once loaded. Supports GGA, RMC, GLL, VTG, GSA, GSV and ZDA from any GNSS constellation (GPS, GLONASS, Galileo, BeiDou).
What is an NMEA 0183 sentence?
NMEA 0183 is the standard text-based protocol used by GPS receivers, chartplotters, marine electronics, drones and survey equipment to report position, time, speed and satellite data. Every sentence starts with a dollar sign, a two-letter talker ID (GP for GPS, GN for combined GNSS, GL for GLONASS, GA for Galileo, BD or GB for BeiDou), a three-letter sentence type, comma-separated data fields, and ends with a checksum after an asterisk. This tool decodes each field into plain, human-readable values.
Supported sentence types
| Type | Full name | What it contains |
|---|---|---|
| GGA | Global Positioning System Fix Data | Time, latitude, longitude, fix quality, satellite count, HDOP, altitude |
| RMC | Recommended Minimum Navigation Info | Time, date, status, latitude, longitude, speed, course over ground |
| GLL | Geographic Position | Latitude, longitude, UTC time, fix status |
| VTG | Course Over Ground and Ground Speed | True/magnetic course, speed in knots and km/h |
| GSA | GNSS DOP and Active Satellites | 2D/3D fix mode, satellites used, PDOP, HDOP, VDOP |
| GSV | Satellites in View | Satellite PRN, elevation, azimuth and signal strength (SNR) |
| ZDA | Time and Date | UTC time, day, month, year, local time zone offset |
Who uses an NMEA parser
- Boaters and sailors reading raw output from a marine chartplotter or AIS receiver
- Drone and RC hobbyists debugging GPS modules (u-blox, Ublox NEO-6M, etc.)
- Surveyors and GIS engineers checking RTK/GNSS receiver output
- Developers building GPS trackers, fleet telematics or embedded firmware
- Students and hobbyists learning how GPS protocols work
Why use this tool
Everything runs client-side in JavaScript. No sentence you paste ever leaves your browser or touches a server, so it is safe to use with live coordinates. There is no login, no file size limit, and no ads blocking the parser. It works on desktop and mobile and loads instantly since it has no external dependencies.
Anatomy of an NMEA sentence
Take $GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47 as an example. $GP is the start delimiter plus talker ID (GPS receiver). GGA is the sentence type (fix data). Everything after that up to the * is a comma-separated data field, in this case time, latitude, latitude direction, longitude, longitude direction, fix quality, satellite count, HDOP, altitude and geoid separation, in that fixed order. The two characters after * are the checksum used to detect transmission errors.
Where to get raw NMEA sentences
- Marine chartplotters and AIS units — most expose a serial/NMEA output port or Wi-Fi NMEA-0183 stream you can log with a terminal app
- u-blox and other GPS modules — connect over USB/UART and read the raw serial output at the module's baud rate (commonly 9600 or 38400)
- Android phones — apps such as GPS Test or NMEA Tools can log the raw sentence stream from the phone's internal GNSS chip
- Flight controllers and drones — GPS modules like the NEO-6M/NEO-M8N print NMEA over their TX pin, viewable in any serial monitor
- Log files — many marine and survey tools save
.nmeaor.txtlogs you can open in a text editor and paste sentences from directly
GPS fix quality reference (GGA field 6)
| Value | Meaning | Typical accuracy |
|---|---|---|
| 0 | Invalid / no fix | No position available |
| 1 | Standard GPS fix | ~2.5–5 m |
| 2 | DGPS fix | ~1–3 m |
| 4 | RTK fixed | ~1–2 cm |
| 5 | RTK float | ~10–40 cm |
| 6 | Estimated (dead reckoning) | Degrades over time |
Understanding DOP values (HDOP, PDOP, VDOP)
DOP (Dilution of Precision) tells you how good the current satellite geometry is — lower is better. HDOP covers horizontal accuracy, VDOP covers vertical/altitude accuracy, and PDOP combines both into a single 3D figure. As a rough guide: under 1 is ideal, 1–2 is excellent, 2–5 is good for most uses, 5–10 is moderate, and above 10 means the fix should not be trusted.
Common problems when reading NMEA data
- Checksum mismatch — usually means the sentence was cut off mid-transmission or a character was corrupted; re-log the sentence and try again
- Sentence type not supported — proprietary sentences (like
$PGRMEor$PMTK) are vendor-specific extensions outside the core NMEA 0183 standard - Coordinates look wrong — remember GGA/RMC/GLL latitude is in
ddmm.mmmmformat (degrees + decimal minutes), not plain decimal degrees; this tool converts it for you automatically - Blank fields — a comma with nothing between it (
,,) is normal and means that field was not available at the time the sentence was generated, not an error
Frequently asked questions
How is the NMEA checksum calculated?
The checksum is the XOR of every character between the $ and the * (exclusive of both), shown as a two-digit hexadecimal number. This tool recalculates it automatically and flags any sentence where the recalculated value does not match the one in the sentence.
Can I parse multiple sentences at once?
Yes. Paste multiple NMEA lines, one per sentence, and the parser decodes every valid line in a single pass.
Does this work with GLONASS, Galileo or BeiDou sentences?
Yes. The parser reads the sentence type from the last three characters of the identifier, so GN, GL, GA and BD/GB talker IDs are decoded the same way as GP.
Is my GPS data uploaded anywhere?
No. Parsing happens entirely in your browser using JavaScript. No sentence, coordinate or file is sent to a server.
What is the difference between NMEA 0183 and NMEA 2000?
NMEA 0183 is the older serial, text-based standard this tool decodes. NMEA 2000 is a newer binary CAN-bus protocol used on modern marine networks; it uses a different message format and is not readable as plain text.
Why does my GGA sentence show fix quality 0?
A value of 0 means the receiver had not yet acquired a valid position when that sentence was generated, usually right after power-on or when satellite signal is blocked. Wait for it to lock onto more satellites and check the sentence again.
Can I convert the decoded coordinates to degrees, minutes, seconds (DMS)?
The tool outputs decimal degrees, which is the most widely used format for mapping software, spreadsheets and APIs. You can convert decimal degrees to DMS by taking the whole number as degrees, multiplying the remainder by 60 for minutes, and the new remainder by 60 again for seconds.