Area Code 31 – Surabaya
The phone area code for Surabaya is 31 (international format +6231). Browse local exchange codes (NXX) and carrier assignments below.
📍 Geographic Location of Surabaya
Geographic Coverage and Administrative Jurisdiction
The +62 31 country and area code combination is the international dialing prefix for Surabaya, the capital of East Java Province, Indonesia. This geographic code serves the city of Surabaya and its immediate metropolitan surroundings, including the neighboring regencies of Gresik, Bangkalan, Mojokerto, Sidoarjo, and Lamongan, which together form the Greater Surabaya area (Gerbangkertosusila). As a National Destination Code (NDC) within the Indonesian numbering plan, 31 is allocated exclusively for fixed-line (PSTN) services in this region. It is administered under the jurisdiction of the Indonesian Telecommunications Regulatory Authority (BRTI) and is assigned to local fixed-line operators, primarily Telkom Indonesia, which holds the dominant infrastructure in the area.
Dialing Formats and Number Structure
When dialing a Surabaya fixed-line number from within Indonesia, callers must use the trunk prefix 0 followed by the area code and the subscriber number. For example, a typical local number might be (031) 1234567. Internationally, callers dial +62 31 1234567, omitting the leading zero. The subscriber number length in the 31 area code varies between 7 and 8 digits, depending on the specific exchange and the operator's allocation. It is crucial to note that the area code is an integral part of the national significant number (NSN) and must be dialed even when calling from a mobile phone within Indonesia, as the country uses a closed dialing plan for fixed-to-mobile and fixed-to-fixed calls.
Overlay and Numbering Considerations
Currently, there is no overlay code for the 31 area, meaning the code is exclusively used for Surabaya and its environs. However, due to the rapid growth of telecommunications services, the regulator has implemented number conservation measures, and new fixed-line subscriptions may be assigned numbers with different lengths. For callers, it is essential to verify the complete number, as omitting the area code when dialing from outside the region will result in a failed call. Additionally, with the rise of VoIP and IP-based services, some numbers may be routed over the internet, but the dialing format remains the same.
Caller Instructions
For local callers (within Surabaya): If you are calling from a fixed-line phone within the same area code, you may sometimes dial only the subscriber number, but it is safer to include the area code to avoid misrouting. For international callers, always use the full international format: +62 31 [subscriber number]. For example, to call a Surabaya number 1234567 from the United States, you would dial 011 62 31 1234567. From a mobile phone, simply use +62 31 1234567. Remember that Indonesian numbers are written with a space after the area code, but when dialing, no spaces are used.