Looking for a way to find your iPhone's IMEI number, check whether call forwarding is enabled or test your network's signal strength. Well, you can do all that by dialling an iPhone secret code in the Phone app. But unlike Android devices, iPhones have fewer secret codes since Apple doesn't want you to tinker with your device. So, in this guide, we will discuss all the working iPhone secret codes, what each one does and how to use it.
What Are iPhone Secret Codes?
Secret codes are a string of digits including numbers, asterisk (*), and hash (#) symbols that you enter in the Phone app's keypad. It's just like dialling any other phone number on your iPhone, which unlocks a hidden menu unavailable anywhere else. Hence, these are referred to as secret codes. You can use them to check your iPhone's IMEI number or call and network details right from the Phone app.
Top iPhone Secret Codes
There are countless iPhone secret codes available online, but only a handful of them are actually working in 2026. I tested hundreds of codes across an iPhone Air running on iOS 26 and an iPhone 13 running on iOS 18, as well as an old iPhone SE (2020) to make sure I am not missing out on any device. After thorough testing, here is a table of the top codes found to be still functioning.
| Code | Function |
|---|---|
| *#06# | View iPhone IMEI number |
| *#07# | Legal & Regulatory information |
| *3001#12345#* | Detailed network status |
| *#21# | Check if any call forwarding is active |
| *#67# | Check forwarding when the line is busy |
| ##002# | Cancel all active call forwarding at once |
| *#43# | Check call-waiting status |
| #31#[number] | Hide caller ID for one number only |
| *5005*25371# | Check emergency alert status |
| #61# | Check missed calls when the iPhone was off or out of the network |
As you can see, there is no engineering or diagnostics mode since Apple keeps a close guard on such things and would not allow everyone to enter it with just a secret dialler code.
Complete List of iPhone Secret Codes: Device Info, Calling, Emergency Test and More
Here's a list of all the secret codes that we tested and worked on our iPhones. These codes can give you access to device information, call forwarding, call blocking, and test screens.
iPhone Device & Network Info Secret Codes
The *#06# is a universal secret code that works across all iPhone models as well as Android devices. The same goes for *#07#, which only shows the regulatory information for your iPhone in case you need it. Entering *3001#12345#* and pressing call opens a hidden menu which shows all your network-related details. This is the closest thing that an iPhone has to an engineering mode.

| Code | Function |
|---|---|
| *#06# | View IMEI, MEID & EID numbers |
| *#07# | Displays legal and regulatory information |
| *3001#12345#* | Show detailed network status |
iPhone Call Forwarding Dialer Codes
If you want to check whether call forwarding is enabled on your device or you want to turn it on for a specific number, you can use these iPhone secret codes. *#21# checks complete call forwarding status, while **21* (phone number)# turns on call forwarding to that number whenever someone calls you. You can also use these codes to disable them as well.

| Code | Function |
|---|---|
| *#21# | Check unconditional call forwarding status (all calls) |
| **21*[number]# | Activate forwarding all calls to a number |
| ##21# | Deactivate call forwarding |
| *#61# | Displays forwarding when no one answers |
| ##61# | Deactivate no-answer forwarding |
| *#67# | Check call forwarding when the status is 'Busy' |
| **67*[number]# | Activate call forwarding when busy |
| ##67# | Deactivate busy call forwarding |
| *#62# | Check call forwarding when unreachable |
| **62*[number]# | Activate call forwarding when the iPhone is off or out of signal |
| ##62# | Deactivate unreachable call forwarding |
| ##002# | Cancel ALL call forwarding in one step |
| **004*[number]# | Set all call forwarding (no answer + busy + unreachable) at once |
| ##004# | Cancel all conditional forwarding at once |
| *43# | Enable call waiting |
| #43# | Disable call waiting |
| *#43# | Check call waiting status |
Some of these codes did not work as intended for me, which could be a limitation of the carrier, since all iPhones did display the menu related to these codes. You can try them out yourself and see if they work out with your carrier or region.
iPhone Call Blocking Codes
If you want to block certain outgoing calls or check what your current call blocking status is, then you can dial these codes. *#33# checks whether any restrictions are active on outgoing calls. While **33*[PIN]# blocks all outgoing calls completely. The PIN in this case is typically 0000 or 1234.

| Code | Function |
|---|---|
| *#33# | Check call-blocking status |
| **33*[PIN]# | Block all outgoing calls |
| ##33*[PIN]# | Disable blocking outgoing calls |
| **331*[PIN]# | Block international calls outgoing |
| ##331*[PIN]# | Disable blocking international outgoing calls |
| **35*[PIN]# | Block all incoming calls |
| ##35*[PIN]# | Disable blocking incoming calls |
| **351*[PIN]# | Block incoming calls while roaming |
| ##330*[PIN]# | Remove ALL call blocking |
iPhone Caller ID Codes
Those who want to hide their caller ID on outgoing calls can try these iPhone secret codes. *#31# checks whether the caller ID is currently enabled. This code confirms whether the setting is active on the network side, rather than just in iOS Settings. #31# followed immediately by a phone number hides the caller ID for that single call only, without changing the permanent setting.

| Code | Function |
|---|---|
| #31#[number] | Hide your number for that specific call only |
| *#31# | Check outgoing caller ID status |
| *#30# | Check the incoming caller ID status |
iPhone Emergency Test Services Codes
These codes help you check whether the emergency test alert service is enabled on your iPhone or not. It is necessary to have it turned on, since it lets you receive important test alerts, warning you about severe storms or other similar situations.

| Code | Function |
|---|---|
| *5005*25371# | Check emergency alert status |
| *5005*25370# | Disable emergency alerts |
How to Enter Secret Codes on iPhone
Using these codes requires no special setup. Here is how to do it:
- Open the Phone app on your iPhone and tap on the Keypad tab at the bottom right.
- Type the code exactly as shown, including all asterisks and hash symbols.
- Some codes execute automatically the moment the final character is typed.
- If the code does not trigger automatically, tap on the Call button to execute it.

A few things to keep in mind: codes must always be entered in the default Phone app. Third-party dialler apps will not work.
That about wraps it up, everything there is to know about iPhone secret codes. This was a lengthy list, but I made sure to only include all the working secret codes and avoid the ones that are no longer supported in iPhones. Do let me know if I have missed any important test codes, and I hope you found this guide useful.









.jpg.jpg)
















