13 Secret Codes That Unlock Hidden Features on Your Phone
The USSD protocol allows you to access hidden features you didn't know about right from your smartphone's dialer. But there is some trickiness you'll need to know about.
Remember that scene in War Games when the socially broken code monkeys were explaining to aspiring hacker Matthew Broderick all about "back doors" (i.e. secret pathways planted by programmers)? Well, that's actually a thing.
Coders have a storied tradition of baking in secret passageways (or sometimes, just fun little Easter eggs) that can only be accessed by inputting a special "key." And so that tradition continues in the mobile age.
Unstructured Supplementary Service Data (USSD) -- sometimes known as "quick codes" or "feature codes" -- is an extra-UI protocol, which allows people to access hidden features. This protocol was originally created for GSM phones, but can be found on CDMA devices as well (if that's a bunch of acronym gibberish to you, here's a quick primer).
These publicly available backchannels allow users to directly communicate with their service provider's computers and/or access back-end features in their device. They are accessed by inputting them into the phone's dialer (the screen you use to start a phone call) and usually begin and end with the * or # keys with a sequence of numbers in between (there's close-to-zero chance that anyone would accidentally access them).
They're not terribly practical. Most people don't really need to know how their local cell towers are performing or what their IMEI number is (more on that later). Still, it can be fun to play around and see what unexpected functionality your phone is hiding beneath the surface.
We would love to provide you with a comprehensive list of the dozens of codes out there, but that would be an exercise in futility. These codes seldom work across different carriers, OSes or phone models (or even on generations of the same model).
If you really want to try them out, your best bet may be to Google your phone's make and carrier + "USSD" for a tailored, comprehensive list. I attempted a number of codes using an iPhone SE (while trading out numerous carrier SIM cards) in addition to a Galaxy S5 and Galaxy S7 Edge running on AT&T. Some of them worked! Check out the list below for 13 codes that I can confirm worked on at least one device. Good luck and have fun!
Field mode: *3001#12345#*
Type *3001#12345#* into your phone's dialer and then press the green call button to access "Field Mode," which can give you access to info about local networks and cell towers.
You'll probably never ever have to know about your local cell tower's "Measured RSSi," but it's fun to look around for a bit.
General test mode: *#0*#I could only get this to work on Android. But this prompts a library of different phone operations, which could be operated with a single push (e.g. Sleep, Front Cam, Vibration).
Display your IMEI: *#06#
Here's a code which I found out does not work with Verizon on an iPhone, but I could make it work after switching to a T-Mobile SIM. It also worked on my Android AT&T device as well. To access it, type in the above code, and then the green call button to prompt your IMEI number (or your International Mobile Station Equipment Identity number, but you already knew that).
The IMEI is unique to your device. Among other things, the number can help "blacklist" stolen devices or help with customer support.
Check your call forwarding: *#67#
This code allows you to check which number your phone is currently forwarding calls to when you're busy or reject a call.
By default, this is probably your carrier's voicemail service, but you can change it to forward to a different number (a home number, office number or third-party answering service for example).
On an iPhone, you can change this number by going to Settings > Phone > Call Forwarding. On Android (varies from system to system), tap the Phone app > hamburger icon > Settings > Call > More Settings > Call forwarding
Get even more info on call forwarding: *#61#On my Galaxy phone, this code prompted a pop-up that let me know how long until a call is forwarded to the message center. On the iPhone, regardless of carrier, this code just showed me the same info as *#67# .
Check your available minutes: *646#Apparently this one only works on postpaid plans. I was not able to get it to work on my test iPhone (regardless of carrier; I tried three), but I did get it to work on my Galaxy phone (which happens to have an unlimited texting plan from AT&T). Instead of showing the info on a new screen, it sent my phone a text message.
Check your bill balance: *225#Once again, I couldn't get this one to work on the iPhone, but on Android I did get it to prompt a SMS message with my current balance due.
Hide your phone from caller ID: #31#I could only get this to work on Android. But entering this code prompted a pop-up stating that my Caller ID had been disabled. In order to re-instate Caller ID, enter *31# .
Check your billing cycle: *3282#Once again, I could only get this to work on Android. It prompted an SMS message with my billing info.
SMS message center: *5005*7672#This code will tell you your SMS message center number. I have no idea why you'd need that info, but there ya go.
Activate call waiting: *43#This code will activate call waiting; you can deactivate it by entering #43#.
Quick test menu (Samsung Galaxy only) *#7353#
As far as I can tell, this code only works on Samsung Galaxy models (I tested it on my Galaxy S7 Edge). This is similar to the General Test mode mentioned earlier, in that it brings up a menu with a number of one-tap test prompts.
The first test is "Melody," which prompts a jaunty little K-Pop diddy. I don't know who the artist is (it's un-Shazammable!), but a search of the lyrics pointed me to this YouTube clip, with a title that translates to "Samsung Anycall Galaxy basic level -- Hey Now (Good bye)."