IoT Knowledge Base
Learn the key concepts you need to know. Without the technical jargon.
IoT Reports & Guides
In-depth research, white-papers and guides from Pelion.
Blog Articles & News
The latest insights on industry trends, best practices, and Pelion announcements.
Events & Webinars
Upcoming events, online sessions, and expert-led webinars
About Us
Our mission, values, team, and the solutions we offer in the IoT space.
The Team
Meet our team behind Pelion's effortless connectivity.
Careers
Job opportunities, company culture, and the benefits of joining our team.
Sustainability
Our commitment to environmentally responsible practices.
USSD (Unstructured Supplementary Service Data) is a communication protocol that allows mobile phones to interact directly with a service provider’s systems using short codes like *123#. In the context of IoT (Internet of Things), USSD serves as a lightweight, real-time method for sending and receiving data over GSM networks, particularly in areas where internet access (via 4G, 5G, or Wi-Fi) is unavailable, unstable, or too costly.
USSD remains widely used today, especially in regions with limited internet connectivity or where basic feature phones are common.
USSD (Unstructured Supplementary Service Data) lets mobile phones and GSM-enabled IoT devices communicate directly with a network operator’s system using short codes like *123#. When a code is dialed, it initiates a real-time, interactive session between the device and the server. The server processes the request and instantly returns a response.
Unlike SMS, USSD does not rely on internet connectivity. It operates over 2G GSM signaling channels, making it ideal for quick, low-bandwidth interactions in areas with limited or no internet access.
· A GSM-enabled device sends a USSD code.
· The code reaches the operator’s server or a linked application.
· The server processes the request and responds with data (e.g., a status update or command confirmation).
A USSD message typically starts with an asterisk symbol (*) or a hash symbol (#) and is terminated with a hash symbol. For example *995#
USSD Type | Description | Use Case / Priority | Advantages | Limitations |
---|---|---|---|---|
Dedicated | Unique USSD code reserved for a single device or application. | Critical or high-priority device management. | Fast, secure, reliable; minimal conflicts. | Higher cost; less efficient for large-scale deployments. |
Semi-Dedicated | USSD code shared among a limited set of devices or applications. | Medium-priority tasks or batch provisioning. | Balances efficiency and exclusivity; cost-effective. | Some risk of congestion if usage spikes. |
Shared | One USSD code used across many devices or services. | Low-priority messaging, bulk notifications. | Cost-efficient; simple to deploy at scale. | Higher risk of delays or conflicts; less secure. |
Works entirely over GSM signaling channels, making it ideal for offline or low-connectivity environments.
Useful in rural or remote areas without mobile data coverage.
USSD is generally cheaper than data or SMS-based communication.
Reduces the need for expensive data plans or high-end modems in IoT devices.
USSD sessions are interactive and immediate, allowing for quick command execution and response (unlike SMS, which can be delayed).
Operates over 2G networks, which are still widely available in developing countries and rural regions.
Can extend IoT reach to places where newer technologies like 4G, 5G, or LPWAN are not yet available.
USSD is relatively easy to integrate in basic GSM-enabled devices using AT commands.
Doesn’t require complex protocols or heavy computing resources, making it ideal for low-power, low-capability devices.
USSD doesn't require custom software or apps on the end-user side, reducing the development burden.
This simplicity benefits systems where field operators or local users need to interact with IoT devices using feature phones.
Since it doesn't rely on internet exposure, USSD can be less prone to internet-based attacks, though it's not encrypted by default.
Farmers use USSD-enabled feature phones to query sensor data from remote farms (e.g., soil moisture levels) or control irrigation systems.
Prepaid energy meters can be topped up via USSD codes without internet, using basic phones.
Low-end GPS trackers use USSD to send location updates when no data connection is available.
USSD commands can trigger specific actions like restarting a device or sending diagnostics.
Functionality | USSD | SIMs |
---|---|---|
Communication Type | Session-based, real-time text messages over GSM networks | Physical or embedded identity module enabling network access |
Connectivity | Does not require internet; works over mobile network signaling | Provides full network connectivity, including voice, SMS, and data |
Provisioning | Instant, can be device-initiated or network-pushed | Requires physical SIM installation or eSIM remote activation |
Security | Limited to session-level validation; no stored credentials | Strong authentication via IMSI and encryption keys |
Use Case | Lightweight device commands, balance checks, configuration messages | Full mobile network access, IoT device connectivity, data transmission |
Scalability | Good for quick, low-data tasks; limited for high-volume traffic | Highly scalable for multiple devices and continuous connectivity |
Feature | USSD | SMS |
---|---|---|
Technology | Session-based communication over GSM signaling | Store-and-forward text messaging over GSM/SMS service |
Interaction | Real-time, interactive; supports two-way sessions | One-way or two-way; not real-time, messages are queued |
Data usage | Very low; only small session data transmitted | Low; text messages limited in size (~160 characters) |
Internet connection | Not required | Not required |
Advantages | Instant, interactive, works on any GSM device; lightweight | Simple, widely supported, can store messages for later delivery |
Limitations | Session ends if network fails; limited message length | Not real-time; delayed delivery possible; no interactive session |
Best for | Real-time commands, device queries, configuration tasks | Notifications, alerts, or short messages to multiple recipients |
USSD messages can only carry 182 characters per message, which restricts the complexity and richness of the data.
Not suitable for sending sensor logs, images, or bulk telemetry.
USSD is not inherently secure. Data sent over USSD is typically unencrypted, making it vulnerable to interception.
Security must be added at the application level, increasing complexity.
USSD is session-oriented and synchronous, meaning it only supports real-time, two-way interaction.
It doesn't support asynchronous or push-based communication (unlike MQTT or HTTP).
Unlike SMS, USSD has no store-and-forward mechanism. If a session is interrupted (e.g., due to poor signal), the communication fails without retries.
USSD heavily relies on telecom operator infrastructure, which varies by country and provider.
Not all operators support custom USSD services or provide APIs for integration.
IoT devices must include a GSM modem capable of handling USSD requests.
Many modern IoT modules are optimized for IP-based communication (e.g., NB-IoT, LTE-M), not USSD.
Compared to IP-based protocols, USSD lacks mature libraries, SDKs, or open-source support for IoT platforms.
Development and testing are often done manually or via telecom APIs.
Traditional USSD is designed for human interaction, not machine-to-machine communication.
In automated IoT systems, implementing USSD requires creative workarounds (e.g., scripted AT commands).
USSD remains relevant in specific IoT scenarios, especially in:
Where 2G coverage is still strong and smartphone/internet penetration is low.
Where power, infrastructure, and network conditions are basic.
Where device simplicity, energy efficiency, and low operational costs are critical.
2G and 3G networks are being phased out in many regions (e.g., the US, Europe, Australia).
Modern LPWAN technologies (NB-IoT and LTE-M) offer better scalability, lower power, and security.
IP-based protocols like MQTT and CoAP are more suited for advanced, large-scale IoT deployments.
In parts of Africa, South Asia, and Latin America, 2G networks and USSD-based mobile infrastructure are still essential.
Basic feature phones and GSM modules are affordable and widespread.
For mission-critical fallback or redundancy, USSD might serve as a backup control channel.
Using USSD in IoT comes with trade-offs. It provides wide network coverage and low-cost connectivity, making it useful in areas with limited infrastructure. However, it also has significant limitations, such as low data capacity, lack of built-in security, and poor scalability.
USSD is best suited for simple, low-data applications in environments where internet access is unavailable or unreliable. It’s especially valuable in niche or transitional use cases where modern connectivity technologies (NB-IoT, LTE-M) are not yet accessible or practical.
USSD is expected to remain relevant in the near future, especially in regions with limited internet access, as it supports essential services like mobile banking and airtime purchases. However, its long-term lifespan is declining as smartphones, mobile apps, and digital wallets gain dominance. Over the next decade, USSD will likely persist in emerging markets but gradually phase out in favor of internet-based and app-driven solutions.