Telephone numbers in Malaysia

Telephone numbers in Malaysia are regulated by the Malaysian Communications and Multimedia Commission (MCMC).

Landline telephone numbers consist of an area code of 1 to 2 digits (excluding the leading zero), followed by a 6 to 8-digit subscriber number. Mobile phone numbers consist of a mobile phone code of 2 digits followed by a 7- to 8-digit subscriber number. Mobile phone codes are originally assigned to specific mobile network operators; however, with mobile number portability, a mobile phone number might no longer be associated with its original assigned operator.

Until 2017, calls to Singapore did not require international dialling; they were made using the 02 domestic access code. However, following a directive from MCMC, it was discontinued in stages in May and June 2017. It was discontinued early on 16 May 2017 by Telekom Malaysia, and discontinued entirely by other Malaysian telecommunications companies on 1 July 2017. The normal international prefix of +65 has been made mandatory after that date. Similarly, calls to Brunei from East Malaysia can be made using the 080 domestic access code, but calls from Peninsular Malaysia to Brunei require the international prefix 00673.

Landline area codes
Landline area codes are, excluding the STD prefix 0, one digit in Peninsular Malaysia (area codes 3 to 7 and 9) and two digits in East Malaysia (area codes 8x). In Peninsular Malaysia, an area code is usually shared by multiple states and territories and roughly follows state borders. The two East Malaysian states, Sabah and Sarawak, are split into multiple area codes.

Landline subscriber numbers are seven digits in Peninsular Malaysia (except Selangor, Kuala Lumpur and Putrajaya, i.e. area code 3) and six digits in East Malaysia. Until 1995, subscriber numbers in Peninsular Malaysia were six digits in areas other than area code 3. Prior to 2001, subscriber numbers were seven digits in Selangor, Kuala Lumpur and Putrajaya. From 1999 to 2001, subscriber numbers in these areas were gradually expanded to eight digits in phases to meet new demands that resulted from the growing population in the Klang Valley.

Thus, a full national number is 10 digits in area code 3 and 9 digits elsewhere, including the STD prefix 0. When writing a telephone number with the area code, the area code and subscriber number is separated with a hyphen. Examples:
 * A number 2xxx xxxx in Kuala Lumpur: 03-2xxx xxxx
 * A number 2xx xxxx in George Town, Penang: 04-2xx xxxx
 * A number 2xx xxxx in Johor Bahru, Johor: 07-2xx xxxx
 * A number 2x xxxx in Kuching, Sarawak: 082-2x xxxx

When calling from a landline, calls to landlines within the same area code do not require the area code to be dialled. Calls to and from mobile phones require full national dialling codes. e.g. When calling a number 2xxx xxxx in Kuala Lumpur (03) from a landline:
 * Within Selangor, Kuala Lumpur and Putrajaya: 2xxx xxxx
 * Outside Selangor, Kuala Lumpur and Putrajaya, Within Malaysia: 03-2xxx xxxx
 * Outside Malaysia: +60-3-2xxx xxxx (the initial 0 of the area code is omitted)

Mobile phone codes and IP telephony
Mobile phone codes and IP telephony codes are in the area code 1, ranging 2 digits excluding the leading zero.

Subscriber number length is seven- or eight-digit, depending on the mobile phone code. Numbers in the 011 and 015 codes are eight digits long, while all other numbers are seven digits long. Therefore, a full national number (including the leading zero) is 11 digits long for 011 and 015 numbers, and 10 digits long for all other numbers.

Calling to and from mobile phones always require full national dialling, even with mobile phones in the same mobile phone code. When calling from outside Malaysia, the leading zero is dropped. For example, a number 016-xxx xxxx is dialled as +60-16-xxx xxxx from outside Malaysia.

Originally, each mobile phone operator was issued one mobile phone code. Through a series of mergers, there were three major mobile phone operators: Celcom, Maxis and Digi as of 2005. As existing numbers began to run out, the three mobile phone operators were assigned numbers in 014 code distinguished by the first digit of the seven-digit subscriber number.

With the proliferation of new mobile virtual network operators and the exhaustion of existing codes, two new ranges 011 and 015 are made available for assignment. Subscriber numbers are eight digits long, resulting in an 11-digit mobile number including the leading zero. 011-1 was made available to mobile phone operators starting 15 December 2010. The two major ISPs in Malaysia, TMNet and Jaring are assigned numbers in the 015-4 prefix to provide VoIP (also known as Telephony Service over IP, TSoIP) service. New numbers are assigned in smaller blocks of 10,000, 100,000 or 1,000,000 numbers, as opposed to the previous practice of assigning a whole prefix to an operator, which is a block of nearly 8,000,000 numbers.

The advent of mobile number portability means the current operator of a particular mobile phone number is not necessarily the original assigned operator of the number.

Note : Range is the first one, two or three number of the whole mobile phone number. Example : Prefix 010-, Range 2, is 010-2XX XXXX Prefix 011-, Range 11, is 011-11XX XXXX Prefix 011-, Range 155~159 is 011-155X XXXX to 011-159X XXXX X = 0 to 9

Non-geographical short codes and special numbers
Note: R = 1 to 6, X = 0 to 9, Y = 1 to 9

Mobile Number portability
Mobile number portability was introduced on 1 October 2008 for mobile phone numbers in a bid to increase market competition. Thus, subscribers are allowed to retain their mobile numbers when they switch to another service provider. Therefore, the mobile number prefix only indicates the original service provider.

Number portability has not been offered for landlines, as Telekom Malaysia (TM) holds a monopoly on landlines except in Putrajaya and some areas in the Klang Valley.