phone number standards

Sent logo
Sent TeamMar 8, 2026 / phone number standards / Lesotho

Lesotho Phone Numbers: +266 Country Code Format, Validation & Mobile Operators Guide

Complete guide to Lesotho phone numbers: +266 country code validation, E.164 format, mobile operators (Vodacom, Econet), area codes, emergency numbers, and LCA telecommunications regulations for developers.

Lesotho Phone Numbers: Complete Guide to +266 Format, Validation & Area Codes

Introduction

Building an application for Lesotho users? Handle their phone numbers correctly with +266 country code validation. This guide covers Lesotho phone number format, validation techniques, E.164 international format, area codes, and mobile operators (Vodacom Lesotho and Econet Telecom). Learn to implement phone number validation, work with the Lesotho Communications Authority (LCA) regulations, and handle emergency numbers properly.

Quick Reference

ElementValue
CountryLesotho
Country Code+266
International Prefix00
National PrefixNone
Total Digits8 (after country code)
Mobile OperatorsVodacom Lesotho, Econet Telecom Lesotho (ETL)
Example Mobile+266 5012 3456
Example Landline+266 2251 2345

Understanding Lesotho's Telecommunications Landscape

The Lesotho Communications Authority (LCA) regulates the telecommunications sector, ensuring compliance with international standards while adapting to local needs. Established in June 2000 as a statutory body, the LCA maintains quality of service standards and enforces technical and regulatory requirements. Find official documentation at https://lca.org.ls/.

The LCA operates under the Communications Act No. 4 of 2012, enforcing regulations through infrastructure standards, quality of service metrics, and technical audits. Recent regulatory developments include:

  • Revised licensing framework – Gazetted January 31, 2025 to accommodate satellite internet technology
  • Mandatory SIM registration – Completed January 31, 2024; unregistered SIM cards were deactivated

Lesotho Phone Number Format and Structure

How Does the Lesotho Numbering Plan Work?

Lesotho follows the ITU-T E.164 international numbering plan, ensuring global interoperability and simplified phone number identification:

+266 X XXXXXXX │ │ │ │ │ │ └──────┴─ Subscriber Number (7 digits) │ └───────── Service Type Indicator └────────────── Country Code

The country code (+266) is followed by a single-digit service type indicator and a 7-digit subscriber number.

What Do Lesotho Area Codes Mean?

The first digit after the country code identifies the service type. Use this to categorize numbers and tailor your application's behavior:

First DigitService TypeExampleNotes
2Landline+266 2251 2345Traditional fixed-line services
5Mobile+266 5012 3456Primary mobile number range
6Mobile+266 6012 3456Secondary mobile number range
8Toll-Free+266 8001 2345Free calling services
1Special+266 112Emergency and utility services

How to Validate Lesotho Phone Numbers

Validating Lesotho phone numbers prevents errors and ensures data integrity in your application. Use regular expressions and validation functions to verify +266 country code numbers:

javascript
// Full international format validation
const lesothoPhoneRegex = /^\+266[25681]\d{7}$/;

// Service-specific validation
const patterns = {
  landline: /^2\d{7}$/,
  mobile: /^[56]\d{7}$/,
  tollFree: /^800\d{4}$/,
  special: /^1\d{2,7}$/
};

function validateLesothoPhone(number, type = 'any') {
  const cleaned = number.replace(/\s+/g, '');

  if (!cleaned.startsWith('+266')) {
    return false;
  }

  const subscriberNumber = cleaned.slice(3);

  switch(type) {
    case 'landline':
      return patterns.landline.test(subscriberNumber);
    case 'mobile':
      return patterns.mobile.test(subscriberNumber);
    case 'tollFree':
      return patterns.tollFree.test(subscriberNumber);
    case 'special':
      return patterns.special.test(subscriberNumber);
    default:
      return lesothoPhoneRegex.test(cleaned);
  }
}

// Test cases
console.log(validateLesothoPhone('+26622512345', 'landline')); // true
console.log(validateLesothoPhone('+26658123456', 'mobile')); // false – incorrect mobile prefix
console.log(validateLesothoPhone('80012345')); // false – missing country code
console.log(validateLesothoPhone('+266112', 'special')); // true
console.log(validateLesothoPhone('+26611234567', 'special')); // true – longer special number

Test your validation logic thoroughly with various inputs, including edge cases and invalid formats.

Implementation Guidelines

Store Numbers in E.164 Format

Store Lesotho phone numbers in the international E.164 format (+266XXXXXXXX). This ITU-T standardized format ensures consistency and simplifies data exchange between telecommunications systems:

javascript
// Good practice
const phoneNumber = '+26622512345';

// Avoid these formats
const badFormat1 = '22512345';        // Missing country code
const badFormat2 = '266 22 512 345';  // Contains spaces

E.164 format simplifies searching, sorting, validating, and integrating with third-party services.

Format Numbers for Display

Store numbers in E.164, but display them in user-friendly formats:

javascript
function formatLesothoPhone(number, format = 'international') {
  const cleaned = number.replace(/\D/g, '');
  const withCountryCode = cleaned.startsWith('266') ? cleaned : '266' + cleaned;
  const nationalNumber = withCountryCode.slice(3);

  switch(format) {
    case 'local':
      return nationalNumber.replace(/(\d{4})(\d{4})/, '$1 $2');
    case 'international':
      return `+266 ${nationalNumber.replace(/(\d{4})(\d{4})/, '$1 $2')}`;
    default:
      return withCountryCode;
  }
}

console.log(formatLesothoPhone('+26622512345', 'local')); // 2251 2345
console.log(formatLesothoPhone('+26622512345', 'international')); // +266 2251 2345

Choose the format that best suits your application's needs and target audience.

Handle Errors Gracefully

Provide clear, actionable error messages to guide users:

javascript
function validateAndFormatPhone(input) {
  if (!input) {
    return {
      success: false,
      error: 'Phone number is required. Enter a Lesotho phone number starting with +266.'
    };
  }

  const cleaned = input.replace(/\D/g, '');

  if (!cleaned.startsWith('266') || cleaned.length !== 11) {
    return {
      success: false,
      error: 'Invalid Lesotho phone number format. Use +266 followed by 8 digits (e.g., +266 5012 3456).'
    };
  }

  return {
    success: true,
    formatted: formatLesothoPhone(cleaned)
  };
}

console.log(validateAndFormatPhone('')); // { success: false, error: '…' }
console.log(validateAndFormatPhone('+26622512345')); // { success: true, formatted: '+266 2251 2345' }
console.log(validateAndFormatPhone('12345678')); // { success: false, error: '…' }

Special Considerations

Number Portability in Lesotho

Lesotho does not support mobile number portability. Phone numbers remain tied to their original carrier (Vodacom or Econet), allowing you to reliably identify carriers based on number prefixes. Monitor the LCA website for future policy changes.

Handle Emergency Numbers in Lesotho

Allow calls to Lesotho emergency numbers and bypass standard validation checks. Implement priority routing if your application handles call routing.

Official Lesotho emergency numbers:

  • 112 – General emergency (mobile phones)
  • 121 – Ambulance
  • 122 – Fire brigade
  • 123/124 – Police
  • (266) 5888-1010 – Non-emergency police (24/7)

Detect emergency numbers in your validation logic:

javascript
function isEmergencyNumber(number) {
  const cleaned = number.replace(/\D/g, '');
  const emergencyPatterns = [
    /^112$/,
    /^121$/,
    /^122$/,
    /^12[34]$/,
    /^26658881010$/
  ];

  return emergencyPatterns.some(pattern => pattern.test(cleaned));
}

// Always allow emergency numbers
if (isEmergencyNumber(phoneNumber)) {
  return { success: true, isEmergency: true };
}

Lesotho Mobile Network Infrastructure and Coverage

Two mobile operators serve Lesotho's telecommunications market, regulated by the Lesotho Communications Authority (LCA):

Vodacom Lesotho (1.4 million subscribers):

  • 2G (EDGE) on 900 MHz
  • 3G (HSPA) on 2100 MHz – covers 95% of the population
  • 4G/LTE on 800 MHz (Band 20) – major towns and tourist destinations since 2014
  • Best mobile internet network with near-nationwide 3G coverage

Econet Telecom Lesotho (ETL) (512,000 subscribers):

  • 2G (EDGE) on 900 MHz
  • 3G (HDSPA) on 2100 MHz
  • 4G/LTE – limited availability
  • Formed in 2008 from merger of Telecom Lesotho and Econet Ezi-Cel Lesotho

5G Status: No 5G networks deployed as of 2024.

Market penetration: Approximately 65 subscribers per 100 persons.

The LCA maintains 786 base tower stations across Lesotho, with 124 funded by the Universal Service Fund (USF) for rural connectivity. Design your application with network coverage in mind and provide fallback mechanisms for limited connectivity areas.

Lesotho Telecommunications Regulatory Compliance

The Lesotho Communications Authority (LCA) enforces compliance through infrastructure standards, quality of service metrics, and technical audits under the Communications Act No. 4 of 2012. Mobile operators submit monthly technical compliance reports.

Key requirements:

  • Network availability: 99.99% mandated uptime
  • Call setup success rate: Greater than 95%
  • Drop call rate: Below 2%
  • SIM registration: All SIM cards must be registered (mandatory as of January 31, 2024)
  • Licensing framework: Updated in 2025 for new technologies including satellite internet

The LCA enforces Quality of Service Rules (2023) and Consumer Complaints Guidelines (2022). Understanding these operator-level metrics helps you design robust and reliable applications.

Frequently Asked Questions

What is the country code for Lesotho?

The international country code for Lesotho is +266. All Lesotho phone numbers begin with +266 when dialed internationally, followed by an 8-digit national number. This country code was allocated by the International Telecommunication Union (ITU).

How many digits are in a Lesotho phone number?

Lesotho phone numbers contain 8 digits after the +266 country code: one service type indicator digit and 7 subscriber digits. The complete international format is +266 X XXXXXXX.

How do I validate a Lesotho mobile number?

Validate Lesotho mobile numbers by checking for the +266 country code followed by 5 or 6 as the first digit, then 7 more digits. Use the regex pattern: /^\+266[56]\d{7}$/. Mobile numbers starting with 5 or 6 indicate Vodacom or Econet networks.

Does Lesotho support number portability?

No, Lesotho does not support mobile number portability. Phone numbers remain tied to their original carrier, allowing reliable carrier identification based on the number prefix.

What is the emergency number in Lesotho?

The general emergency number in Lesotho is 112 (works from mobile phones). Specific services: 121 for ambulance, 122 for fire brigade, and 123/124 for police. Non-emergency police: (266) 5888-1010.

Which mobile operators operate in Lesotho?

Lesotho has 2 licensed mobile operators: Vodacom Lesotho (1.4 million subscribers, best network coverage) and Econet Telecom Lesotho/ETL (512,000 subscribers). Both offer 2G, 3G, and 4G mobile services, with Vodacom Lesotho providing superior 3G and 4G LTE coverage across the country.

What format should I use to store Lesotho phone numbers?

Store Lesotho phone numbers in E.164 international format: +266XXXXXXXX (no spaces or special characters). This standardized format ensures consistency across systems and simplifies integration with telecommunications services.

Testing Lesotho Phone Number Validation

Develop a comprehensive test suite for validating Lesotho phone numbers covering various scenarios: valid and invalid inputs, different service types (mobile, landline, toll-free), and edge cases:

javascript
const testCases = [
  {
    input: '+26622512345',
    expected: true,
    type: 'landline',
    description: 'Valid landline number'
  },
  {
    input: '+26650123456',
    expected: true,
    type: 'mobile',
    description: 'Valid mobile number with prefix 5'
  },
  {
    input: '+26660123456',
    expected: true,
    type: 'mobile',
    description: 'Valid mobile number with prefix 6'
  },
  {
    input: '22512345',
    expected: false,
    type: 'landline',
    description: 'Missing country code'
  },
  {
    input: '+2668001234',
    expected: true,
    type: 'tollFree',
    description: 'Valid toll-free number'
  },
  {
    input: '+266112',
    expected: true,
    type: 'special',
    description: 'Emergency number'
  },
  {
    input: '+26670123456',
    expected: false,
    type: 'mobile',
    description: 'Invalid mobile prefix 7'
  }
];

// Run tests
testCases.forEach(test => {
  const result = validateLesothoPhone(test.input, test.type);
  console.log(`${test.description}: ${result === test.expected ? '✓ PASS' : '✗ FAIL'}`);
});

Review and update your test suite regularly as your application evolves.

Looking for more information on international phone number formats and SMS implementation?


Last updated: 2025-01-10