
Your iPhone is a complex device with different settings and configuration features. Sometimes it takes several minutes to access some of these features with usual navigation. Other features are completely hidden from the main menu. The secret codes offer quick access to these features and hidden functionality. So whether you want to check your IMEI, run hardware tests, control call forwarding, or diagnose a problem, these codes will come in handy.
What exactly are secret USSD codes?
They are special combinations of numbers and symbols you enter in the phone’s dialer to access hidden functions or communicate directly with your mobile network.
The secret codes come in two types:
MMI (Man-Machine Interface Codes)
MMIs are manufacturer-designed codes that help you find hidden settings or turn off certain features. These codes are brand-specific. So, iPhone codes may not work with Samsung or vice versa.
A few iPhone MMI codes are universal and work with all devices, irrespective of the brand. These are standardized codes in the mobile industry. Others relate to basic LTE and GSM features that are standard in all phone models.
Carrier USSD (Unstructured Supplementary Service Data) codes
USSD codes provide carrier-related information. For example, you may use a USSD code to check your remaining credit balance, check bills, access your bank via your mobile provider, or subscribe to a service.
Most of these codes start with an asterisk and end with a hash. The codes are specific to your service provider, though some may work with other providers in a given region.
How do you use secret codes on an iPhone?
You just need to enter your codes as they are on your dialer app. Some codes require you to hit the call button, while others activate immediately after you enter them. So, using them shouldn't bother you much.
Take caution when using secret codes. While helpful, they can also present some risks. Here are a few things to keep in mind:
- Some reset codes may erase your data or settings. Don’t enter codes you are not sure of.
- Hidden menus (such as Field Test Mode) contain technical information. Don’t change settings if you don't understand the jargon.
- Back up data before using any code that modifies settings; back up your iPhone via iCloud or a computer.
- Only use official and trusted codes for your iPhone.
Can you reverse iPhone secret codes?
You can reverse some, especially those that change settings like call forwarding, call barring, or network configurations, by entering complementary codes. For example, if you enable call waiting with *43#, you can always reverse it with #43#.
What if there are no reverse codes? Use the settings app to manually adjust settings. Sometimes you cannot resolve the secret codes manually. It happens if the function that you wish to reverse is unavailable in the settings app.
Stuck there? Don't worry! You just reset your device to factory settings or seek professional help.
Here is how to reset it.
- Open the Settings app.
- Locate the General tab.
- Tap Transfer or Reset iPhone.
- Click Erase All Content and Settings.
Be sure to follow the prompts to confirm the erasure. This should be the last option if you cannot restore your phone. Also, could you back up your data before doing it?
Save yourself the restore headache by making changes you really need and are sure about.
Common iPhone universal secret codes
These codes help with various GMS-related features and basic iPhone information. Here are the most common ones.
- ∗#06#- Display IMEI Number
Type the code to know your phone's hardware ID. Keep it handy to identify your phone if lost.
- *#07# - Display Device SAR Level
Your phone emits some RF energy. This code measures energy absorbed by human tissue. Great for checking if it complies with local safety standards (e.g., FCC or CE limits).
- ∗#21# - Call Forwarding Status
Checks if all voice calls, data, fax, and SMS are unconditionally forwarded. It also shows the recipient number. Use it to troubleshoot missed calls or detect unauthorized forwarding.
- ##002# - Remove All Call Forwarding
Quick code to turn off all types of call forwarding that may have been activated. Remember, it deactivates your operator's set call forwarding features too.
- *43# - Enable Call Waiting
This is the Call Waiting activation code. It lets you know of incoming calls when you're already on a call.
- #43# - Disable Call Waiting
The Call Waiting feature deactivates with the code.
- #43# - Disable Call Waiting
Deactivates the Call Waiting feature.
- ∗#43# - Check Call Waiting Status
Verifies whether the Call Waiting feature is currently active.
- #31# + Number - Hide Caller ID (Per Call)
Temporarily hide your phone number (caller ID) from the recipient—example: #31#123456789.
- ∗#33# - Check Call Barring Status
Show if call barring is currently active, which can block incoming or outgoing calls.
- ∗#61# - Check Forwarding (Unanswered)
Use this code to know which number your calls go to if you have already set call forwarding.
- *#62# - Check Forwarding (Unreachable)
Someone called when you were unreachable? Hit this code to confirm the number to which calls are forwarded.
- *#67# - Check Forwarding (Busy/Rejected)
Use the code to know the number of calls that are forwarded to when your line is busy or if you decline a call. know the number of calls that are forwarded to when your line is busy or if you decline a call.
- ∗#76# - Check Connected Line Presentation Status
Checks if the number of the party you are calling is being presented to you (caller's information display).
- ∗#30# - Check Calling Line Presentation Status
Determine whether your own number is displayed to the person you call.
- *82# + Number - Show Caller ID (Per Call)
Forces your Caller ID to be shown, even if your account is set to block it by default.
All Codes in one table
| *#06# | Displays IMEI Number |
| *3001#12345#* | Activates Field Test Mode |
| *#31# | Checks Status of Caller ID |
| *#33# | Checks Call Barring Status |
| *33*pin# | Enables Call Barring |
| #33*pin# | Disables Call Barring |
| *#43# | Checks Call Waiting Status |
| *43# | Enables Call Waiting |
| #43# | Disables Call Waiting |
| *#61# | Checks Number of Missed Calls |
| *#62# | Checks Call Forwarding Number |
| *#67# | Checks Call Forwarding Status |
| *21# | Enables Call Forwarding |
| #21# | Disables Call Forwarding |
| *#004# | Checks All Call Forwarding Information |
| ##002# | Disables All Call Forwarding |
| *#30# | Checks Call Line Presentation |
| *#76# | Checks Connected Line Presentation |
| *3370# | Improves Call Quality |
| #3370# | Disables Improved Call Quality |
| *646# | Checks Remaining Contract Minutes |
iPhone-specific secret codes
These are iOS-specific menus that give you an advanced look at the network and diagnostics. Not sure what they do? Only change these features when you are sure of them.
- *3001#12345#* - Open Field Test Mode
This code opens a menu about your cellular network connection. Use it to check signal quality and strength, cell tower ID, and Radio Access Technology (RAT).
- #5005*7672# - Check SMS Service Center Number
Use the code to display the SMS center number your carrier uses to send/receive texts.
- *#3370# - Enable EFR Mode
Activates Enhanced Full Rate mode. You can use it to improve voice call quality. Keep in mind it may drain the battery faster.
- #3370# - Disable EFR Mode
Deactivates EFR mode to conserve battery.
Call management and line status (Universal GSM)
Use these codes to manage and check the status of various features related to your phone number and calls.
Account and balance codes
These are universal codes for checking the account balance and billing status. You can use it along with your carrier-specific USSD codes.
- ∗#225# - Check Postpaid Billing Status
Use the codes to check your bill balance or account status. This functionality can vary by carrier and be unavailable in others.
- ∗ #777# - Check Prepaid Account Balance
Use the code to display your remaining prepaid balance. Again, it may not work with some carriers.
- ∗#3282# - Check Usage Information
Displays information related to call minutes and data usage (often carrier-dependent).
Wireless Alert System (WEA/Test Alert) codes
These codes are related to the system that delivers Amber Alerts, Imminent Threat Alerts, and Presidential Alerts.
- *5005*25371# - Enable Test Alerts
Dial the code and press the Call button. A confirmation message should appear: "Test alerts enabled."
- *5005*25370# - Disable Test Alerts
Dial the code to turn off these test alerts. A confirmation message should appear: "Test alerts disabled."
Note the following about these codes:
- Newer phones don’t use them
If you have an iPhone running iOS 15.6 or later, this feature is located in the Settings app, specifically under Settings > Notifications. The codes above are often obsolete or only functional on older software versions.
- The codes may be carrier-specific
These codes are highly dependent on your mobile carrier and your country's emergency alert system requirements. The above codes are commonly used in the Commercial Mobile Alert System (CMAS)/WEA used in the United States.
- You can’t disable emergency alerts
You cannot use a code to disable National or Presidential alerts, as these are mandated by law. These codes affect only test alerts or, in some cases, other non-critical optional alerts (such as Amber Alerts or public safety messages, which you can toggle via the Settings app).
Hit that secret code!
Your iPhone’s secret codes make it easy to access hidden functionality, change settings in a few clicks, or check whether certain features are activated. Some codes are universal, while others work for your device. Your service provider may have additional codes for network-related activations.
Just ensure that you pick the correct code that matches your needs. You can always refer to this article or your phone’s user manual if in doubt. Many call- and line-related codes include a reversal code or a corresponding settings entry. However, some MMIs lack the feature. Be sure to check your device’s settings app later if using irreversible codes.
Safety Tips for Using USSD Codes
- Use Trusted Sources: Stick to codes from reputable sites like Apple’s documentation or established tech blogs to avoid unintended changes.
- Back Up Your Device: Save your data via iCloud or iTunes before using codes that reset settings (e.g., ##001127# for network reset).
- Test on Secondary Devices: If experimenting, try codes on an older iPhone to avoid disrupting your primary device.
- Avoid Unverified Codes: Some online codes promising to “hack” or unlock hidden features may harm your device or violate carrier policies.
- Check Carrier Compatibility: Not all codes work globally. Verify with your carrier if a code doesn’t function as expected.
Why Use iPhone Secret Codes?
These codes offer a quick way to access advanced features, troubleshoot issues, or customize your iPhone without navigating complex menus. Whether you’re a tech enthusiast, a parent managing call restrictions, or someone optimizing network performance, USSD codes empower you to take control of your device. They’re especially valuable in areas with limited internet access, as they rely solely on the cellular network.