"The code didn't arrive" has about nine distinct causes, and they need different responses. Retrying is the right move for exactly two of them. Here they are roughly in order of how often they bite.
1. The service blocks known public numbers
This is the most common cause by a distance. Large platforms buy lists of numbers associated with public inboxes and disposable-number services and refuse them at signup. The refusal often looks like success: the form accepts the number, says a code has been sent, and nothing is ever dispatched.
What works: nothing, on that number. Trying again will not change the outcome. A different country sometimes helps because the block lists are uneven, but if a platform has decided to reject public numbers, it will keep rejecting them.
2. The number was reused for the same service
A public number gets used for the same platform repeatedly. Once an account exists against that number, the service treats a second signup as a duplicate and silently drops it, or sends a "this number is already registered" flow instead of a code.
What works: a different country, or a different service entirely.
3. A2P routing rejected the destination
Application-to-person SMS — which is what verification codes are — goes through registered routes with per-country rules. In several markets, notably the US and India, the sender must be registered for A2P traffic to that destination and unregistered traffic is dropped at the gateway. Nothing bounces back to you; the message just does not exist.
What works: pick a destination country the sender is likely to be registered for. If you are signing up to a US service, a US number routes more reliably than an Indonesian one.
4. The sender only sends domestically
Plenty of services send verification SMS only within their own market. A Brazilian bank has no reason to pay for international A2P delivery. If the platform is national, an international number often cannot receive from it at all.
What works: match the number's country to the service's country.
5. The code arrived and was consumed by someone else
On a public inbox, everyone sees everything. If the number is busy, a code can arrive, be read, and be used before you refresh. Some services invalidate a code once it has been submitted, so you will never see a working one.
What works: a quieter country page, or accepting that a heavily used number is not usable for this.
6. Delivery is simply slow
Cross-border A2P is not instant. Thirty seconds is normal, two minutes happens, and during regional congestion it can be much longer. Requesting a new code often resets the sender's rate limit and makes things worse rather than better.
What works: wait two minutes before requesting a resend. This is one of the two cases where patience is the answer.
7. You hit the sender's rate limit
Requesting several codes in quick succession trips a per-number cooldown on the sender's side, typically fifteen minutes to an hour. Further requests are accepted by the UI and discarded.
What works: stop requesting. Wait out the cooldown.
8. The number rotated underneath you
Services that refresh their numbers on a schedule — daily is common — will hand a code to the number that was current when you submitted the form, not the one currently displayed. If you request a code just before a rotation, it lands in an inbox you can no longer see.
What works: re-request after a rotation rather than waiting on the old code. This is the second case where a retry genuinely helps.
9. The number was never valid
Worth ruling out. Some sites publish numbers that are malformed under their national plan — the wrong length, or a retired prefix. Those cannot receive anything. If a number never delivers for any service, this is likely why.
Choosing a number that has the best chance
- Match the country to the service's home market.
- Prefer a number with recent traffic from other services — it shows the route works.
- Avoid the busiest country page for anything popular; contention is real.
- Give it two minutes before assuming failure.
- If two different countries both fail for the same service, that service blocks public numbers. Move on.
When a public number is the wrong tool
If the account will hold money, personal records, or anything you would mind losing, none of the above applies — you should not be using a public inbox at all. Anyone can read the codes, and anyone reading them can trigger a password reset. Public numbers are for throwaway signups. That is the whole of their use case.
0 comments
No comments yet — start the conversation.
Leave a comment
Your email is never published. Comments appear after a quick review.