If you have ever pasted a virtual number into a signup form and got back "this number cannot be used", you ran into a carrier lookup. The number was real. It could receive SMS. The platform still refused it — because of what the number is in the telephony databases, not because of anything you did.
This is the single most common reason SMS verification fails, and almost every "why won't this work" question about virtual numbers traces back to the same VoIP / non-VoIP distinction. This guide explains what the split actually is, how detection works in practice, and what to do when a number gets rejected.
The Core Difference
What Makes a Number VoIP
Every phone number in the world belongs to an allocated block, and every block is registered to an operator in a national numbering database. When a mobile carrier like T-Mobile or Vodafone is assigned a range, numbers in that range are recorded as mobile lines tied to that carrier.
VoIP providers get blocks too. When an internet telephony company is allocated a range, every number it hands out inherits that registration. A lookup against a Google Voice number does not return "Google Voice, but basically a phone" — it returns a line type of voip and the carrier name of the underlying provider.
That registration is the whole story. It is not inferred from behaviour, it is not a guess, and it does not change based on how you use the number.
| Non-VoIP (mobile) | VoIP | |
|---|---|---|
| Where the number lives | A mobile carrier's network | A provider's data centre |
| Line type returned by lookup | mobile | voip / nonFixedVoip |
| Typical source | Carrier SIM, MVNO, eSIM, rented mobile line | Google Voice, TextNow, softphone services |
| Cost to the provider | High (carrier contracts, SIM infrastructure) | Very low |
| Accepted by strict platforms | Usually | Rarely |
Why "Virtual" Is the Wrong Axis
The word virtual confuses this badly. People assume the split is physical SIM versus no physical SIM, so they conclude that any number without a SIM in their own hand must be blocked.
That is not how it works. A rented virtual number can sit on a real carrier SIM held in a provider's hardware — the number is registered as mobile, the SMS travels over the mobile network, and the lookup returns mobile. What varies is not whether you hold the SIM; it is whether a SIM and a carrier exist at all behind the number.
So the useful question is never "is this virtual?" It is "what line type does this number resolve to?"
How Detection Actually Happens
The Lookup Runs Before the SMS
The check happens at the moment you submit the form, before any message is sent. The platform calls a number intelligence API — Twilio Lookup, Telesign, Ekata, and NumVerify are the common ones — and gets back a structured response in a few hundred milliseconds.
A typical response contains:
- Line type: mobile, landline, VoIP, non-fixed VoIP, or unknown
- Carrier name: the operator the block is registered to
- Country code: the real country, regardless of what the user selected
- Portability data: whether the number has been ported between carriers
- Risk score: on premium tiers, a fraud likelihood based on the vendor's own history
The platform then applies its own rules to that response. This is why the rejection is instant and why re-requesting the code changes nothing — you never reached the SMS stage.
What Gets Weighed Besides Line Type
Line type is the biggest factor but not the only one. Platforms with mature anti-abuse systems also look at:
- Reuse history. A number that has verified forty accounts on the same platform is treated as a shared pool number, even if it resolves to
mobile. This is why cheap heavily recycled numbers fail on services where fresher numbers from the same provider succeed. - Country risk. Some countries carry disproportionate fraud volume, and platforms weight them accordingly. A UK mobile and a mobile from a high-risk market are not treated identically.
- Velocity. Several signups from one IP range hitting numbers from one carrier block in a short window looks like automation regardless of line type.
- Account context. A new device, a fresh browser profile, and a rented number together score worse than any one of those alone.
The practical consequence: a non-VoIP number dramatically improves your odds but does not make verification deterministic.
Platform Strictness in Practice
Platforms sit on a spectrum. Roughly, the more a service loses when a fake account gets through, the harder it checks.
| Platform | Strictness | What usually happens |
|---|---|---|
| Banking and payment apps | Very strict | VoIP blocked outright; many also reject numbers with no porting history |
| Strict | VoIP blocked; heavily reused mobile numbers frequently refused too | |
| PayPal | Strict | Lookup plus risk scoring; country matters as much as line type |
| Strict | VoIP blocked for new accounts; existing accounts more lenient on re-verification | |
| Telegram | Moderate | Blocks obvious VoIP ranges but accepts more number types than WhatsApp |
| TikTok | Moderate | Rejects VoIP and unsupported countries; error message is generic |
| Amazon | Moderate | Accepts most mobile numbers; occasional refusals on recycled pools |
| Discord | Lenient | Accepts many number types, tightens after abuse reports |
| Smaller apps and marketplaces | Lenient | Often only check that an SMS was delivered |
Treat this as a rule of thumb rather than a fixed contract. Platforms retune these thresholds regularly and often quietly, and a number type that works one month can stop working the next.
For platform-by-platform walkthroughs including the countries that currently work best, see the , the , the , and the .
Why Free Number Sites Almost Never Work
Public "receive SMS online" sites publish a handful of numbers and display every message that arrives on a shared page. They fail on strict platforms for two independent reasons, and fixing one does not fix the other.
They are usually VoIP. Running a public free service on real carrier SIMs is expensive. The economics push operators toward VoIP ranges, which the lookup catches immediately.
They are already registered. Even if a public number resolves to mobile, thousands of people have used it. WhatsApp already has an account on it. Google already has one. The platform does not say "this number is VoIP" — it says the number is already in use, which sends people chasing the wrong problem entirely.
There is also a real privacy cost that gets underweighted: anyone can read the inbox. A code you receive is visible to every other visitor on the page, along with whatever else the message contains. That is acceptable for throwaway signups and genuinely unsafe for anything attached to an identity or a payment method.
What To Do When a Number Is Rejected
Work through these in order. The first two solve the large majority of cases.
1. Change country before you change anything else. Acceptance varies more by country than by any other single variable. If a US number was refused, a UK, Netherlands, or Poland number will often go through on the same platform in the same session. This costs one more verification and takes under a minute.
2. Get a fresh number rather than retrying the same one. Re-requesting a code on a rejected number cannot work — the block happened at lookup time, and the answer will be identical. Release it and take a new one.
3. Check the number format. A surprising share of "rejections" are the country code being entered twice, or a leading zero kept from the national format. Enter the number exactly as your provider displays it.
4. Try voice delivery if offered. Some platforms fall back to a voice call reading the code aloud, and that path occasionally has looser number-type rules than SMS.
5. Reconsider whether the account should use a rented number at all. If it is an account you need to keep for years, with password resets and security checks ahead of it, a short-lived number is the wrong tool — you will lose access when the number is recycled. Rent long-term or use your own line. The covers where that line falls.
Choosing a Provider on This Axis
If line type is what determines success, then the questions worth asking a provider are narrower than the usual feature list:
- Are the numbers mobile-registered? A provider that cannot answer this plainly is telling you something.
- How much does each number get reused, and how fast? Fresh pools cost more and fail less. This is the difference behind two providers with identical marketing and very different results.
- How many countries are actually available for the service you need? Country switching is the primary fix for a rejection, so breadth here is a reliability feature, not a vanity metric.
- Do you pay for failures? Charging only on a successfully received code aligns the provider with you. If failed attempts are billed, the provider has no reason to prune bad numbers.
On this site, numbers are sourced as mobile lines and credits are consumed per successful activation, with pricing that varies by service and country because demand and supply differ per route. Current rates are on the , and per-service country availability is on the .
The Short Version
- Rejection is a line type problem, decided by a carrier lookup before any SMS is sent.
- VoIP numbers — including Google Voice and free second-number apps — fail on strict platforms by design.
- Non-VoIP mobile numbers pass that check, but reuse history and country still matter.
- Free public numbers fail twice over: usually VoIP, and always already registered.
- When something is refused, switch country first. It resolves more cases than any other step.
- See which platforms and countries are available:
- Check credit costs per verification:

