sms compliance

Sent logo
Sent TeamMar 8, 2026 / sms compliance / Article

Guatemala SMS Best Practices, Compliance, and Features

Complete guide to SMS messaging in Guatemala including compliance requirements, carrier capabilities, and API integration examples.

Guatemala SMS Best Practices, Compliance, and Features

Guatemala SMS Market Overview and Requirements

Locale name:Guatemala
ISO code:GT
RegionCentral America
Mobile country code (MCC)704
Dialing Code+502

Market Conditions: Three major operators dominate Guatemala's mobile market: Tigo, Claro, and Movistar. While WhatsApp is popular in urban areas, SMS remains essential for business communications and reaching rural populations with limited data connectivity. Android devices account for approximately 85% of mobile devices.

SMS Features and Capabilities for Guatemala

Guatemala supports basic SMS functionality with limited advanced features. Business communications focus primarily on one-way messaging.

Two-way SMS Support

Standard A2P channels in Guatemala do not support two-way SMS. For interactive messaging, work with local aggregators or use alternative communication methods.

Concatenated Messages (Segmented SMS)

Support: Not officially supported.

Message length limits:

  • GSM-7 encoding: 160 characters
  • Unicode (UCS-2): 70 characters

Encoding: Use GSM-7 for optimal delivery and cost-effectiveness. Both GSM-7 and UCS-2 encodings are supported.

MMS Support

MMS messages automatically convert to SMS with an embedded URL link. Use URL shorteners and ensure your media content is mobile-optimized.

Phone Number Format and Compatibility

Number Portability

Not available in Guatemala. Phone numbers remain tied to their original carrier, ensuring more reliable message routing and delivery.

Sending SMS to Landlines

Not supported. Messages sent to landline numbers fail and may trigger API error responses (for example, Twilio error code 21614).

Compliance and Regulatory Guidelines for SMS in Guatemala

The Superintendencia de Telecomunicaciones (SIT) governs SMS regulations in Guatemala. Adhere to general consumer protection laws and telecommunications regulations. The regulatory framework focuses on protecting consumer rights and preventing spam.

Explicit Consent Requirements:

  • Obtain written or digital confirmation before sending marketing messages
  • Disclose message frequency and content type clearly
  • Maintain consent documentation for at least 2 years
  • Include timestamp, source, and scope of permission in consent records

Best Practices for Obtaining Consent:

  • Use double opt-in verification
  • Provide clear terms and conditions
  • Maintain detailed consent logs
  • Run consent refresh campaigns every 12 months

HELP/STOP and Other Commands

  • Support STOP, CANCELAR, and NO in both English and Spanish
  • Provide AYUDA (HELP) responses with service information in Spanish
  • Make keywords case-insensitive
  • Process opt-out requests immediately
  • Send confirmation messages in the user's preferred language

Do Not Call / Do Not Disturb Registries

Guatemala does not maintain an official DND registry. Maintain your own suppression lists and:

  • Honor opt-out requests within 24 hours
  • Implement automated opt-out processing
  • Clean contact lists regularly
  • Share opt-out lists across campaigns and platforms

Time Zone Sensitivity

Guatemala uses Central Time (UTC-6). No strict time restrictions exist, but follow these recommended sending hours:

  • Weekdays: 8:00 AM – 8:00 PM CT
  • Weekends: 9:00 AM – 6:00 PM CT
  • Holidays: Avoid unless urgent
  • Emergency messages: Send anytime

SMS Sender ID Options and Phone Number Types in Guatemala

Alphanumeric Sender ID

Operator network capability: Supported with limitations

Registration requirements: None

Sender ID preservation: Not guaranteed. Carriers may overwrite with a random domestic longcode.

Best practice: Use consistent sender IDs across campaigns

Long Codes

Domestic vs. International:

  • Domestic long codes: Not supported
  • International long codes: Fully supported

Sender ID preservation: No – carriers typically overwrite

Provisioning time: 1–2 business days

Use cases:

  • Transactional messages
  • Two-factor authentication
  • Customer support communications

Short Codes

Not available in Guatemala.

Restricted SMS Content, Industries, and Use Cases

Prohibited Content:

  • Gambling and betting services
  • Adult or explicit content
  • Unauthorized pharmaceutical promotions
  • Political campaign messages without proper authorization
  • Fraudulent or misleading content

Regulated Industries:

  • Financial services: Require additional disclaimers
  • Healthcare: Must comply with privacy regulations
  • Insurance: Need clear terms and conditions

Content Filtering

Known Carrier Filters:

  • URLs from suspicious domains
  • Multiple exclamation marks or all-caps text
  • High-frequency identical messages
  • Restricted keywords

Best Practices to Avoid Filtering:

  • Use approved URL shorteners
  • Maintain consistent sending patterns
  • Avoid excessive punctuation
  • Include a clear business identifier
  • Keep content professional

Best Practices for Sending SMS in Guatemala

Messaging Strategy

  • Keep messages under 160 characters when possible
  • Include a clear call-to-action
  • Use personalization tokens thoughtfully
  • Maintain consistent brand voice
  • Include your business name in messages

Sending Frequency and Timing

  • Limit to 4–5 messages per month per recipient
  • Respect local holidays and cultural events
  • Implement frequency capping
  • Space out messages appropriately

Localization

Primary language: Spanish

Localization considerations:

  • Consider indigenous languages for specific regions
  • Use local date and time formats
  • Adapt content for cultural context
  • Test translations with native speakers

Opt-Out Management

  • Process opt-outs within 24 hours
  • Maintain a centralized opt-out database
  • Send opt-out confirmation messages
  • Audit opt-out lists regularly
  • Train staff on opt-out procedures

Testing and Monitoring

  • Test across all major carriers (Tigo, Claro, Movistar)
  • Monitor delivery rates by carrier
  • Track engagement metrics
  • Run regular A/B tests on message content
  • Document and analyze failure patterns

SMS API integrations for Guatemala

Twilio

Twilio provides a robust SMS API with comprehensive support for Guatemala. Integration requires an account SID and auth token for authentication.

Key Parameters:

  • from: Your Twilio phone number (must be in E.164 format)
  • to: Recipient's number (must include +502 prefix for Guatemala)
  • body: Message content (supports UTF-8 encoding)
typescript
import { Twilio } from 'twilio';

// Initialize Twilio client
const client = new Twilio(
  process.env.TWILIO_ACCOUNT_SID,
  process.env.TWILIO_AUTH_TOKEN
);

async function sendSMSToGuatemala(
  to: string,
  message: string
): Promise<void> {
  try {
    // Ensure number starts with Guatemala country code
    const formattedNumber = to.startsWith('+502') ? to : `+502${to}`;

    const response = await client.messages.create({
      body: message,
      from: process.env.TWILIO_PHONE_NUMBER,
      to: formattedNumber,
      // Enable delivery tracking
      statusCallback: 'https://your-webhook.com/status'
    });

    console.log(`Message sent successfully! SID: ${response.sid}`);
  } catch (error) {
    console.error('Error sending message:', error);
    throw error;
  }
}

Sinch

Sinch offers direct carrier connections in Guatemala with support for both SMS and number verification services.

Key Parameters:

  • serviceplanId: Your Sinch service plan ID
  • apiToken: Bearer token for authentication
  • destination: Recipient number in E.164 format
typescript
import axios from 'axios';

class SinchSMSService {
  private readonly baseUrl: string;
  private readonly headers: Record<string, string>;

  constructor(serviceplanId: string, apiToken: string) {
    this.baseUrl = `https://sms.api.sinch.com/xms/v1/${serviceplanId}`;
    this.headers = {
      'Authorization': `Bearer ${apiToken}`,
      'Content-Type': 'application/json'
    };
  }

  async sendSMS(to: string, message: string): Promise<void> {
    try {
      const response = await axios.post(
        `${this.baseUrl}/batches`,
        {
          from: process.env.SINCH_SENDER_ID,
          to: [to],
          body: message
        },
        { headers: this.headers }
      );

      console.log('Message sent:', response.data.id);
    } catch (error) {
      console.error('Sinch SMS error:', error);
      throw error;
    }
  }
}

MessageBird

MessageBird provides reliable SMS delivery in Guatemala through their global messaging API.

Key Parameters:

  • apiKey: Your MessageBird API key
  • originator: Sender ID or phone number
  • recipients: Array of recipient numbers
typescript
import messagebird from 'messagebird';

class MessageBirdService {
  private client: any;

  constructor(apiKey: string) {
    this.client = messagebird(apiKey);
  }

  sendSMS(to: string, message: string): Promise<void> {
    return new Promise((resolve, reject) => {
      this.client.messages.create({
        originator: 'YourCompany',
        recipients: [to],
        body: message,
        datacoding: 'auto' // Automatic encoding detection
      }, (err: any, response: any) => {
        if (err) {
          reject(err);
        } else {
          resolve(response);
        }
      });
    });
  }
}

SMS API Rate Limits and Throughput for Guatemala

Guatemala-specific considerations for SMS API integration:

Rate Limits:

  • Twilio: 250 messages per second
  • Sinch: 30 messages per second
  • MessageBird: 100 messages per second

Throughput Management Strategies:

  • Implement exponential backoff for retries
  • Use queue systems (for example, Redis or RabbitMQ)
  • Batch messages when possible
  • Monitor delivery rates by carrier

Error Handling and Reporting

Common Error Scenarios:

  • Invalid phone numbers
  • Network timeouts
  • Carrier rejections
  • Rate limit exceeded

Best Practices:

typescript
interface SMSError {
  code: string;
  message: string;
  timestamp: Date;
  recipient: string;
}

class SMSErrorHandler {
  static handleError(error: SMSError): void {
    // Log error details
    console.error(`SMS Error [${error.code}]:`, {
      message: error.message,
      recipient: error.recipient,
      timestamp: error.timestamp
    });

    // Implement retry logic for specific error codes
    if (this.isRetryableError(error.code)) {
      // Add to retry queue
    }

    // Alert on critical errors
    if (this.isCriticalError(error.code)) {
      // Send alert to monitoring system
    }
  }

  private static isRetryableError(code: string): boolean {
    const retryableCodes = ['TIMEOUT', 'RATE_LIMIT', 'TEMPORARY_FAILURE'];
    return retryableCodes.includes(code);
  }

  private static isCriticalError(code: string): boolean {
    const criticalCodes = ['INVALID_CREDENTIALS', 'ACCOUNT_SUSPENDED'];
    return criticalCodes.includes(code);
  }
}

Recap and Additional Resources

Key Takeaways

  1. Compliance Priorities:

    • Obtain explicit consent
    • Honor opt-out requests
    • Maintain proper documentation
  2. Technical Considerations:

    • Use E.164 number formatting
    • Implement proper error handling
    • Monitor delivery rates
  3. Best Practices:

    • Send during business hours
    • Localize content
    • Maintain clean contact lists

Next Steps

  1. Review SIT (Superintendencia de Telecomunicaciones) regulations
  2. Consult with local legal counsel
  3. Set up test accounts with your preferred SMS providers
  4. Implement monitoring and reporting systems

Additional Resources