Country codes look simple until you actually try to build a working messenger link with one. This is a working reference, maintained by the Ringlink team, that flags the trunk-prefix and leading-digit quirks that break click-to-chat URLs most often.
How to read this table
- Code — the country code in E.164 form, plus sign included.
- Trunk — the digit(s) locals dial as a prefix for domestic calls, which must be dropped in the international form. A dash means no trunk prefix.
- Note — anything unusual about mobile-number patterns.
Reference table
| Country | Code | Trunk | Note |
|---|---|---|---|
| United States / Canada | +1 | — | NANP; area code baked in |
| United Kingdom | +44 | 0 | Mobiles start 07 domestically |
| France | +33 | 0 | Mobiles start 06/07 |
| Germany | +49 | 0 | Drop leading 0 |
| Italy | +39 | — | Keep leading digit for mobiles |
| Spain | +34 | — | Mobiles start 6 or 7 |
| Portugal | +351 | — | No trunk prefix |
| Netherlands | +31 | 0 | Drop leading 0 |
| Belgium | +32 | 0 | Drop leading 0 |
| Switzerland | +41 | 0 | Drop leading 0 |
| Austria | +43 | 0 | Drop leading 0 |
| Sweden | +46 | 0 | Drop leading 0 |
| Norway | +47 | — | No trunk prefix |
| Denmark | +45 | — | No trunk prefix |
| Finland | +358 | 0 | Drop leading 0 |
| Poland | +48 | — | 9-digit numbers |
| Russia | +7 | 8 | Domestic 8 → international +7 |
| Ukraine | +380 | 0 | Drop leading 0 |
| Turkey | +90 | 0 | Drop leading 0 |
| Israel | +972 | 0 | Drop leading 0 |
| Saudi Arabia | +966 | 0 | Drop leading 0 |
| UAE | +971 | 0 | Drop leading 0 |
| Egypt | +20 | 0 | Drop leading 0 |
| South Africa | +27 | 0 | Drop leading 0 |
| Nigeria | +234 | 0 | Drop leading 0 |
| Kenya | +254 | 0 | Drop leading 0 |
| India | +91 | — | Mobiles start 6/7/8/9 |
| Pakistan | +92 | 0 | Drop leading 0 |
| Bangladesh | +880 | 0 | Drop leading 0 |
| China | +86 | — | Mobiles start 1 |
| Hong Kong | +852 | — | 8-digit numbers, no trunk |
| Taiwan | +886 | 0 | Mobiles start 09 domestically |
| Japan | +81 | 0 | Mobiles start 090/080/070 |
| South Korea | +82 | 0 | Mobiles start 010 |
| Vietnam | +84 | 0 | Mobiles start 03/05/07/08/09 |
| Thailand | +66 | 0 | Drop leading 0 |
| Indonesia | +62 | 0 | Drop leading 0 |
| Philippines | +63 | 0 | Drop leading 0 |
| Australia | +61 | 0 | Mobiles start 04 domestically |
| Mexico | +52 | — | 10-digit numbers, no extra prefix |
| Brazil | +55 | — | Include the 2-digit area code |
| Argentina | +54 | 9 | Mobiles need '9' after +54 |
The three mistakes we see most
- Keeping the trunk zero. Writing
+44 07700 900123instead of+44 7700 900123. WhatsApp will silently return "not a WhatsApp user." - Dialing 001 or 011. Those are outbound international access codes (US, Canada, and a few others). They belong on a phone keypad, not in an E.164 string. Use
+. - Argentine mobiles without the 9. Argentina is unusual: to reach a mobile number internationally, you insert a "9" after the country code. Landline
+54 11 4567 8901; mobile+54 9 11 4567 8901. Skip the 9 and you'll reach a landline that isn't yours.
Ringlink handles all of this
When you pick a country flag and paste a domestic-format number, Ringlink applies the correct trunk rule for that country. If the flag picker says Argentina, we add the 9 for mobile ranges. If the flag says UK, we drop the leading 0. You never have to think about it.