What is USSD (Unstructured Supplementary Service Data)?
Unstructured Supplementary Service Data (USSD) is a session-based text messaging service without a store-and-forward mechanism (unlike SMS) that is practical for interactive communication, such as banking or education.
It runs on the network and doesn’t need to be installed on the user’s phone.
USSD message format
A USSD message typically starts with an asterisk symbol (*) or a hash symbol (#) and is terminated with a hash symbol (#).
For example: *999#.
It can have up to 160 alphanumeric characters, and the time it takes from a request to a response is two seconds.
Types of USSD codes
Three types of USSD codes are:
- Dedicated: A code owned by one account and solely used by one user for their company or service.
- Semi-dedicated: A code dedicated to one account but shared among others.
- Shared: A code that is shared among multiple companies or services.
How does USSD work?
Firstly, it requires a query from a mobile phone user, for example, a request for a bank account balance.
- When the user sends his request, the USSD gateway forwards it to the user’s USSD app, which responds to the request.
- Then the process happens again, but in reverse – the response goes back to the USSD gateway, which displays the response’s content on the user’s mobile phone screen.
Generally, the responses, which contain a maximum of 182 alphanumeric characters, are sent in a format that’s easy to display. The user sends and receives data by dialing a short code – usually five numbers.
How is USSD used?
USSD is used for several purposes, including:
- Network configuration and requests
- Menus and requests
- Customer update requests
- Financial services, e.g., mobile banking
- Marketing surveys or questionnaires
- Callback services
- Order confirmations and tracking
- Coupons and vouchers
- Utility services
- Paid content portal
- Product promotion
- Competitions and contests
What are USSD benefits?
Some of USSD benefits include:
- Works worldwide
- Works with almost every mobile device
- Reduces operating costs
- Enhanced customer satisfaction
- Real-time interactivity
- Fast, two-way, real-time communication
- Does not require an internet connection or data to work
The potential drawback of USSD
While unstructured supplementary service data has a lot of advantages, it also has some drawbacks.
Before committing to using USSD messaging, you should consider the following:
Data throughput is limited.
Because of its 16-bit limitation, unstructured supplementary service data can only handle messages up to 182 characters.
Technologies like unstructured supplementary service data will become less accessible as 2G fades away.
Various factors can impact availability, including network congestion and strategic decisions by mobile network operators (MNOs).
An unfamiliar user interface.
While familiar to international audiences, its interface might feel outdated to U.S. consumers accustomed to more modern app-based experiences.
A USSD gateway also called the USSD center, takes messages you send and delivers them to the appropriate service application, then brings you the response in real time. The connection stays open while you interact, allowing for back-and-forth instant messaging. This makes it ideal for checking your mobile balance or quickly topping up your phone credit.
What is the difference between USSD, MMI, and SS codes?
Every code you enter over your phone’s keypad containing an asterisk (*) or hash (#) character is an MMI code.
MMI code (Man Machine Interface) is used to access specific menus on the Android device.
Some are free from network providers and embedded within the device algorithm or BIOS. While others are network-dependent, your Android must be connected to the cellular network to use these MMI codes.
Different types of MMI codes on Android are:
- USSD codes
- SS codes
- MMI codes
- SIM control codes
The manufacturer-defined MMI code doesn’t require pressing the dial button after dialing the code.
Meanwhile, supplementary service (SS) codes are combinations of some specific set of numbers with an asterisk (*) prefix used to perform call and message-related tasks like call forwarding, call diverts, call barring, etc.
What is the difference between USSD and SMS?
This table highlights all the similarities and differences between USSD and SMS (Short messaging service):
|GSM (Global System for Mobile Communications) network
|Cellular data network
|Session-based (requires active connection)
|Store and forward (delivered even if unavailable)
|Faster response, lower data usage, works without Internet
|Broader reach works across devices and networks
|Limited character options, text-based only, no rich media
|Delays possible, data charges apply, limited character count
|Quick tasks with service providers, checking balance, activating data
|Text messages between individuals or groups, non-urgent communication
What about USSD short codes?
USSD short code format is defined by the * and # signs at the beginning and the end of the series of digits.
Three types of unstructured supplementary service data short codes available are:
- The standard rate USSD short code is charged the standard fee for the USSD menu usage by the end-user.
- Reverse-billed short codes are free for the end-user.
- Premium rate USSD short codes charge the end user a premium price for short code triggering.
Generally, USSD short codes are either reverse-billed or standard rates.