# Hong Kong phone number format: +852, mobile prefixes, validation and messaging rules

> Hong Kong phone number format: +852 and 8 digits, no area codes or trunk 0, which first digits are mobile, tested validation code, porting and SIM rules.

Canonical: https://mobilevalidate.com/blog/hong-kong-phone-number-format · Last updated: 2026-10-10

![A +852 chip over eight digit boxes and an abstract harbour skyline, a grid of first digits with 5, 6 and 9 highlighted and 4, 7 and 8 marked partly mobile, a registered SIM, an ID tile, a # sender and porting since 1999.](https://mobilevalidate.com/images/blog/hong-kong-phone-number-format.svg)

*Hong Kong numbers are eight digits with no area code; the first digit alone doesn't say mobile.*


By MobileValidate team (https://mobilevalidate.com/about) · Published: 2026-10-10 · Category: Guides · Tags: Hong kong, Phone validation, E.164, MNP, SMS, Compliance

A Hong Kong phone number is the country code +852 followed by eight digits, with no area code and no trunk prefix: a mobile looks like `+852 5XXX XXXX` from abroad and `5XXX XXXX` at home. Mobile numbers start with 4, 5, 6, 7, 8 or 9 and landlines with 2 or 3, but only some blocks under each digit are mobile, and because porting has been possible since 1999, the prefix doesn't tell you the current network.

This guide is part of our [phone numbers by country](/blog/phone-numbers-by-country) series. The tables are generated from libphonenumber's metadata, our MNP atlas and our public catalog. Example numbers are masked with X. We read the Office of the Communications Authority (OFCA) allocation dataset, updated 4 September 2026, and the government and Legislative Council documents cited below on 2026-10-10. This is a summary, not legal advice.

## What does a Hong Kong phone number look like?

Every ordinary Hong Kong number has eight digits, and you dial all eight anywhere in the territory. There are no area codes and no trunk `0`, so the national number and the digits after `+852` are the same. According to [Wikipedia's summary](https://en.wikipedia.org/wiki/Telephone_numbers_in_Hong_Kong), landlines moved to eight digits on 1 January 1995, when a `2` was put in front of the old seven-digit numbers.

<!-- country-data:HK:format:start -->
<!-- generated by apps/web/scripts/gen-country-guide-data.mjs (libphonenumber metadata 9.0.39 via libphonenumber-js 1.13.13); edit the script, not this table -->

| Item | Value |
|---|---|
| Country calling code | `+852` |
| International call prefix (dialling out) | `00` |
| Trunk prefix (dialling at home) | none |
| Mobile: digits after +852 | 8 |
| Fixed line: digits after +852 | 8 |
| Toll-free: digits after +852 | 9 |
| Premium rate: digits after +852 | 5–8, 11 |
| Personal number: digits after +852 | 8 |
| Pager: digits after +852 | 8 |
| Universal access (UAN): digits after +852 | 8 |
| Mobile, national format (masked) | `51XX XXXX` |
| Mobile, international (masked) | `+852 51XX XXXX` |
| Mobile, E.164 (masked) | `+85251XXXXXX` |
| Fixed line, national format (masked) | `21XX XXXX` |
| Fixed line, international (masked) | `+852 21XX XXXX` |
| Fixed line, E.164 (masked) | `+85221XXXXXX` |
<!-- country-data:HK:format:end -->

People write the same number as `5XXX XXXX`, `5XXX-XXXX`, `+852 5XXX XXXX` or `852 5XXX XXXX` without the plus. A numbering-plan library handles all of these if you pass the default region `HK`. The last form is unambiguous because OFCA reserves the national block `852` itself, so no local number starts with those digits. Store only the E.164 result, `+8525XXXXXXX`.

## Which prefixes are mobile numbers?

Hong Kong has never had separate mobile codes. Mobiles first started with `9`, blocks under `5` and `6` followed, and when those ran short OFCA opened vacant blocks under `4`, `7` and `8`. Its press release of 5 February 2018 says the first `4`, `7` and `8` mobile numbers were expected to be available for assignment that month: about 10.6 million new numbers, used alongside the existing `5`, `6` and `9` mobiles and expected to meet demand until at least 2029 ([OFCA, 2018](https://www.info.gov.hk/gia/general/201802/05/P2018020500306.htm)). The same release scheduled a third phase from 1 July 2021, freeing `71` to `73` blocks after paging numbers moved out.

The table counts, for each 2-digit block, how many 8-digit numbers libphonenumber's mobile pattern for `HK` accepts:

<!-- country-data:HK:prefixes:start -->
<!-- generated by apps/web/scripts/gen-country-guide-data.mjs (exact count over the mobile pattern, libphonenumber metadata 9.0.39); edit the script, not this table -->

| National prefix | International | Share of the block that is mobile (8-digit numbers) | 3-digit sub-blocks that aren't fully mobile |
|---|---|---|---|
| `40` | `+852 40` | 8.0% | not mobile: 400–405, 407, 408; partly mobile: 406 (40.0%), 409 (40.0%) |
| `42` | `+852 42` | 4.0% | not mobile: 420–423, 425–429; partly mobile: 424 (40.0%) |
| `44` | `+852 44` | 99.0% | partly mobile: 444 (90.0%) |
| `46` | `+852 46` | 96.0% | partly mobile: 464 (90.0%), 466 (70.0%) |
| `47` | `+852 47` | 62.0% | not mobile: 477–479; partly mobile: 474 (60.0%), 476 (60.0%) |
| `AA`, for 3 blocks AA = 51, 54, 55 | `+852 AA` | 90.0% | not mobile: AA5 |
| `AA`, for 2 blocks AA = 52, 53 | `+852 AA` | 95.0% | partly mobile: AA5 (50.0%) |
| `56` | `+852 56` | 80.0% | not mobile: 565, 567 |
| `57` | `+852 57` | 87.0% | not mobile: 575; partly mobile: 573 (70.0%) |
| `59` | `+852 59` | 99.0% | partly mobile: 595 (90.0%) |
| `AA`, for 2 blocks AA = 60, 90 | `+852 AA` | 90.0% | not mobile: AA0 |
| `AA`, for 8 blocks AA = 61, 63–65, 69, 94, 96, 97 | `+852 AA` | 100% | — |
| `62` | `+852 62` | 98.0% | partly mobile: 626 (80.0%) |
| `66` | `+852 66` | 96.0% | partly mobile: 666 (60.0%) |
| `67` | `+852 67` | 96.0% | partly mobile: 678 (60.0%) |
| `68` | `+852 68` | 90.0% | not mobile: 686 |
| `70` | `+852 70` | 77.0% | not mobile: 700, 706; partly mobile: 707 (80.0%), 708 (90.0%) |
| `71` | `+852 71` | 4.0% | not mobile: 711–719; partly mobile: 710 (40.0%) |
| `84` | `+852 84` | 62.0% | not mobile: 845–847; partly mobile: 844 (30.0%), 848 (90.0%) |
| `91` | `+852 91` | 90.0% | not mobile: 911 |
| `92` | `+852 92` | 99.0% | partly mobile: 929 (90.0%) |
| `93` | `+852 93` | 98.0% | partly mobile: 939 (80.0%) |
| `95` | `+852 95` | 97.0% | partly mobile: 959 (70.0%) |
| `98` | `+852 98` | 91.0% | partly mobile: 989 (10.0%) |
<!-- country-data:HK:prefixes:end -->

### What else lives under the same first digits?

OFCA's allocation dataset ([OFCA numbering plan](https://data.gov.hk/en-data/dataset/hk-ofca-ofca-ofca-dataset-17)) shows why a first-digit rule fails. Next to the mobile blocks it lists:

- **`2` and `3`:** fixed services. Some `3` blocks are access codes rather than subscriber numbers.
- **`58`:** fixed services in OFCA's "Class Two" category, not mobiles.
- **`7`:** paging blocks such as `710`, `711` and `716`, next to the mobile blocks `70` and `71`.
- **`81` to `83`:** the personal number service, mixed with spare mobile blocks.
- **`800`, `801`, `808`, `809`:** freephone numbers with nine digits.
- **`4500`:** machine-to-machine numbers with twelve digits, assigned to the mobile operators.
- **`1`:** short codes, including the emergency numbers `999` and, from mobiles, `112`.

Many mobile blocks are marked spare in the dataset: all of `43`, `45`, `48`, `49`, `72`, `73`, `85` to `87` and `89`, for example. A number there has the right shape but nobody can hold it today. libphonenumber follows the assignments, so it rejects them.

### Why a prefix doesn't name the operator

OFCA allocates each block to one operator. Most mobile blocks belong to Hong Kong Telecommunications (HKT), China Mobile Hong Kong, Hutchison Telephone (which trades as 3) and SmarTone, with smaller holders such as China Unicom (Hong Kong) and China Telecom Global. That tells you who first held the range, not who serves the number after a port, so we don't print a prefix-to-operator table.

## How do I validate a Hong Kong number in code?

Use a libphonenumber port with full metadata and the default region `HK`. There is one Hong Kong trap. OFCA assigns `008` as an international access code (one operator's gateway), and libphonenumber's international-prefix pattern for Hong Kong accepts `00` plus an optional digit such as `1` or `8`. So `00852 5XXX XXXX`, a common way to write a Hong Kong number for dialling from abroad, is read as `008` plus `52`, Mexico's country code, and fails. The function below turns a leading `00852` into `+852` first; in Python's `phonenumbers`, apply the same rewrite before `phonenumbers.parse(text, "HK")`.

**JavaScript** (`npm install libphonenumber-js`):

```js
import { parsePhoneNumberFromString } from "libphonenumber-js/max";

/** "5XXX XXXX", "+852 5XXX XXXX", "00852 …", "852…" → E.164 for a Hong Kong mobile, or null. */
export function normalizeHk(raw) {
  const input = String(raw).trim().replace(/^00(?=\s*852)/, "+"); // 00852 would parse as 008 + 52 (Mexico)
  const phone = parsePhoneNumberFromString(input, "HK");
  if (!phone?.isValid() || phone.country !== "HK" || phone.getType() !== "MOBILE") return null;
  return phone.number;
}
```

We ran it on 2026-10-10 with libphonenumber-js 1.13.13 (metadata 9.0.39), and the same logic in Python with phonenumbers 9.0.40, which reads `00852` the same way. Both returned one E.164 number for the national, `+852`, `00852`, `852` and bracketed forms, and nothing for a seven-digit number, a number in the unused `41` block, a landline, a personal number or a Macau number. The table shows the raw library calls without the `00852` fix. The shape regex column tests `^(?:\+852|00852)?[4-9]\d{7}$`, a typical "8 digits starting 4 to 9" rule, after spaces, dashes and brackets are removed:

<!-- country-data:HK:tests:start -->
<!-- generated by apps/web/scripts/gen-country-guide-data.mjs (libphonenumber-js 1.13.13, region HK); edit the script, not this table -->

| # | Case | Input (masked) | Shape regex `^(?:\+852\|00852)?[4-9]\d{7}$` | libphonenumber (`HK`) |
|---|---|---|---|---|
| 1 | National (no trunk prefix) | `51XX XXXX` | passes | valid, `MOBILE` |
| 2 | International, with spaces | `+852 51XX XXXX` | passes | valid, `MOBILE` |
| 3 | International dialling prefix 00 | `00852 51XX XXXX` | passes | invalid |
| 4 | E.164 | `+85251XXXXXX` | passes | valid, `MOBILE` |
| 5 | Dashes and brackets | `(51XX) XXXX` | passes | valid, `MOBILE` |
| 6 | One digit short | `51XXXXX` | fails | invalid |
| 7 | One digit too many | `51XXXXXXX` | fails | invalid |
| 8 | Mobile shape, unused block 41 | `41XXXXXX` | passes | invalid |
| 9 | Fixed line | `21XX XXXX` | fails | valid, `FIXED_LINE` |
| 10 | Personal number range | `81XX XXXX` | passes | valid, `PERSONAL_NUMBER` |
<!-- country-data:HK:tests:end -->

Rows 8 and 10 are why the regex isn't enough: a number in the unused `41` block and a personal number both pass it. Row 3 is the `008` trap described above. Our [JavaScript validation guide](/blog/phone-number-validation-javascript) and [why an E.164 regex is not enough](/blog/e164-regex-is-not-enough) cover the general case.

### Hong Kong, Macau and mainland China are separate plans

The ITU assigns three different country codes ([ITU E.164 list](https://www.itu.int/pub/T-SP-E.164D)): `+852` for Hong Kong, `+853` for Macau and `+86` for mainland China. A call between them is an international call. [Macau numbers](/blog/macau-phone-number-format) also have eight digits, with mobiles starting `6`, so a bare `6XXX XXXX` could belong to either city: ask for the country on forms instead of guessing. A mainland mobile has 11 digits starting with `1` and doesn't validate under `HK` at all. Our [China phone number format guide](/blog/china-phone-number-format) covers `+86` in detail.

## Does number portability change the carrier?

Yes. The Telecommunications Authority directed all fixed and mobile operators on 28 August 1998 to provide mobile number portability by 1 March 1999, and the service launched that day. In its first four weeks, 88,116 numbers were ported ([LegCo paper, 1999](https://www.legco.gov.hk/yr98-99/english/panels/itb/papers/it12045a.htm)). Today the technical rules are OFCA's HKCA 2103 and 2104 specifications, which describe a database solution with a central administration database. The Hong Kong row of our MNP atlas:

<!-- country-data:HK:mnp:start -->
<!-- generated by apps/web/scripts/gen-country-guide-data.mjs (row from content/datasets/mnp-atlas-2026); edit the script, not this table -->

| Item | Value |
|---|---|
| Mobile number portability | Yes |
| Mobile porting since | not verified |
| Maximum porting time | not verified |
| Governing rule | OFCA MNP arrangements (HKCA 2103/2104 specifications) |
| Published porting volume | monthly (Mar 2026): 50,987 successful ports (2026) |
| Source | [ofca.gov.hk](https://www.ofca.gov.hk/en/industry_focus/industry_focus/portability/mnp/index.html), [ofca.gov.hk](https://www.ofca.gov.hk/filemanager/ofca/en/content_142/mnp_stat.pdf) |
| Checked | 2026-09-25 |
<!-- country-data:HK:mnp:end -->

OFCA counted 50,987 successful ports in March 2026 alone, so prefix tables go stale quickly. If you route, price or score numbers by operator, look up the current network per number. Our MNP atlas compares Hong Kong with other countries.

## Which messaging apps and channels reach people?

SMS reaches every active mobile. We haven't found a published measurement of app use in Hong Kong that we can verify, so we don't quote shares. Check which apps your opted-in customers are registered on, route from that, and keep SMS as the fallback. The flow in the last section returns WhatsApp and Telegram registration in the same call as the line type, and our [channel-by-country guide](/blog/choosing-a-messaging-channel-by-country) covers the method.

## What are the rules for SMS, sender IDs and OTP?

Summaries of the primary texts, checked on 2026-10-10. Not legal advice; ask counsel how they apply to you.

### Real-name SIM registration (Cap. 106AI)

The Telecommunications (Registration of SIM Cards) Regulation (Cap. 106AI) came into force in September 2021. New SIM service plans and pre-paid cards had to be registered before activation from 1 March 2022, and existing pre-paid cards by 23 February 2023. Since 24 February 2023, every SIM card issued and used locally must complete real-name registration before activation or continued service ([Hong Kong Government, 2023](https://www.info.gov.hk/gia/general/202302/24/P2023022300251.htm)). For a sender, that means a working Hong Kong mobile belongs to a registered SIM. It doesn't mean you can see who registered it.

### The "#" sender prefix (SMS Sender Registration Scheme)

From 28 December 2023, OFCA's SMS Sender Registration Scheme lets registered organisations send with sender IDs that start with `#`. Networks block other messages whose sender ID contains `#`, and recipients don't need to do anything ([OFCA, 2023](https://www.info.gov.hk/gia/general/202312/20/P2023122000391.htm)). The scheme started with telecom operators and was opened to all sectors on 21 February 2024. It doesn't cover messages where the recipient is expected to reply by phone. If you send OTPs or alerts to Hong Kong, ask your provider whether your sender ID can join.

### Commercial messages (Cap. 593)

The Unsolicited Electronic Messages Ordinance (Cap. 593) governs commercial electronic messages, including SMS. Messages with a Hong Kong link must include accurate sender information and an unsubscribe facility (sections 8 and 9), and OFCA runs do-not-call registers that people can add their numbers to ([Cap. 593](https://www.elegislation.gov.hk/hk/cap593)). A one-time passcode the user asked for isn't marketing, but keep it free of offers and don't reuse numbers collected for verification for marketing without consent.

## What changed recently?

The rows for `HK` and `+852` in our [numbering-plan changes dataset](/datasets/numbering-plan-changes-2019-2026), built from libphonenumber's release notes:

<!-- country-data:HK:changes:start -->
<!-- generated by apps/web/scripts/gen-country-guide-data.mjs (rows of content/datasets/numbering-plan-changes-2019-2026); edit the script, not this table -->

| Change named in the release notes (2019-01-08 to 2026-09-23) | Releases |
|---|---:|
| Numbering-plan metadata (validation, lengths, types) | 42 |
| Original-carrier prefix data | 36 |
| All | 78 |

Latest numbering-plan updates for `HK`: 2026-09-09 (v9.0.39), 2026-08-26 (v9.0.38), 2026-02-25 (v9.0.25), 2026-01-13 (v9.0.22), 2025-12-17 (v9.0.21).
<!-- country-data:HK:changes:end -->

In our [numbering-plan research](/blog/numbering-plans-change-research-2026), Hong Kong was among the three regions whose metadata changed most often between 2019 and September 2026. Each new block OFCA assigns from its spare ranges needs a metadata update before libraries accept it. Update your validation library at least monthly, or new subscribers in fresh blocks will fail your forms.

## What can MobileValidate check for Hong Kong numbers?

Generated from our public catalog:

<!-- country-data:HK:coverage:start -->
<!-- generated by apps/web/scripts/gen-country-guide-data.mjs (public catalog https://api.mobilevalidate.com/v1/services, fetched 2026-10-10); edit the script, not this table -->

| Check | Accepts Hong Kong numbers | Notes |
|---|---|---|
| Format and country (every lookup) | Yes | Each number is parsed first; an invalid number returns `invalid_number` and is never billed. |
| Carrier lookup (beta) | Yes | Line type and current network where data exists; no data means `unknown`, not billed. Real time and bulk. |
| US/CA carrier lookup (premium) | No (US, CA only) | Answers `unsupported_country` for other countries, not billed. |
| Live network status (HLR) | Yes | Live reachability, porting, roaming (true or false) and current network; `unknown` is free. Real time and bulk. |
| Number portability (MNP) | Yes | Ported or not ported, and the current network code; `unknown` is free. Real time and bulk. |
| Spam reputation | Limited access | All countries except sanctioned ones; report coverage is strongest in North America and Europe. |
| Messaging apps | Yes: WhatsApp, Telegram, Viber, Signal*, iMessage*, RCS*, LINE*, Zalo, Botim*, Facebook Messenger* | Registered, not registered or unknown; unknown is free. |
| Social networks | Yes: Facebook, Instagram, Threads, X (Twitter), TikTok*, Snapchat* | Not for Hong Kong numbers: LinkedIn (US, IN only). |
| Online accounts (Apple, Amazon, Microsoft, Netflix) | Yes: Apple, Amazon, Microsoft, Netflix | Registered, not registered or unknown; unknown is free. |

\* bulk jobs only. Catalog as fetched on 2026-10-10; the live list is at [`GET /v1/services`](https://api.mobilevalidate.com/v1/services).
<!-- country-data:HK:coverage:end -->

Here is a practical flow: normalise with `normalizeHk()` from above, then one lookup returns the line type, the current network and WhatsApp and Telegram registration for a batch of numbers. It uses the public sandbox key `mv_test_publicSandboxn9ZgneuhR1B9CRfKG3fulym` and our [test values](/docs/test-values), which are UK drama numbers. The sandbox accepts only those, so the run below uses them; with a live key, pass the output of `normalizeHk()`. We ran it on 2026-10-10 with Node.js 24.

```js title="hk-profile.mjs"
const API = "https://api.mobilevalidate.com/v1/lookup";
const KEY = process.env.MOBILEVALIDATE_API_KEY;

/** One lookup for a batch of E.164 numbers: line type, current network and two messaging-app checks. */
export async function profile(numbers) {
  const res = await fetch(API, {
    method: "POST",
    headers: { Authorization: `Bearer ${KEY}`, "Content-Type": "application/json" },
    body: JSON.stringify({ numbers, checks: ["carrier", "whatsapp", "telegram"], wait: 5 }),
  });
  if (!res.ok) throw new Error(`lookup failed: ${res.status}`);
  const { results } = await res.json();
  return results.map((r) => {
    const c = r.checks;
    const carrier = c["network.carrier"].status === "completed" ? c["network.carrier"].attributes : null;
    const app = (code) => (c[code].status === "completed" ? c[code].registered : null); // null = unknown, never false
    return {
      number: r.e164,
      lineType: carrier?.line_type ?? null,
      network: carrier?.carrier ?? null,
      whatsapp: app("whatsapp.registered"),
      telegram: app("telegram.registered"),
    };
  });
}

console.table(await profile(["+447700900001", "+447700900002", "+447700900003", "+447700900005"]));
```

| Test value | `lineType` | `network` | `whatsapp` | `telegram` | Why |
|---|---|---|---|---|---|
| `+447700900001` | `mobile` | `Test Carrier` | `true` | `true` | Registered on both |
| `+447700900002` | `null` | `null` | `false` | `false` | Carrier has no data (`NO_DATA`); not registered on either app |
| `+447700900003` | `null` | `null` | `null` | `null` | Every check timed out (`UPSTREAM_TIMEOUT`) |
| `+447700900005` | `null` | `null` | `null` | `null` | `unsupported_country` |

Keep `null` apart from `false`: `null` means we don't know, and it's never billed. For live porting status and reachability, add the [MNP](/services/mnp-lookup) or [HLR](/services/hlr-lookup) check. See [carrier lookup](/services/carrier-lookup) and [Telegram number check](/services/telegram-number-check) for the fields, and [pricing](/pricing) for prices.

## What are the key takeaways?

- Hong Kong numbers are `+852` plus 8 digits, with no area code and no trunk `0`; store them as `+852XXXXXXXX`.
- Mobile blocks sit under `4` to `9`, but `58`, the `81`–`83` personal numbers, pagers in `7`, `800` freephone and spare blocks are not mobiles: validate with a maintained library and the region `HK`.
- Rewrite `00852` to `+852` before parsing, or libphonenumber reads it as `008` plus Mexico's `52`.
- Porting has run since 1 March 1999, so a prefix shows the original operator, not the current one.
- Every SIM used locally has been real-name registered since 24 February 2023, and registered business senders use `#` sender IDs.
- Hong Kong (`+852`), Macau (`+853`) and mainland China (`+86`) are separate numbering plans.

Platform, regulator and company names are used descriptively. MobileValidate is not affiliated with any of them.

## Sources

1. [The Numbering Plan for Telecommunications Services in Hong Kong: allocation and assignment of Hong Kong telephone numbers (dataset, updated 4 September 2026)](https://data.gov.hk/en-data/dataset/hk-ofca-ofca-ofca-dataset-17) — Office of the Communications Authority (via DATA.GOV.HK), 2026
2. [Mobile numbers with new prefixes to be launched soon (press release, 5 February 2018)](https://www.info.gov.hk/gia/general/201802/05/P2018020500306.htm) — Office of the Communications Authority, 2018
3. [Implementation of Mobile Number Portability (paper for the Panel on Information Technology and Broadcasting, 1999)](https://www.legco.gov.hk/yr98-99/english/panels/itb/papers/it12045a.htm) — Legislative Council of Hong Kong, 1999
4. [Service reactivation arrangements for deactivated pre-paid SIM cards not having completed real-name registration before deadline (press release, 24 February 2023)](https://www.info.gov.hk/gia/general/202302/24/P2023022300251.htm) — Hong Kong SAR Government, 2023
5. [SMS Sender Registration Scheme to be launched on December 28 to assist in combating SMS scams (press release, 20 December 2023)](https://www.info.gov.hk/gia/general/202312/20/P2023122000391.htm) — Office of the Communications Authority, 2023
6. [Unsolicited Electronic Messages Ordinance (Cap. 593)](https://www.elegislation.gov.hk/hk/cap593) — Hong Kong e-Legislation, Department of Justice, 2026
7. [List of ITU-T Recommendation E.164 assigned country codes](https://www.itu.int/pub/T-SP-E.164D) — ITU, 2026
8. [libphonenumber PhoneNumberMetadata.xml (region HK) and release notes](https://github.com/google/libphonenumber/blob/master/resources/PhoneNumberMetadata.xml) — libphonenumber project (Apache License 2.0), 2026
9. [Telephone numbers in Hong Kong](https://en.wikipedia.org/wiki/Telephone_numbers_in_Hong_Kong) — Wikipedia, 2026

## Frequently asked questions

### How many digits is a Hong Kong phone number?

Eight, for both mobiles and landlines, with no area code and no trunk prefix. A mobile is written 5XXX XXXX at home and +852 5XXX XXXX from abroad. Toll-free 800 numbers have nine digits, and machine-to-machine numbers starting 4500 have twelve.

### What is the Hong Kong country code for WhatsApp and international use?

+852. Nothing is dropped: the eight local digits follow the code as they are, so 5XXX XXXX becomes +852 5XXX XXXX, stored in E.164 as +8525XXXXXXX. Use that form for every platform.

### Which Hong Kong numbers are mobile numbers?

Mobile blocks start with 4, 5, 6, 7, 8 or 9, but not every block does. Numbers starting 2 or 3 are fixed lines, 81 to 83 are mostly personal numbers, parts of 7 are pagers and 800 is toll-free. Validate with a maintained library rather than a first-digit rule.

### Can I tell a Hong Kong number's network from its prefix?

No. Mobile number portability has run in Hong Kong since 1 March 1999, so subscribers can change operator and keep the number. The prefix shows which operator the block was allocated to, not the one serving the number today.

### Are Hong Kong, Macau and mainland China numbers the same?

No. They are three separate numbering plans with three country codes: +852 for Hong Kong, +853 for Macau and +86 for mainland China. Calls between them are international, and a mainland mobile has 11 digits starting with 1.

### Do Hong Kong SIM cards have to be registered?

Yes. Since 24 February 2023, every SIM card issued and used locally, including pre-paid cards, must complete real-name registration before service starts. The operators hold the registration records: no lookup, ours included, returns a subscriber's identity.
