Decode SMS Protocol Data Units - DELIVER, SUBMIT and STATUS-REPORT
This tool decodes raw SMS PDU hex strings into human-readable fields as defined by GSM 03.40 / 3GPP TS 23.040.
The yREMORA technical team provides comprehensive SMSC (Short Message Service Center) integration solutions, including interconnection with telecom operators, custom SMS gateway deployments, and end-to-end SMS delivery monitoring and troubleshooting.
Our expertise covers SMPP protocol integration, SMS routing optimization, PDU-level diagnostics, and custom tooling for telecom operations teams. We work with both open-source and proprietary SMSC platforms to deliver reliable messaging infrastructure.
Every SMS message travels through the mobile network as a PDU (Protocol Data Unit) — a compact binary envelope that carries not just the message text, but also the sender and recipient addresses, timestamps, encoding information, and delivery instructions. The PDU format is defined by the GSM standards (GSM 03.40 / 3GPP TS 23.040).
Whether you are reading PDUs from a GSM modem (via AT commands), reviewing SMSC logs, or analyzing network traces, you will see a long hex string. This online decoder breaks that hex string into its individual fields so you can inspect exactly what the message contains — no software to install, just paste and decode.
The first byte of any PDU contains the TP-MTI (Message Type Indicator) which tells you the direction and purpose of the message:
SMS-DELIVER (TP-MTI=0) — An incoming message delivered from the network
to your GSM phone or modem. Contains the sender address (TP-OA), the service center timestamp
(TP-SCTS), and the message text.
SMS-SUBMIT (TP-MTI=1) — An outgoing message sent from your GSM phone or modem
to the mobile network. Contains the destination address (TP-DA), an optional validity period
(TP-VP), and the message text.
SMS-STATUS-REPORT (TP-MTI=2) — A delivery receipt from the network confirming
whether a previously sent SMS-SUBMIT was delivered to the recipient. Contains the recipient
address (TP-RA), the service center timestamp (TP-SCTS), the discharge time (TP-DT),
and a status code (TP-ST) indicating success or failure.
If you encounter a PDU that this decoder fails to parse or produces unexpected results, we want to know about it. Send us the hex string via our contact page and our telecom team will investigate. Your feedback helps us improve this tool for the entire community.