Two Ways to Think About Hiding Your Caller ID
Hiding your caller ID on iPhone comes down to one real question: do you want to do it manually, every time, or do you want it handled automatically? iOS gives you manual tools. Pcaller gives you the automatic version of the same thing.
Here's how each actually works, so you can see which one fits how you actually make calls.
---
The Manual Route: Settings and Prefix Codes
iPhone has a setting that hides your caller ID on every outgoing call: Settings β Phone β Show My Caller ID β off. Once it's off, every call goes out as "No Caller ID" until you turn it back on. The problem is that it's all-or-nothing - you can't keep some calls private and others visible without going back into Settings each time.
The other manual option is a prefix code - `#31#` in most of the world, `*67` in the US and Canada - typed directly before the number on a per-call basis. This gives you control over each individual call, but it means opening the keypad and typing the code before every number, every single time. You also can't do this from your contacts list with a single tap - you'd have to find the number, copy it, open the keypad, type the prefix, then type the number out manually.
Both of these are real options. They also both require you to remember to do something extra, every time, with no way to make it automatic through iOS itself.
---
The Automatic Route: Pcaller
This is the gap Pcaller is built to close. Instead of toggling a global setting or typing a code before every number, you set your prefix once inside the app - matched to your country and carrier - and from that point forward, calling privately is just... calling.
What that looks like in practice:
You open Pcaller the way you'd open your regular Phone app. Your contacts are synced and right there, so you can tap a name and call directly. You can also use the keypad and dial a number manually, just like the standard Phone app - either way, the prefix gets applied automatically in the background, so you're never the one typing the code. If you only want some calls private and others normal, you switch modes with a single tap instead of digging through Settings or remembering to type a prefix.
The call itself works exactly the same as any other call - it goes over your real cellular connection through your actual carrier, with identical call quality. The only thing that changes is what the recipient's phone displays, which comes out the same as it would with the manual prefix method: "No Caller ID," "Private Number," or "Unknown," depending on their device and carrier.
What you get with Pcaller that you don't get from the native iPhone options:
- Calling from contacts or the keypad, with the prefix applied automatically either way - no manual code entry
- One-tap switching between private and normal mode, decided per call
- A call history that shows you which calls actually went out as private - no guessing whether you typed the code correctly
- A prefix you set once, so you never have to type a code or toggle a setting before each call
---
A Note on the Settings Toggle and Carriers
Worth knowing regardless of which method you use: some carriers don't support the "Show My Caller ID" setting at the network level, which means the toggle may appear greyed out or simply not change anything when you switch it. This isn't something any app can change - it reflects how that carrier's network is configured, and any method of hiding caller ID ultimately depends on the carrier supporting it in the first place.
---
What Always Shows Through, No Matter the Method
A few exceptions apply universally, regardless of whether you use Settings, type a prefix manually, or use Pcaller:
- Emergency services (911, 112, 999, and equivalents) always receive your real number. This is a legal requirement everywhere, not something any method can override.
- Toll-free numbers sometimes retain visibility into your real number even when it's blocked.
- Your carrier always knows your number internally. Hiding your caller ID changes what the recipient's screen shows - it doesn't remove your number from the network itself.
---
Quick Comparison
The Settings toggle applies to every call automatically and works the same whether you're calling from contacts or the keypad, but it's all-or-nothing - there's no per-call control.
Typing `#31#` or `*67` manually applies to one call at a time, giving you full control over when you're private, but it only works from the keypad - you have to type the code by hand before every number, every single time.
Pcaller applies to every call, or just the ones you choose with a single toggle, and works the same way whether you're calling from your contacts or dialing manually - the prefix is applied automatically either way, with no typing required after the initial setup.
---
The Bottom Line
If you genuinely want every call hidden, all the time, with zero exceptions, the Settings toggle does the job with no app needed, provided your carrier supports it. If you want the flexibility to switch between private and normal calls without digging through menus or typing codes manually before every number - that's exactly what Pcaller was built for. Set it up once, and hiding your caller ID becomes as simple as tapping a contact's name.