- USSD and GSM Codes for Mobile Phones and Smartphones – Explained Simply
- What Are USSD and GSM Codes?
- Which Devices Support USSD Codes?
- How to Enter USSD Codes
- Important USSD and GSM Codes
- Manufacturer-Specific Codes
- iPhone
- Samsung
- Huawei
- Provider-Specific Codes
- Telekom (Germany)
- Vodafone
- O2
- Frequently Asked Questions (FAQ)
USSD and GSM Codes for Mobile Phones and Smartphones – Explained Simply
Most people have seen those little combinations of stars (*) and hashes (#) on their phone, but what do they actually do?
These are called USSD and GSM codes, and they allow you to access hidden functions, change settings, or request information directly from your mobile network operator.
In this article, you’ll learn:
- What USSD and GSM codes are
- Which devices support them
- How to use them
- The most common codes (general, manufacturer-specific, and provider-specific)
- Why they are useful
What Are USSD and GSM Codes?
USSD (Unstructured Supplementary Service Data) are service commands in GSM mobile networks. They are made up of stars (*), hashes (#), and numbers.
With these codes, you can for example:
- Display your IMEI number
- Check your own phone number
- Change your SIM PIN
- Enable or disable call forwarding
- Check your prepaid balance
Unlike normal apps, USSD codes work directly via the mobile network and do not require an internet connection.
Which Devices Support USSD Codes?
- All classic GSM mobile phones
- Smartphones (Android and iPhone)
- Dual-SIM devices – each SIM has its own IMEI
Some codes only work on certain manufacturers (e.g. Samsung test menu) or specific network operators (e.g. balance check at Telekom, Vodafone, or O2).
How to Enter USSD Codes
Open the Phone app on your device, enter the code on the dial pad, and press the call button (green handset).
Example:
- Check IMEI: Dial
*#06#
and press call.
Important USSD and GSM Codes
Code | Description |
---|---|
*#06# | Displays the IMEI number (device serial number) – useful if your phone is lost or stolen |
*135# | Shows your own phone number (depending on provider) |
**04*oldPINnewPIN*newPIN# | Change the SIM PIN |
**05*PUKnewPIN*newPIN# | Unlock SIM with PUK if the PIN has been entered incorrectly multiple times |
**042*oldPIN2newPIN2*newPIN2# | Change the PIN2 (used for special SIM functions, e.g. cost control) |
**052*ÜUK2newPIN2*newPIN2# | Unlock PIN2 using PUK2 |
*31#<number> | Show caller ID when calling |
#31#<number> | Hide caller ID when calling |
*30# | Enable caller ID display for incoming calls (CLIP on) |
#30# | Disable caller ID display for incoming calls (CLIP off) |
*43# | Enable call waiting – get notified of a second call while on the phone |
#43# | Disable call waiting |
**21*<number># | Forward all calls to <number> |
##21# | Deactivate all call forwarding |
*#21# | Check status of call forwarding |
*62# | Forward calls when phone is unreachable |
##62# | Cancel unreachable call forwarding |
*#62# | Check unreachable call forwarding status |
*61<number># | Forward calls after 5 rings |
61<number><time># | Forward calls after a set time delay (e.g. 20 seconds) |
##61# | Cancel call forwarding after a set time |
*#61# | Check status of timed call forwarding |
*67<number># | Forward calls when line is busy |
##67# | Cancel busy call forwarding |
*#67# | Check busy call forwarding status |
##002# | Deactivate all call forwarding |
*002# | Activate all call forwarding (forwards everything – use with caution) |
##004# | Deactivate all conditional forwarding (busy, unreachable, no answer) |
*004# | Activate all conditional forwarding |
*221# | Shows the status of MultiSIM – indicates which SIM currently receives SMS |
*222# | Activates the current SIM card for receiving SMS (enter on the desired SIM and press call) |
Manufacturer-Specific Codes
iPhone
*3001#12345#*
→ Field test mode*#5005*7672#
→ Show SMSC number*#5005*86#
→ Show mailbox settings
Samsung
*#0*#
→ Test menu*#1234#
→ Firmware version*#0228#
→ Battery status
Huawei
*#*#2846579#*#*
→ Service menu*#*#6130#*#*
→ Test menu
Provider-Specific Codes
Telekom (Germany)
*100#
→ Prepaid balance*101*<top-up code>#
→ Recharge prepaid balance*222#
→ Activate current SIM for SMS reception (MultiSIM)
Vodafone
*100#
→ Balance & CallNow menu*106#
→ CallYa balance
O2
*101#
→ Prepaid balance*103*<top-up code>#
→ Recharge balance
Frequently Asked Questions (FAQ)
Are USSD codes dangerous?
No, most codes are harmless (e.g. balance check, IMEI). Only use reset or PUK codes if you know what you’re doing.
Do all codes work on every smartphone?
No, some are manufacturer- or provider-specific. For example, prepaid balance checks differ by carrier.
Can I use USSD codes abroad?
Sometimes yes, but many prepaid and provider-specific codes only work in your home network.