sms compliance

Sent logo
Sent TeamMay 3, 2025 / sms compliance / Article

Switzerland SMS Guide

Switzerland SMS guide: compliance, features & best practices. Understand consent (explicit opt-in required), STOP commands (STOPP/ARR??T/STOP), & number portability. Avoid error 21614 (landlines). Supports concatenated SMS (153 GSM-7 chars/segment, 67 UCS-2). API integration details included.

Switzerland SMS Best Practices, Compliance, and Features

Switzerland SMS Market Overview

Locale name:Switzerland
ISO code:CH
RegionEurope
Mobile country code (MCC)228
Dialing Code+41

Market Conditions: Switzerland has a highly developed mobile market with near-universal smartphone penetration. The country's main mobile operators include Swisscom, Sunrise, and Salt, providing extensive network coverage. While OTT messaging apps like WhatsApp and iMessage are popular, SMS remains a crucial channel for business communications, particularly for authentication, alerts, and official notifications. The market shows a relatively even split between Android and iOS devices, with a slight preference for iOS among Swiss consumers.


Key SMS Features and Capabilities in Switzerland

Switzerland offers comprehensive SMS capabilities including two-way messaging, concatenated messages, and number portability, though MMS is handled through SMS conversion with URL links.

Two-way SMS Support

Switzerland fully supports two-way SMS communications with no specific restrictions. This enables interactive messaging scenarios like customer support, appointment confirmations, and automated response systems.

Concatenated Messages (Segmented SMS)

Support: Yes, concatenation is supported across all major carriers, though support may vary by sender ID type.
Message length rules: Standard SMS length of 160 characters for GSM-7 encoding, 70 characters for UCS-2 encoding before splitting occurs.
Encoding considerations: Messages using GSM-7 encoding can be concatenated up to 153 characters per segment, while UCS-2 encoded messages allow 67 characters per segment.

MMS Support

MMS messages are not directly supported in Switzerland. Instead, they are automatically converted to SMS messages containing a URL link to view the multimedia content. This ensures compatibility while still enabling the sharing of images, videos, and other media content.

Recipient Phone Number Compatibility

Number Portability

Number portability is fully available in Switzerland, allowing users to keep their phone numbers when switching between mobile operators. This feature does not affect SMS delivery or routing, as the Swiss telecommunications infrastructure handles number porting seamlessly.

Sending SMS to Landlines

Sending SMS to landline numbers is not supported in Switzerland. Attempts to send messages to landline numbers will result in a failed delivery, specifically generating a 400 response with error code 21614. These messages will not appear in logs, and no charges will be incurred.

Compliance and Regulatory Guidelines for SMS in Switzerland

Switzerland enforces strict data protection and privacy regulations through the Federal Act on Data Protection (FADP) and the Swiss Federal Act Against Unfair Competition (UCA). The Federal Office of Communications (OFCOM) oversees telecommunications regulations, while the Federal Data Protection and Information Commissioner (FDPIC) monitors data privacy compliance.

Explicit Consent Requirements:

  • Written or electronic confirmation of opt-in is mandatory before sending marketing messages
  • Pre-checked boxes or implied consent are not sufficient
  • Maintain detailed records of when and how consent was obtained
  • Purpose of messaging must be clearly stated during opt-in process

Best Practices for Consent:

  • Use double opt-in verification
  • Store consent timestamps and methods
  • Regularly update consent records
  • Provide clear privacy policy references

HELP/STOP and Other Commands

Required Keywords:

  • STOP/STOPP (German)
  • ARR??T (French)
  • STOP (Italian)
  • HELP/HILFE/AIDE/AIUTO

Messages must include opt-out instructions in the primary language of the region being targeted. Switzerland's multilingual nature requires support for commands in German, French, and Italian.

Do Not Call / Do Not Disturb Registries

Switzerland does not maintain a centralized Do Not Call registry for SMS. However, businesses must:

  • Maintain their own suppression lists
  • Honor opt-out requests within 24 hours
  • Implement proactive filtering of previously opted-out numbers
  • Document all opt-out requests for compliance purposes

Time Zone Sensitivity

Switzerland observes Central European Time (CET/CEST). While there are no strict legal time restrictions for SMS, recommended sending hours are:

  • Weekdays: 8:00 AM to 8:00 PM CET
  • Weekends: 9:00 AM to 6:00 PM CET
  • Holidays: Avoid sending unless urgent

Phone Numbers Options and SMS Sender Types for Switzerland

Alphanumeric Sender ID

Operator network capability: Fully supported across all major Swiss carriers
Registration requirements: Pre-registration not required, dynamic usage supported
Sender ID preservation: Sender IDs are preserved and displayed as-is to recipients

Long Codes

Domestic vs. International: Both domestic and international long codes are supported
Sender ID preservation: Original sender IDs are preserved across all carriers
Provisioning time: Immediate to 24 hours
Use cases: Ideal for two-way communication, customer support, and transactional messages

Short Codes

Support: Not currently supported in Switzerland
Provisioning time: N/A
Use cases: N/A

Restricted SMS Content, Industries, and Use Cases

Prohibited Content:

  • Cannabis-related content
  • Illegal substances
  • Hate speech
  • Unauthorized gambling services
  • Adult content
  • Cryptocurrency promotions without proper licensing

Regulated Industries:

  • Financial services require FINMA compliance
  • Healthcare messages must comply with HPA regulations
  • Insurance-related messages need FINMA authorization

Content Filtering

Carrier Filtering Rules:

  • URLs from unknown domains may be blocked
  • Messages containing specific keywords related to restricted content
  • High-frequency sending patterns

Tips to Avoid Blocking:

  • Use registered domains for URLs
  • Avoid spam trigger words
  • Maintain consistent sending patterns
  • Include clear sender identification
  • Keep URLs to a minimum per message

Best Practices for Sending SMS in Switzerland

Messaging Strategy

  • Keep messages under 160 characters when possible
  • Include clear call-to-actions
  • Personalize using recipient's name and relevant details
  • Maintain professional tone and language

Sending Frequency and Timing

  • Limit to 2-4 messages per month per recipient
  • Respect Swiss holidays and cultural events
  • Avoid sending during early morning or late evening
  • Space out bulk campaigns to prevent network congestion

Localization

  • Support all national languages: German, French, Italian
  • Match message language to recipient's region
  • Consider Romansh for messages in Graub??nden
  • Use appropriate date and time formats (DD.MM.YYYY)

Opt-Out Management

  • Process opt-outs within 24 hours
  • Maintain centralized opt-out database
  • Confirm opt-out with acknowledgment message
  • Regular audit of opt-out list compliance

Testing and Monitoring

  • Test across all major Swiss carriers
  • Monitor delivery rates by carrier
  • Track engagement metrics
  • Regular testing of opt-out functionality
  • A/B test message content and timing

SMS API integrations for Switzerland

Twilio

Twilio provides a robust SMS API with comprehensive Swiss market support. Authentication uses Account SID and Auth Token credentials.

typescript
import { Twilio } from 'twilio';

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

// Function to send SMS to Swiss numbers
async function sendSwissSMS(to: string, message: string) {
  try {
    // Format Swiss numbers to E.164 format (+41...)
    const formattedNumber = to.startsWith('+41') ? to : `+41${to.replace(/^0/, '')}`;
    
    const response = await client.messages.create({
      body: message,
      to: formattedNumber,
      from: 'YOUR_SENDER_ID', // Alphanumeric or phone number
      // Optional: Set status callback URL
      statusCallback: 'https://your-domain.com/sms/status'
    });
    
    console.log(`Message sent successfully! SID: ${response.sid}`);
    return response;
  } catch (error) {
    console.error('Error sending message:', error);
    throw error;
  }
}

Sinch

Sinch offers direct carrier connections in Switzerland with support for alphanumeric sender IDs.

typescript
import axios from 'axios';

class SinchSMSClient {
  private readonly apiToken: string;
  private readonly serviceId: string;
  private readonly baseUrl: string = 'https://sms.api.sinch.com/xms/v1';

  constructor(serviceId: string, apiToken: string) {
    this.serviceId = serviceId;
    this.apiToken = apiToken;
  }

  async sendSMS(to: string, message: string) {
    try {
      const response = await axios.post(
        `${this.baseUrl}/${this.serviceId}/batches`,
        {
          from: 'YourBrand', // Alphanumeric sender ID
          to: [to],
          body: message,
          delivery_report: 'summary'
        },
        {
          headers: {
            'Authorization': `Bearer ${this.apiToken}`,
            'Content-Type': 'application/json'
          }
        }
      );
      
      return response.data;
    } catch (error) {
      console.error('Sinch SMS Error:', error);
      throw error;
    }
  }
}

MessageBird

MessageBird provides reliable SMS delivery in Switzerland with support for multiple sender types.

typescript
import messagebird from 'messagebird';

class MessageBirdClient {
  private client: any;

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

  sendSMS(to: string, message: string): Promise<any> {
    return new Promise((resolve, reject) => {
      this.client.messages.create({
        originator: 'CompanyName', // Alphanumeric sender ID
        recipients: [to],
        body: message,
        datacoding: 'auto' // Automatic handling of special characters
      }, (err: any, response: any) => {
        if (err) {
          reject(err);
        } else {
          resolve(response);
        }
      });
    });
  }
}

Plivo

Plivo offers SMS capabilities in Switzerland with high deliverability rates.

typescript
import plivo from 'plivo';

class PlivoSMSClient {
  private client: any;

  constructor(authId: string, authToken: string) {
    this.client = new plivo.Client(authId, authToken);
  }

  async sendSMS(to: string, message: string) {
    try {
      const response = await this.client.messages.create({
        src: 'COMPANY', // Your sender ID
        dst: to,
        text: message,
        // Optional parameters for Swiss market
        powerpack_uuid: 'your-powerpack-id',
        url: 'https://your-domain.com/delivery-report'
      });
      
      return response;
    } catch (error) {
      console.error('Plivo Error:', error);
      throw error;
    }
  }
}

API Rate Limits and Throughput

Rate Limits for Switzerland:

  • Twilio: 100 messages per second
  • Sinch: 30 messages per second
  • MessageBird: 60 messages per second
  • Plivo: 50 messages per second

Throughput Management Strategies:

  • Implement queue systems (Redis/RabbitMQ)
  • Use batch sending APIs where available
  • Monitor delivery rates and adjust sending speed
  • Implement exponential backoff for retries

Error Handling and Reporting

Best Practices:

  • Log all API responses and errors
  • Implement retry logic for temporary failures
  • Monitor delivery rates by carrier
  • Set up automated alerts for error thresholds
  • Store delivery receipts for compliance

Recap and Additional Resources

Key Takeaways:

  1. Ensure proper number formatting (+41 format)
  2. Implement robust error handling
  3. Monitor delivery rates and costs
  4. Maintain compliance with Swiss regulations
  5. Support multiple languages

Next Steps:

  1. Review FADP compliance requirements
  2. Set up monitoring and logging systems
  3. Test message delivery across all carriers
  4. Implement proper opt-out handling

Additional Information:

Technical Resources:

Frequently Asked Questions

How to send SMS messages in Switzerland?

Switzerland supports two-way SMS, concatenated messages, and alphanumeric sender IDs. MMS is converted to SMS with a URL link. Landlines cannot receive SMS messages. Ensure compliance with Swiss regulations for successful sending practices. Twilio, Sinch, Messagebird, and Plivo are APIs that can be leveraged for sending SMS messages in Switzerland.

What is the SMS market like in Switzerland?

Switzerland has high mobile penetration with major carriers like Swisscom, Sunrise, and Salt. SMS remains important for business communication, especially for authentication and alerts. The market is fairly balanced between Android and iOS.

Why does Switzerland convert MMS to SMS?

MMS is not directly supported; conversion to SMS with a URL link ensures compatibility across all devices while allowing multimedia sharing. This approach simplifies the process and avoids potential compatibility issues with various handsets and networks.

When should I send marketing SMS in Switzerland?

Recommended hours are weekdays 8:00 AM to 8:00 PM CET and weekends 9:00 AM to 6:00 PM CET. Avoid holidays unless urgent, respect cultural events, and limit frequency to 2-4 messages per recipient monthly.

Can I send SMS to landlines in Switzerland?

No, sending SMS to landline numbers in Switzerland is not supported and will result in failed delivery with error code 21614. You will not be charged for these failed attempts, and they will not appear in your message logs.

What are the required opt-out keywords for SMS in Switzerland?

Due to Switzerland's multilingualism, include STOP/STOPP (German), ARRÊT (French), STOP (Italian), and HELP/HILFE/AIDE/AIUTO. Ensure messages have opt-out instructions in the region's primary language.

How to get consent for SMS marketing in Switzerland?

Explicit consent, electronically or written, is mandatory. Pre-checked boxes or implied consent are insufficient. Maintain detailed records of consent, stating the messaging purpose clearly during the opt-in, preferably using double opt-in verification for compliance.

What is the character limit for SMS in Switzerland?

Standard SMS length is 160 characters for GSM-7 encoding and 70 characters for UCS-2. Concatenated messages allow up to 153 characters per segment for GSM-7 and 67 for UCS-2.

What are the SMS compliance regulations in Switzerland?

The Federal Act on Data Protection (FADP) and the Swiss Federal Act Against Unfair Competition (UCA) govern SMS practices. The Federal Office of Communications (OFCOM) and the Federal Data Protection and Information Commissioner (FDPIC) oversee compliance.

How to handle SMS opt-outs in Switzerland?

Process opt-outs within 24 hours, maintain a centralized database, send confirmation messages, and regularly audit the list for compliance. This ensures adherence to Swiss data protection regulations and fosters trust with your audience.

What SMS sender IDs are supported in Switzerland?

Alphanumeric sender IDs are fully supported and preserved across all carriers. Long codes, both domestic and international, are also supported and retain their original sender ID. Shortcodes are not currently available.

What content is restricted in SMS messages in Switzerland?

Prohibited content includes cannabis, illegal substances, hate speech, unauthorized gambling, adult content, and unlicensed cryptocurrency promotions. Financial, healthcare, and insurance messages require specific regulatory compliance.

How to avoid SMS filtering in Switzerland?

Use registered domains for URLs, avoid spam trigger words, maintain regular sending patterns, ensure clear sender identification, and minimize URLs per message to bypass carrier filters.

What are the API rate limits for sending SMS in Switzerland?

Twilio: 100/second, Sinch: 30/second, MessageBird: 60/second, Plivo: 50/second. Implement queue systems, batch sending, and monitor delivery rates to manage throughput and stay within limits.