Guatemala Phone Numbers: +502 Format, Validation & Area Code Guide
Explore Guatemala's phone number system: formats, area codes (+502), and validation. Understand landline (2XXXXXXX, 6XXXXXXX, 7XXXXXXX) & mobile (3-5XXXXXXX) patterns. Includes regex validation examples and regulatory insights.
This guide covers Guatemala's phone number system – formats, validation, portability, and regulatory requirements for developers building telecommunications solutions.
Guatemala uses the +502 country code and transitioned to an eight-digit closed numbering plan in the mid-1990s. Before this, the system used variable-length numbers (5-7 digits) with geographic area codes.
A closed numbering plan provides:
For end users: All phone numbers within Guatemala have exactly 8 digits (excluding the country code). Dial the 8-digit number directly – no area codes or trunk prefixes needed for domestic calls.
For developers: Input validation is simplified since all valid domestic numbers conform to the 8-digit format. The first digit indicates the number type, enabling predictable parsing and routing logic.
The Superintendencia de Telecomunicaciones (SIT), Guatemala's telecommunications regulatory body, manages this structure. SIT allocates number ranges and enforces technical standards per ITU-T E.164 guidelines.
Number Structure and Formats
The following diagram illustrates the basic structure of a Guatemalan phone number:
graph TD
A[Guatemala Phone Number] --> B[Country Code +502]
B --> C[Number Type Prefix]
C --> D[Subscriber Number (7 digits)]
C -- 2: Guatemala City --> D
C -- 3-5: Mobile --> D
C -- 6: Guatemala Department --> D
C -- 7: Rural/Rest of Country --> D
Geographic Numbers (Landlines)
Geographic numbers are tied to specific regions within Guatemala. Mobile phones have reduced their prevalence, but businesses and some residential users still use them.
Guatemala City Metropolitan Area:
Prefix: 2
Format: 2XXXXXXX
Example: 22345678
Guatemala Department:
Prefix: 6
Format: 6XXXXXXX
Example: 67654321
Other Departments/Rural Areas:
Prefix: 7
Format: 7XXXXXXX
Example: 73456789
Mobile Numbers (3, 4, 5 Prefixes)
Mobile numbers dominate in Guatemala, accounting for over 80% of all phone numbers. The leading carriers are Claro, Tigo, and Movistar. While carriers receive specific number range allocations, portability allows users to transfer numbers between carriers. Do not rely solely on prefixes for carrier identification.
Initial Prefix Allocations:
Claro Guatemala: Primarily 3xxx-xxxx and 5xxx-xxxx ranges
Note on Carrier Identification:Mobile number portability (MNP) allows users to switch carriers while retaining their number. A number beginning with "4" may have been assigned to Tigo originally but could now belong to Claro or Movistar. Query the portability database (see Number Portability section) for accurate carrier routing.
MVNOs: Guatemala has limited Mobile Virtual Network Operator (MVNO) activity. Virtual operators lease network capacity from Claro, Tigo, or Movistar and use number ranges allocated to the parent network. MVNO numbers are indistinguishable from host carrier numbers at the prefix level.
Special Service Numbers
Emergency Services: Three-digit numbers for critical situations.
110: Police (also 120, though less common)
122: Ambulance
123: Fire Department
128: IGSS (Guatemalan Social Security Institute Ambulance)
Toll-Free: 1800XXXXXX (10 digits, including the 1800 prefix). Used for calls to businesses outside Guatemala.
Local Toll-Free: 1801XXXXXX (10 digits). For toll-free calls within Guatemala.
Premium Rate: 19XXXXXX (8 digits, including the 19 prefix). Used for information services or specialized services with higher call charges. Typical charges range from Q2.00 to Q10.00 per minute (approximately $0.25 – $1.30 USD as of 2024).
Short Codes (4-digit): Used for various services, including public information and private company lines (e.g., banks, delivery services). Billed at varying rates.
Carrier Services (6-digit): Used for operator assistance, collect calls, and other carrier-specific services. Billed at varying rates.
How to Validate Guatemala Phone Numbers
Number Validation in JavaScript and Python
Use regular expressions for accurate validation. Handle the international prefix (+502) and common formatting characters (spaces, dashes, parentheses).
import re
defvalidate_guatemala_number(number: str) -> dict:
"""Validate Guatemala phone number with comprehensive format handling."""# Remove international prefix and common formatting
clean = re.sub(r'^\+502|^502|^00502', '', number)
clean = re.sub(r'[\s\-\(\)\.]', '', clean)
clean = re.sub(r'^0+', '', clean)
patterns = {
'geographic': r'^[267]\d{7}$',
'mobile': r'^[3-5]\d{7}$',
'tollFree': r'^180[01]\d{6}$',
'premium': r'^19\d{6}$',
'emergency': r'^(110|120|122|123|128)$',
'shortCode': r'^\d{4}$',
'carrierService': r'^\d{6}$'
}
for num_type, pattern in patterns.items():
if re.match(pattern, clean):
return {
'valid': True,
'type': num_type,
'cleanNumber': clean,
'e164': f'+502{clean}'
}
return {'valid': False, 'error': 'Invalid Guatemala phone number format'}
Guatemala Number Portability (MNP)
Number portability allows users to switch carriers while keeping their existing number. Since Guatemala's mobile number portability (MNP) system launched, users can freely move between Claro, Tigo, and Movistar. Implement this carefully:
Portability Database Providers:
Guatemala's number portability is managed through a centralized database operated by SIT. Third-party providers offering portability lookup APIs include:
LSMS (Local Service Management System): The official SIT-mandated portability database. Access requires regulatory approval and a service agreement.
Carrier APIs: Claro, Tigo, and Movistar each provide portability lookup endpoints for authorized partners. Contact carrier wholesale departments for API access.
HLR Lookup Services: International providers like HLRLookupAPI and Twilio Lookup API offer Guatemala portability checks via Home Location Register queries.
Implementation Steps:
Database Integration: Integrate with a portability lookup service. SIT mandates a maximum 24-hour porting window, so cache portability data for no more than 12 hours to ensure accuracy.
Routing Protocol: Query the portability database before routing calls or SMS to ensure delivery to the correct carrier.
Code
Incoming Request → Normalize Number → Query Portability DB → Route to Current Carrier
SIT regulates all telecommunications activities in Guatemala. Key compliance aspects include:
Number Allocation Process
Application Requirements:
Legal entity registration in Guatemala (Registro Mercantil documentation)
Technical documentation package:
Network topology diagram
Interconnection agreements with existing carriers
Quality of Service (QoS) compliance plan
Emergency services routing plan (110, 122, 123, 128)
Financial capacity demonstration (bank guarantees or capital proof)
Spectrum license (if operating own infrastructure)
Timeline: Number allocation approval typically takes 45-90 business days from complete application submission. Expedited processing (30 days) is available for established carriers requesting additional range allocations.
Technical review and site inspection (if applicable)
Public comment period (15 days)
Final approval and number range assignment
Network Operation Requirements
Configure your infrastructure, implement monitoring systems, and establish reporting mechanisms according to SIT regulations:
Interconnection: Mandatory interconnection with all licensed carriers within 90 days of license activation
Emergency Services: 99.9% uptime requirement for emergency number routing (110, 122, 123, 128)
Network Monitoring: Real-time monitoring with 24/7 NOC (Network Operations Center)
Ongoing Reporting Requirements
Monthly Reports (due by 10th of following month):
Total minutes originated and terminated
SMS/MMS message volumes
Number portability requests processed
Customer complaint statistics
Quarterly QoS Metrics:
Call Setup Success Rate (CSSR): minimum 98%
Call Drop Rate: maximum 2%
Network Availability: minimum 99.5%
SMS Delivery Rate: minimum 95% within 10 seconds
Annual Filings:
Financial statements
Network expansion plans
Customer satisfaction survey results
Spectrum utilization reports (if applicable)
Failure to meet reporting deadlines may result in fines of Q10,000-Q50,000 (approximately $1,300-$6,500 USD) per violation.
Penalties and Enforcement
Non-compliance leads to penalties or license suspension. Recent enforcement actions (2023-2024) include:
Fines of Q50,000-Q500,000 for repeated QoS violations
30-day operating suspensions for failure to route emergency calls
License revocation for fraud or unauthorized number range usage
Refer to the official SIT website for the latest regulations and consult with local legal counsel for compliance guidance.
Best Practices for Developers
Number Storage: Store numbers in E.164 format (+502XXXXXXXX). This international standard ensures consistent formatting and simplifies international calling. For more details on E.164 formatting standards, see our complete E.164 phone format guide. Include carrier metadata if needed, but portability can make this information unreliable over time.
Integration Testing: Test your implementation thoroughly, including:
Input validation with various formats (international, national, formatted with spaces/dashes)
Number type checking (mobile, geographic, special services)
Carrier identification with portability scenarios
Edge cases: numbers at range boundaries, newly allocated prefixes, ported numbers
Maximum Size: 300 KB – 600 KB depending on carrier
Claro: 600 KB
Tigo: 500 KB
Movistar: 300 KB
Supported Formats: JPEG, PNG, GIF (images); MP3, AMR (audio); 3GP, MP4 (video up to 30 seconds); vCard, vCalendar
Resolution Recommendations: 640x480 px for maximum compatibility
Best Practices for SMS/MMS:
Encoding Detection: Automatically detect if message contains non-GSM-7 characters and switch to UCS-2
Segmentation: Split long messages properly, accounting for UDH (User Data Header) overhead in concatenated messages
Delivery Confirmation: Implement retry logic for failed deliveries (3 retries with exponential backoff)
MMS Fallback: If MMS fails, send SMS with link to hosted content
Testing: Test with all three carriers as MMS handling varies by network
Example Implementation:
Python
defcalculate_sms_segments(message: str) -> dict:
"""Calculate SMS segments accounting for GSM-7 and Unicode encoding."""
gsm_basic = set("@£$¥èéùìòÇØøÅåΔ_ΦΓΛΩΠΨΣΘΞÆæßÉ !\"#¤%&'()*+,-./0123456789:;<=>?¡ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÑܧ¿abcdefghijklmnopqrstuvwxyzäöñüà")
gsm_extended = set("|^€{}[~]\\")
char_count = 0
needs_unicode = Falsefor char in message:
if char notin gsm_basic and char notin gsm_extended:
needs_unicode = Truebreak
char_count += 2if char in gsm_extended else1if needs_unicode:
length = len(message)
segments = (length + 69) // 70# 70 chars per segment for Unicodereturn {'encoding': 'UCS-2', 'segments': segments, 'chars_per_segment': 70}
else:
segments = (char_count + 159) // 160# 160 chars per segment for GSM-7return {'encoding': 'GSM-7', 'segments': segments, 'chars_per_segment': 160}
Conclusion
Guatemala's telecommunications system provides a well-structured, regulated environment for developers building voice and messaging solutions. Key takeaways:
Validate and store numbers in E.164 format (+502XXXXXXXX)
Implement portability database lookups for accurate carrier routing
Handle various input formats (spaces, dashes, parentheses) gracefully
Test thoroughly across all three major carriers (Claro, Tigo, Movistar)
Account for SMS/MMS encoding differences and carrier-specific limitations
For questions or support, consult the SIT regulations portal or contact carriers directly for technical integration assistance.
Frequently asked questions
The Guatemala country code is +502. This code is required when dialing a Guatemalan number from another country. Remember to always include the plus sign (+) before the country code.
Guatemalan phone numbers use an eight-digit closed numbering plan, meaning all numbers have a fixed length. The first digit indicates the number type (geographic area, mobile, etc.), followed by the seven-digit subscriber number.
Use regular expressions to validate Guatemalan phone numbers. Consider different number formats like geographic (2, 6, 7 prefix), mobile (3-5 prefix), toll-free (1800, 1801), and special service numbers when constructing your regular expression.
The primary emergency number for police in Guatemala is 110. 120 is also used, but 110 is more common. These are short, three-digit numbers for critical situations.
Number portability allows users to switch mobile carriers while retaining their existing phone number. This promotes competition between carriers and provides flexibility for consumers.
Query the portability database before routing every call. Guatemala's telecommunications regulator, SIT, mandates a maximum 24-hour porting window, so real-time checks are crucial for accurate routing.
While prefixes are assigned to carriers (e.g., Claro uses 3 and 5, Tigo uses 4), number portability makes this unreliable. Always consult the portability database for accurate carrier identification.
Landlines in Guatemala City use the prefix 2 followed by seven digits. The format is 2XXXXXXX. For example, a valid Guatemala City landline number would look like 22345678.
The Superintendencia de Telecomunicaciones (SIT) regulates all telecommunications activities in Guatemala. This includes number allocation, network operation, ongoing reporting, and enforcing compliance with regulations.
Toll-free numbers within Guatemala use the prefix 1801 followed by six digits (1801XXXXXX). These numbers are used for free calls to businesses within the country.
Store Guatemalan phone numbers in E.164 format (+502XXXXXXXX). This international standard ensures consistent formatting and simplifies international calling. Consider including carrier metadata if necessary.
Opensignal reports average download speeds of 25-45 Mbps in urban areas and 10-20 Mbps in rural areas, with latency ranging from 20-35ms (urban) to 35-50ms (rural). These speeds are based on 4G LTE and may improve with 5G rollout.
Claro primarily uses prefixes 3 and 5, Tigo primarily uses 4, and Movistar also uses 5 (shared with Claro). However, due to number portability, prefixes are not a reliable way to definitively identify a carrier.
Short codes (4-digit numbers) are used for various services like public information and private company lines (e.g., banks, delivery services). Billing rates vary depending on the service.
This guide covers Guatemala's phone number system – formats, validation, portability, and regulatory requirements for developers building telecommunications solutions.
Quick Reference
What is Guatemala's Phone Number Format?
Guatemala uses the +502 country code and transitioned to an eight-digit closed numbering plan in the mid-1990s. Before this, the system used variable-length numbers (5-7 digits) with geographic area codes.
A closed numbering plan provides:
The Superintendencia de Telecomunicaciones (SIT), Guatemala's telecommunications regulatory body, manages this structure. SIT allocates number ranges and enforces technical standards per ITU-T E.164 guidelines.
Number Structure and Formats
The following diagram illustrates the basic structure of a Guatemalan phone number:
Geographic Numbers (Landlines)
Geographic numbers are tied to specific regions within Guatemala. Mobile phones have reduced their prevalence, but businesses and some residential users still use them.
2XXXXXXX6XXXXXXX7XXXXXXXMobile Numbers (3, 4, 5 Prefixes)
Mobile numbers dominate in Guatemala, accounting for over 80% of all phone numbers. The leading carriers are Claro, Tigo, and Movistar. While carriers receive specific number range allocations, portability allows users to transfer numbers between carriers. Do not rely solely on prefixes for carrier identification.
Initial Prefix Allocations:
Format:
[3-5]XXXXXXXExamples: 31234567 (Claro), 42345678 (Tigo), 53456789 (Movistar/Claro)
Note on Carrier Identification: Mobile number portability (MNP) allows users to switch carriers while retaining their number. A number beginning with "4" may have been assigned to Tigo originally but could now belong to Claro or Movistar. Query the portability database (see Number Portability section) for accurate carrier routing.
MVNOs: Guatemala has limited Mobile Virtual Network Operator (MVNO) activity. Virtual operators lease network capacity from Claro, Tigo, or Movistar and use number ranges allocated to the parent network. MVNO numbers are indistinguishable from host carrier numbers at the prefix level.
Special Service Numbers
How to Validate Guatemala Phone Numbers
Number Validation in JavaScript and Python
Use regular expressions for accurate validation. Handle the international prefix (+502) and common formatting characters (spaces, dashes, parentheses).
function validateGuatemalaNumber(number) { // Remove international prefix, country code, and common formatting characters let cleanNumber = number.replace(/^\+502|^502|^00502/, ''); cleanNumber = cleanNumber.replace(/[\s\-\(\)\.]/g, ''); // Remove any leading zeros cleanNumber = cleanNumber.replace(/^0+/, ''); const patterns = { geographic: /^[267]\d{7}$/, mobile: /^[3-5]\d{7}$/, tollFree: /^180[01]\d{6}$/, premium: /^19\d{6}$/, emergency: /^(110|120|122|123|128)$/, shortCode: /^\d{4}$/, // Basic 4-digit validation carrierService: /^\d{6}$/ // Basic 6-digit validation }; const result = Object.entries(patterns).find(([type, pattern]) => pattern.test(cleanNumber)); if (!result) { return { valid: false, error: 'Invalid Guatemala phone number format' }; } return { valid: true, type: result[0], cleanNumber: cleanNumber, e164: `+502${cleanNumber}` }; } // Example usage: console.log(validateGuatemalaNumber('+502 2234-5678')); // Returns {valid: true, type: "geographic", cleanNumber: "22345678", e164: "+50222345678"} console.log(validateGuatemalaNumber('(502) 4123-4567')); // Returns {valid: true, type: "mobile", cleanNumber: "41234567", e164: "+50241234567"} console.log(validateGuatemalaNumber('1800-123-456')); // Returns {valid: true, type: "tollFree", cleanNumber: "1800123456", e164: "+5021800123456"} console.log(validateGuatemalaNumber('110')); // Returns {valid: true, type: "emergency", cleanNumber: "110", e164: "+502110"} console.log(validateGuatemalaNumber('invalid')); // Returns {valid: false, error: "Invalid Guatemala phone number format"}Python Example:
import re def validate_guatemala_number(number: str) -> dict: """Validate Guatemala phone number with comprehensive format handling.""" # Remove international prefix and common formatting clean = re.sub(r'^\+502|^502|^00502', '', number) clean = re.sub(r'[\s\-\(\)\.]', '', clean) clean = re.sub(r'^0+', '', clean) patterns = { 'geographic': r'^[267]\d{7}$', 'mobile': r'^[3-5]\d{7}$', 'tollFree': r'^180[01]\d{6}$', 'premium': r'^19\d{6}$', 'emergency': r'^(110|120|122|123|128)$', 'shortCode': r'^\d{4}$', 'carrierService': r'^\d{6}$' } for num_type, pattern in patterns.items(): if re.match(pattern, clean): return { 'valid': True, 'type': num_type, 'cleanNumber': clean, 'e164': f'+502{clean}' } return {'valid': False, 'error': 'Invalid Guatemala phone number format'}Guatemala Number Portability (MNP)
Number portability allows users to switch carriers while keeping their existing number. Since Guatemala's mobile number portability (MNP) system launched, users can freely move between Claro, Tigo, and Movistar. Implement this carefully:
Portability Database Providers:
Guatemala's number portability is managed through a centralized database operated by SIT. Third-party providers offering portability lookup APIs include:
Implementation Steps:
Database Integration: Integrate with a portability lookup service. SIT mandates a maximum 24-hour porting window, so cache portability data for no more than 12 hours to ensure accuracy.
Routing Protocol: Query the portability database before routing calls or SMS to ensure delivery to the correct carrier.
Error Handling: Implement robust error handling for:
Code Example:
async function getCarrierInfo(phoneNumber) { const validation = validateGuatemalaNumber(phoneNumber); if (!validation.valid || validation.type !== 'mobile') { throw new Error('Invalid mobile number'); } try { // Query portability database (example using hypothetical API) const response = await fetch(`https://api.portability.sit.gob.gt/lookup`, { method: 'POST', headers: { 'Authorization': `Bearer ${API_KEY}` }, body: JSON.stringify({ msisdn: validation.e164 }), timeout: 3000 }); const data = await response.json(); return { number: validation.e164, currentCarrier: data.carrier, originalCarrier: data.originalCarrier, portedDate: data.portedDate, confidence: 'high' }; } catch (error) { // Fallback to prefix-based estimation const prefix = validation.cleanNumber.charAt(0); const estimatedCarrier = prefix === '3' ? 'Claro' : prefix === '4' ? 'Tigo' : 'Movistar/Claro'; return { number: validation.e164, currentCarrier: estimatedCarrier, confidence: 'low', note: 'Portability lookup failed, using prefix estimation' }; } }Regulatory Compliance (SIT)
SIT regulates all telecommunications activities in Guatemala. Key compliance aspects include:
Number Allocation Process
Application Requirements:
Timeline: Number allocation approval typically takes 45-90 business days from complete application submission. Expedited processing (30 days) is available for established carriers requesting additional range allocations.
Application Process:
Network Operation Requirements
Configure your infrastructure, implement monitoring systems, and establish reporting mechanisms according to SIT regulations:
Ongoing Reporting Requirements
Monthly Reports (due by 10th of following month):
Quarterly QoS Metrics:
Annual Filings:
Failure to meet reporting deadlines may result in fines of Q10,000-Q50,000 (approximately $1,300-$6,500 USD) per violation.
Penalties and Enforcement
Non-compliance leads to penalties or license suspension. Recent enforcement actions (2023-2024) include:
Refer to the official SIT website for the latest regulations and consult with local legal counsel for compliance guidance.
Best Practices for Developers
Number Storage: Store numbers in E.164 format (+502XXXXXXXX). This international standard ensures consistent formatting and simplifies international calling. For more details on E.164 formatting standards, see our complete E.164 phone format guide. Include carrier metadata if needed, but portability can make this information unreliable over time.
Integration Testing: Test your implementation thoroughly, including:
Test Case Examples:
const testCases = [ { input: '+50231234567', expected: { valid: true, type: 'mobile' } }, { input: '502-2234-5678', expected: { valid: true, type: 'geographic' } }, { input: '(502) 4123 4567', expected: { valid: true, type: 'mobile' } }, { input: '110', expected: { valid: true, type: 'emergency' } }, { input: '1800123456', expected: { valid: true, type: 'tollFree' } }, { input: '19123456', expected: { valid: true, type: 'premium' } }, { input: '12345', expected: { valid: false } }, { input: '+50312345678', expected: { valid: false } } // Wrong country code ];Error Handling: Implement graceful fallbacks for various error conditions:
Logging: Maintain audit logs including:
Guatemala Mobile Network Coverage
Guatemala's network infrastructure is primarily GSM/UMTS based, with expanding 4G LTE coverage and initial 5G rollout in major cities.
Frequency Bands by Technology:
Coverage Statistics (2024):
Performance Metrics:
These metrics are subject to change as network infrastructure evolves. Source: Opensignal Guatemala Mobile Network Experience Report 2024.
SMS and MMS Capabilities
SMS Technical Specifications:
Character Set Considerations:
MMS Specifications:
Best Practices for SMS/MMS:
Example Implementation:
def calculate_sms_segments(message: str) -> dict: """Calculate SMS segments accounting for GSM-7 and Unicode encoding.""" gsm_basic = set("@£$¥èéùìòÇØøÅåΔ_ΦΓΛΩΠΨΣΘΞÆæßÉ !\"#¤%&'()*+,-./0123456789:;<=>?¡ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÑܧ¿abcdefghijklmnopqrstuvwxyzäöñüà") gsm_extended = set("|^€{}[~]\\") char_count = 0 needs_unicode = False for char in message: if char not in gsm_basic and char not in gsm_extended: needs_unicode = True break char_count += 2 if char in gsm_extended else 1 if needs_unicode: length = len(message) segments = (length + 69) // 70 # 70 chars per segment for Unicode return {'encoding': 'UCS-2', 'segments': segments, 'chars_per_segment': 70} else: segments = (char_count + 159) // 160 # 160 chars per segment for GSM-7 return {'encoding': 'GSM-7', 'segments': segments, 'chars_per_segment': 160}Conclusion
Guatemala's telecommunications system provides a well-structured, regulated environment for developers building voice and messaging solutions. Key takeaways:
For questions or support, consult the SIT regulations portal or contact carriers directly for technical integration assistance.