Using a VoIP number to register for ChatGPT gets blocked, and the reason isn't the quality of the number—it's that OpenAI checks the number's "Line Type" before sending the SMS. If the result is VoIP, the process stops right there, and the verification code is never sent. So repeatedly clicking "Resend", changing browsers, or switching network exits won't help—it's the number's attribute that's rejected, not this particular request.
The message you see is exactly about this
After entering a number like Google Voice or TextNow, the page usually pops up directly:
It looks like this is a virtual phone number (also known as VoIP). Please provide a valid, non-virtual phone number to continue.
OpenAI's Help Center is also clear: landlines, VoIP virtual numbers, Google Voice, and premium paid numbers are not supported for verification. Only mobile cellular numbers can receive SMS, and in some regions, WhatsApp can be used to complete verification.
There's a common misunderstanding to clear up first: it's not that "certain number ranges are blacklisted", but what that number range is labeled as in the telecom database.
How the platform determines it
The industry-standard approach is a Carrier / Line Type Lookup. After submitting a number, the risk control system first queries the telecom database in real time for the number's line attributes. The return value is roughly Mobile, Landline, VoIP, or Non-fixed VoIP. Number ranges from VoIP providers like Google Voice, TextNow, and Vonage are explicitly marked as VoIP in the database. The query returns in milliseconds, and the block happens before the SMS is sent.
OpenAI hasn't disclosed which specific verification service it uses, but this process is common across major platforms. This also explains why the same VoIP number works on some small websites but always fails on ChatGPT: whether they check and how strictly they enforce it is up to each platform.
Why VoIP is specifically blocked
Cost. VoIP numbers don't require physical devices; they can be generated in bulk and discarded after use. They are the easiest entry point for automated scripts to mass-create accounts and consume API quotas. Platforms classify these lines as high-risk overall—a crude but effective rule to block abuse, at the cost of legitimate users being shut out as well.

Which numbers can pass
Numbers with a Mobile line type—real carrier numbers connected to traditional cellular base station networks—either physical SIM cards or compliant eSIMs issued by carriers. These numbers have the attribute Mobile in the telecom database, pass the line check, and only then is the SMS actually sent.
Note that some numbers are sold as "local numbers of a certain country", but underneath they are still virtual landing lines, and the lookup will still show VoIP. The criterion is always the line type, not which country the number prefix looks like. For the difference between these two, see What's the difference between real carrier local numbers and virtual landing numbers.
Before switching numbers, decide whether you'll need to receive codes again
ChatGPT SMS verification is often not a one-time thing: logging in on a new device, starting a subscription, enabling two-factor authentication, or later using Codex or the API can all trigger it again. This determines which type of number you should buy.
If it's just a one-time temporary verification and you don't plan to use the account long-term, a short-term number billed by usage with a very short validity period, valid only until verification is done, is enough. If the account will be logged into long-term, it's advisable to start with a renewable long-term number—the number stays in your hands, and you can receive any future re-verification yourself; once the number is recycled, the only way to get it back is through account appeal. The criteria and more scenarios are expanded in How to choose between short-term numbers and long-term premium numbers.
When it comes to picking a specific number: NexSMS's long-term premium numbers are real carrier local numbers (physical SIMs and eSIMs, not virtual landing numbers), with unlimited code reception during the validity period and renewable; short-term standard numbers are one-time use. The differences between the two types and renewal conditions are compared in Features and Renewal Instructions. Available countries and stock change, so before ordering, check the current situation on the official website's country pages, for example the US number page.
There's another easy pitfall with long-term numbers: you must renew before expiration to keep it. After the number is disconnected, the original number is not guaranteed to be recoverable. It's safer to handle it a few days in advance.
How many accounts can one number be linked to
OpenAI has a binding limit for the same phone number. For example, when first creating an API key on the OpenAI Platform, the same phone number can be linked to at most 3 accounts. So don't treat one number as a universal resource to be reused across multiple accounts—once the limit is reached, new accounts will get stuck at the verification step. At that point, the number itself is perfectly fine; switching numbers is the solution, and resending is meaningless.
Still not receiving after switching to a real number
At this point, the problem is probably no longer the line type. Stop first—don't repeatedly click resend. Check layer by layer—initiation, routing, landing, display—to see where it breaks, then decide whether to switch numbers. For the order, see How to troubleshoot when you haven't received an SMS after submitting your number.
One final realistic reminder: getting the number type right only opens the biggest door. Whether you pass a given platform's verification is ultimately determined by that platform's rules at the time, which may also consider region, account history, and risk control strategies.
NexSms官方博客
Comments(0)