sms compliance

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

Taiwan SMS Guide: Compliance, Regulations & Best Practices

Send SMS in Taiwan compliantly. Master NCC regulations, PDPA requirements, time restrictions, and API integration. Complete guide with code examples.

Taiwan SMS Best Practices, Compliance, and Features

Send SMS messages in Taiwan compliantly. This guide covers NCC regulations, PDPA requirements, time restrictions, mandatory consent rules, and technical requirements for Traditional Chinese messaging across Chunghwa Telecom, Taiwan Mobile, and Far EasTone networks.

Taiwan SMS Market Overview

Locale name:Taiwan
ISO code:TW
RegionAsia
Mobile country code (MCC)466
Dialing Code+886

Market Conditions: Taiwan has near-universal smartphone penetration. OTT messaging apps like LINE dominate personal communications, but SMS remains crucial for authentication, notifications, and marketing. Major operators include Chunghwa Telecom, Taiwan Mobile, and Far EasTone. Android devices hold approximately 65% market share, with iOS accounting for most of the remainder. For broader context on international SMS standards, see our E.164 phone format guide.

Market Share: As of 2025, Chunghwa Telecom holds approximately 35% of Taiwan's mobile market, Taiwan Mobile approximately 28%, and Far EasTone approximately 22%, with smaller operators APTG and T Star sharing the remainder.

Taiwan SMS Features and Capabilities

Taiwan supports most standard SMS features with restrictions on sender IDs and content types. Comply with strict NCC requirements for business messaging.

Two-way SMS in Taiwan

Two-way SMS is not supported in Taiwan for A2P (Application-to-Person) messaging. Taiwan's telecommunications carriers impose this restriction to prevent SMS spam, fraud (smishing), and unauthorized commercial communications. The sender ID overwriting mechanism – which replaces sender IDs with random Taiwan numbers – makes reply routing technically impossible, as replies cannot be directed back to the original sender.

Alternative Solutions for Two-Way Communication:

  • Implement web-based response forms with unique URLs sent in SMS
  • Use LINE Official Accounts for interactive messaging (LINE has 90% market penetration in Taiwan)
  • Deploy dedicated phone numbers for inbound calls with SMS containing call-to-action
  • Integrate email responses with SMS containing unique reference codes

Concatenated Messages (Segmented SMS)

Support: Yes, though availability varies by sender ID type.

Message length rules: Standard SMS length is 160 characters (GSM-7) or 70 characters (UCS-2) before splitting. For Chinese characters, the maximum is 65 characters per SMS.

Encoding considerations: Both GSM-7 and UCS-2 encoding are supported. Messages containing Chinese characters automatically use UCS-2 encoding.

Character Counting and Cost Examples:

  • English message "Your verification code is 123456" = 32 characters (1 SMS segment at GSM-7)
  • Mixed content "您的驗證碼是 123456" = 10 Chinese characters + 7 alphanumeric = 17 UCS-2 characters (1 SMS segment)
  • Long Chinese message with 70+ characters will split into multiple segments (e.g., 140 characters = 3 segments, charged as 3 SMS)
  • Cost impact: Concatenated messages multiply carrier fees (3 segments = 3× base SMS price)

Keep messages under 65 Chinese characters or 160 GSM-7 characters to minimize costs and ensure single-segment delivery.

MMS Support

MMS messages are automatically converted to SMS with an embedded URL link. Register and allowlist your URLs with local carriers to prevent delivery failures when sending media content.

Recipient Phone Number Compatibility

Number Portability

Number portability is available in Taiwan. Carriers handle routing automatically, so number portability does not significantly impact message delivery.

Sending SMS to Landlines

You cannot send SMS to landline numbers in Taiwan. Attempts result in a 400 response error (code 21614) with no message delivery and no charge.

Number Validation: Taiwan landline numbers start with area codes (02 for Taipei, 03–09 for other regions) and are 8–9 digits total. Mobile numbers always start with 09 and are 10 digits (e.g., +886 9XX XXX XXX). Implement validation logic to filter landlines before sending:

javascript
function isValidTaiwanMobile(number) {
  // Remove +886 or 886 prefix, expect 10 digits starting with 09
  const cleaned = number.replace(/^\+?886/, '');
  return /^09\d{8}$/.test(cleaned);
}

Taiwan SMS Regulations: NCC Compliance Requirements

Comply with Taiwan's SMS regulations set by the National Communications Commission (NCC) and the Telecommunications Act. Follow the Personal Data Protection Act (PDPA, 個人資料保護法) when handling customer data and sending messages. These regulations are similar to other Asia-Pacific markets - compare with Singapore SMS regulations for regional context.

Regulatory Authorities:

Penalties for Non-Compliance:

  • PDPA violations: Fines up to NT$200,000 (approximately US$6,300) for marketing communications sent without proper consent or in breach of opt-out requirements (PDPA Article 48)
  • SMS fraud/spam: If 5 or more sender IDs are involved in fraudulent activity, fines of NT$50,000 per sender ID plus suspension of sender ID registration for 2 months
  • Carrier violations: Operators face fines up to NT$3 million for frequency use violations or security breaches, which may be passed to violating customers
  • Criminal penalties: SMS fraud causing damages exceeding NT$5 million can result in 3–10 years imprisonment under Taiwan's amended fraud statutes

Explicit Consent Requirements:

  • Obtain written or electronic consent before sending marketing messages (PDPA Article 19)
  • Maintain easily accessible consent records
  • Clearly state the messaging purpose during opt-in
  • Obtain separate consent for different communication types

Consent Record Retention: The PDPA does not mandate a specific retention period for general consent records, but industry regulations require retaining records associated with personal data usage for at least 5 years. If other laws prescribe a longer retention period, follow that requirement. Retain consent records for 5–7 years from the date of last communication. For U.S. businesses, consider how these requirements align with 10DLC SMS registration for domestic campaigns.

Best Practices for Consent:

  • Implement double opt-in verification
  • Store consent timestamps and methods
  • Maintain detailed records of opt-in sources
  • Regularly update consent status

HELP/STOP and Other Commands

  • Include opt-out instructions in all marketing messages
  • Support STOP commands in both Chinese and English
  • Common keywords: 取消訂閱, STOP, 退訂, CANCEL
  • Respond to HELP/STOP immediately and free of charge

Implementation Example:

javascript
function handleInboundSMS(message, fromNumber) {
  const stopKeywords = ['STOP', '取消訂閱', '退訂', 'CANCEL', 'UNSUBSCRIBE'];
  const helpKeywords = ['HELP', '說明', '幫助'];

  if (stopKeywords.some(kw => message.toUpperCase().includes(kw))) {
    // Add to suppression list within 24 hours
    addToSuppressionList(fromNumber);
    sendConfirmation(fromNumber, '您已成功取消訂閱 / You have been unsubscribed');
  } else if (helpKeywords.some(kw => message.toUpperCase().includes(kw))) {
    sendHelpMessage(fromNumber, '如需取消請回覆 STOP / Reply STOP to unsubscribe');
  }
}

Do Not Call / Do Not Disturb Registries

Taiwan maintains a national Do Not Call (DNC) registry managed by the NCC:

  • Check numbers against the DNC registry monthly
  • Maintain internal suppression lists
  • Remove numbers within 24 hours of opt-out requests
  • Document compliance procedures

DNC Registry Access: As of 2025, Taiwan's DNC registry for mobile phones is not as centrally managed as in some countries (e.g., Singapore's DNC registry). Maintain your own suppression lists and honor opt-out requests. Coordinate with your SMS provider to implement:

  • Automated suppression list management
  • Regular synchronization with internal CRM systems
  • Audit trails of opt-out requests and processing times

Time Zone Sensitivity

Strict Time Restrictions:

  • No promotional messages between 12:30 PM – 1:30 PM (lunch break)
  • No promotional messages between 9:00 PM – 9:00 AM (night/early morning)
  • Emergency and service messages exempt from time restrictions
  • All times based on Taiwan Standard Time (TST, UTC+8)

Timezone-Aware Scheduling Example:

javascript
import { DateTime } from 'luxon';

function isAllowedSendTime() {
  const now = DateTime.now().setZone('Asia/Taipei');
  const hour = now.hour;
  const minute = now.minute;

  // Block 21:00 - 09:00 (9 PM to 9 AM)
  if (hour >= 21 || hour < 9) {
    return false;
  }

  // Block 12:30 - 13:30 (lunch break)
  if (hour === 12 && minute >= 30) {
    return false;
  }
  if (hour === 13 && minute < 30) {
    return false;
  }

  return true;
}

function scheduleMessage(message, recipient) {
  if (!isAllowedSendTime()) {
    // Queue for next allowed time window
    const nextWindow = calculateNextAllowedTime();
    scheduleForLater(message, recipient, nextWindow);
  } else {
    sendImmediately(message, recipient);
  }
}

Public Holiday Considerations: Avoid sending promotional SMS during major Taiwan holidays: Lunar New Year (typically late January/early February, 7-day period), Dragon Boat Festival (5th day of 5th lunar month), Mid-Autumn Festival (15th day of 8th lunar month), and Double Ten National Day (October 10). Transactional messages (OTP, order confirmations) are acceptable.

Phone Numbers Options and SMS Sender Types for Taiwan

Alphanumeric Sender ID

Operator network capability: Not supported for direct use

Registration requirements: No pre-registration available

Sender ID preservation: Sender IDs are overwritten with random Taiwan long codes at the carrier level

What happens to sender IDs: When you send an SMS with an alphanumeric sender ID (e.g., "MyBrand"), Taiwan carriers automatically replace it with a random Taiwan mobile number (format +886 9XX XXX XXX). Recipients see a numeric sender, not your brand name. This carrier-level overwriting prevents reply routing and brand recognition.

Workaround: Include your brand name in the first 67 characters of the message body. As of November 1, 2025, all commercial SMS must include the company, organization, brand, or campaign name within the message content for NCC compliance.

Long Codes

Domestic vs. International:

  • Domestic long codes not supported
  • International long codes supported but modified during delivery

Sender ID preservation: No, original sender IDs are not preserved

Provisioning time: Immediate to 24 hours

Use cases: Transactional messages, alerts, notifications

Carrier-Specific Differences:

  • Chunghwa Telecom: Does not support short URLs in message text or concatenated messages on some sender ID types
  • Taiwan Mobile & Far EasTone: Support concatenation but require brand name registration
  • Cost comparison: Pricing varies by carrier and volume, typically NT$2–4 per SMS segment for international routes; domestic registered routes may offer NT$1.5–2.5 per segment for high-volume senders (50,000+ messages/month)

Short Codes

Support: Not currently available in Taiwan

Provisioning time: N/A

Use cases: N/A

Restricted SMS Content, Industries, and Use Cases

Prohibited Content and Industries:

  • Firearms and weapons
  • Gambling and betting
  • Adult content
  • Money lending/loan services
  • Political messages
  • Religious content
  • Controlled substances
  • Cannabis products
  • Alcohol-related content
  • WhatsApp/LINE chat links

Prohibited Keywords Examples (avoid these in message content):

  • Gambling: 賭博, 下注, 彩票, casino, betting
  • Loans: 貸款, 借錢, 快速融資, instant loan
  • Adult: 色情, 成人內容, adult content
  • Fraud indicators: 中獎, 免費領取, 緊急通知 (when used deceptively)

Content Filtering

Carrier Filtering Rules:

  • URLs must be pre-registered and allowlisted
  • Shortened URLs are strictly prohibited
  • Maximum of 5 sender IDs per business
  • Content screening for prohibited keywords

URL Registration Process:

  1. Contact your SMS provider (Twilio, Sinch, MessageBird, Plivo, etc.)
  2. Submit full-length URLs for whitelisting (e.g., https://yourdomain.com/verify, not bit.ly links)
  3. Provide business registration documents and KYC information
  4. Allow 3–5 business days for carrier approval
  5. Re-register if URLs change (excluding variable parameters)

Carrier Contact Details:

Tips to Avoid Blocking:

  • Use only full-length, registered URLs
  • Avoid sensitive keywords
  • Maintain consistent sender IDs
  • Follow time restriction guidelines

Taiwan SMS Best Practices for Businesses

Messaging Strategy

  • Keep messages under 65 Chinese characters
  • Include clear calls-to-action
  • Use your registered company name
  • Avoid excessive punctuation or symbols

Message Template Examples:

[YourBrand] 您的驗證碼是 123456,5分鐘內有效。 [YourBrand] Your verification code is 123456, valid for 5 minutes. [YourBrand] 訂單 #12345 已出貨,預計3天送達。追蹤:https://yourdomain.com/track [YourBrand] Order #12345 shipped, arriving in 3 days. Track: https://yourdomain.com/track

Sending Frequency and Timing

  • Limit to 1–2 messages per day per recipient
  • Respect quiet hours and lunch breaks
  • Consider Taiwan's public holidays
  • Space out bulk campaigns

Timezone Conversion Best Practices (sending from abroad):

python
from datetime import datetime
import pytz

def convert_to_taiwan_time(utc_time):
    taiwan_tz = pytz.timezone('Asia/Taipei')
    taiwan_time = utc_time.astimezone(taiwan_tz)
    return taiwan_time

def schedule_taiwan_sms(send_time_utc):
    taiwan_time = convert_to_taiwan_time(send_time_utc)
    if is_within_allowed_hours(taiwan_time):
        send_sms()
    else:
        delay_until_allowed_time(taiwan_time)

Localization

  • Support both Traditional Chinese and English
  • Use appropriate character encoding (UCS-2)
  • Consider local cultural sensitivities
  • Include local contact information

Cultural Considerations:

  • Avoid unlucky numbers: 4 sounds like "death" (死), especially in phone numbers or codes
  • Use polite formal language (您 instead of 你) for business communications
  • Respect Lunar New Year traditions – avoid collection messages during the holiday period
  • Use native speakers for content review to avoid translation errors

Opt-Out Management

  • Process opt-outs within 24 hours
  • Maintain centralized opt-out database
  • Confirm opt-out status to users
  • Clean your database regularly

Database Schema Recommendation:

sql
CREATE TABLE sms_suppression_list (
  id SERIAL PRIMARY KEY,
  phone_number VARCHAR(15) NOT NULL UNIQUE,
  opt_out_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  opt_out_method VARCHAR(50), -- 'SMS_REPLY', 'WEB_FORM', 'CUSTOMER_SERVICE'
  reason TEXT,
  confirmed BOOLEAN DEFAULT FALSE
);

CREATE INDEX idx_phone_lookup ON sms_suppression_list(phone_number);

Testing and Monitoring

  • Test across major carriers (Chunghwa, Taiwan Mobile, Far EasTone)
  • Monitor delivery rates by carrier
  • Track opt-out rates and patterns
  • Conduct regular content compliance audits

Taiwan Market KPIs and Benchmarks:

  • Delivery Rate: Target >95% for transactional SMS, >90% for marketing SMS
  • Open Rate: SMS open rates in Taiwan average 95–98% within 3 minutes of receipt
  • Opt-out Rate: Healthy rate is <2% per campaign; >5% indicates poor targeting or frequency issues
  • Response Rate: Marketing SMS typically achieves 10–15% click-through rates in Taiwan
  • Compliance Score: Aim for zero violations of time restrictions and 100% brand name inclusion

SMS API Integration for Taiwan: Provider Comparison

Twilio

Twilio provides a RESTful API for sending SMS messages to Taiwan. Authenticate using your Account SID and Auth Token.

typescript
import { Twilio } from 'twilio';

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

// Function to send SMS to Taiwan
async function sendSMSToTaiwan(
  to: string,
  message: string
): Promise<void> {
  try {
    // Ensure number is in E.164 format for Taiwan (+886)
    const formattedNumber = to.startsWith('+886')
      ? to
      : `+886${to.replace(/^0/, '')}`;

    const response = await client.messages.create({
      body: message,
      to: formattedNumber,
      // Sender ID will be overwritten by carrier
      from: process.env.TWILIO_PHONE_NUMBER,
      // Optional parameters for delivery tracking
      statusCallback: 'https://your-webhook.com/status'
    });

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

// Taiwan-specific error handling
function handleTaiwanSpecificError(error: any) {
  const errorCode = error.code;

  switch (errorCode) {
    case 21614:
      console.error('Cannot send SMS to landline numbers in Taiwan');
      break;
    case 21408:
      console.error('Permission denied - check carrier restrictions');
      break;
    case 30006:
      console.error('Landline or unreachable carrier');
      break;
    default:
      console.error(`Twilio error ${errorCode}: ${error.message}`);
  }
}

Sinch

Sinch uses Bearer token authentication and provides a REST API for SMS delivery.

typescript
import axios from 'axios';

class SinchSMSService {
  private readonly baseUrl: string;
  private readonly apiToken: string;

  constructor(serviceId: string, apiToken: string) {
    this.baseUrl = `https://sms.api.sinch.com/xms/v1/${serviceId}`;
    this.apiToken = apiToken;
  }

  async sendSMS(to: string, message: string): Promise<void> {
    try {
      const response = await axios.post(
        `${this.baseUrl}/batches`,
        {
          to: [to],
          body: message,
          // Encoding for Traditional Chinese support
          encoding: 'UCS2'
        },
        {
          headers: {
            'Authorization': `Bearer ${this.apiToken}`,
            'Content-Type': 'application/json'
          }
        }
      );

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

MessageBird

MessageBird offers a straightforward REST API with comprehensive delivery reporting.

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: 'YourBrand', // Will be overwritten
        recipients: [to],
        body: message,
        // Taiwan-specific parameters
        datacoding: 'unicode',
        type: 'flash' // For time-sensitive messages
      }, (err: any, response: any) => {
        if (err) {
          reject(err);
          return;
        }
        resolve(response);
      });
    });
  }
}

Plivo

Plivo provides a REST API with authentication via Basic Auth using your Auth ID and Auth Token.

typescript
import { Client } from 'plivo';

class PlivoSMSService {
  private client: Client;

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

  async sendSMS(to: string, message: string): Promise<void> {
    try {
      const response = await this.client.messages.create({
        src: process.env.PLIVO_NUMBER, // Source number
        dst: to, // Destination number
        text: message,
        // Taiwan-specific parameters
        url_strip_query_params: false, // Preserve full URLs
        method: 'POST'
      });

      console.log('Message sent:', response.messageUuid);
    } catch (error) {
      console.error('Plivo error:', error);
    }
  }
}

API Provider Comparison:

ProviderBase Cost/SMSRate LimitsTaiwan FeaturesSupport Quality
Twilio$0.05–0.0830 msg/secBrand registration, URL whitelistingExcellent
Sinch$0.04–0.0750 msg/secUCS-2 encoding, batch APIVery Good
MessageBird$0.045–0.07540 msg/secUnicode support, delivery reportsGood
Plivo$0.04–0.0630 msg/secFull URL preservationGood

Note: Pricing varies by volume commitments and contract terms. Contact providers for current Taiwan-specific rates.

API Rate Limits and Throughput

  • Default rate limits: 30 messages per second (varies by provider)
  • Batch processing recommended for volumes > 1000/hour
  • Implement exponential backoff for retry logic
  • Queue messages during peak hours (9AM–5PM TST)

Provider-Specific Rate Limits:

  • Twilio: 30 msg/sec default; up to 200 msg/sec with approval
  • Sinch: 50 msg/sec default; 100+ msg/sec for enterprise accounts
  • MessageBird: 40 msg/sec default; custom limits available
  • Plivo: 30 msg/sec default; scalable with volume commitments

Error Handling and Reporting

Common Taiwan-Specific Error Codes:

Error CodeProviderMeaningAction
21614TwilioLandline numberValidate mobile vs landline before sending
21408TwilioPermission deniedCheck carrier restrictions, register content
30006TwilioUnreachable destinationVerify number format and carrier availability
30003TwilioUnreachable numberNumber out of service or invalid
30004TwilioMessage blockedContent filtering violation, review message
30005TwilioUnknown destinationInvalid Taiwan number format
1902SinchInvalid recipientVerify E.164 format (+886...)
1903SinchMissing parameterCheck required fields
error_2MessageBirdInsufficient balanceTop up account balance
error_9MessageBirdInvalid recipientValidate Taiwan mobile number
typescript
// Comprehensive error handling implementation
interface SMSError {
  code: string;
  message: string;
  timestamp: Date;
  recipient: string;
}

class SMSErrorHandler {
  static handleError(error: SMSError): void {
    // Log error to monitoring system
    console.error(`SMS Error ${error.code}: ${error.message}`);

    // Implement retry logic for specific error codes
    if (['30003', '30004', '30005'].includes(error.code)) {
      // Queue for retry with exponential backoff
      this.queueForRetry(error);
    } else if (['21614', '30006'].includes(error.code)) {
      // Permanent failure - add to invalid number list
      this.addToInvalidList(error.recipient);
    }
  }

  private static queueForRetry(error: SMSError): void {
    // Implement retry queue logic with exponential backoff
    const retryDelays = [5, 15, 60, 300]; // seconds
    // Queue implementation here
  }

  private static addToInvalidList(recipient: string): void {
    // Add to database of invalid/unreachable numbers
  }
}

Recap and Additional Resources

Key Takeaways

  1. Compliance Priorities

    • Obtain explicit consent
    • Respect time restrictions (no messages 12:30–13:30, 21:00–09:00 TST)
    • Register URLs with carriers
    • Monitor DNC registry and internal suppression lists
  2. Technical Considerations

    • Use UCS-2 encoding for Traditional Chinese characters
    • Implement proper error handling for Taiwan-specific codes
    • Monitor delivery rates by carrier
    • Test across all major carriers (Chunghwa, Taiwan Mobile, Far EasTone)
  3. Content Requirements (Effective November 1, 2025)

    • Include brand/company name in first 67 characters
    • Register all sender IDs (maximum 5 per business)
    • Use only pre-registered full-length URLs
    • Avoid prohibited content and keywords

Implementation Checklist

  1. Pre-Launch (Weeks 1–2)

    • Register business with SMS provider
    • Submit KYC documents and brand information
    • Whitelist all URLs to be used in messages
    • Set up timezone-aware scheduling system
  2. Development (Weeks 2–4)

    • Implement mobile number validation (filter landlines)
    • Build consent management system with 5-year retention
    • Create suppression list database and API
    • Develop STOP/HELP keyword handlers
  3. Testing (Week 5)

    • Send test messages to all three major carriers
    • Verify character encoding (Traditional Chinese)
    • Test time restriction enforcement
    • Validate error handling for Taiwan-specific codes
  4. Launch & Monitor (Week 6+)

    • Track delivery rates (target >95% for transactional)
    • Monitor opt-out rates (<2% healthy threshold)
    • Conduct monthly compliance audits
    • Review and update suppression lists weekly

Next Steps

  1. Review NCC regulations at www.ncc.gov.tw
  2. Consult with local legal counsel for compliance
  3. Register with your chosen SMS provider
  4. Implement your testing framework

Additional Resources

Note: Taiwan mobile phone numbers follow the format +886 9XX XXX XXX (country code +886 followed by 9 digits starting with 9). All mobile numbers begin with the digit 9 after the country code.

Industry Associations:

  • Taiwan Mobile Business Association
  • Taiwan Communications Industry Development Association

Market Context: LINE has over 21 million users in Taiwan (approximately 90% of the population), making it the dominant OTT platform. SMS remains essential for authentication, transactional notifications, and reaching users without app access.

Troubleshooting FAQ

Q: My messages aren't being delivered. What should I check? A: Verify: (1) Number format is +886 9XX XXX XXX, (2) Sending during allowed hours (9AM–12:30PM, 1:30PM–9PM TST), (3) URLs are pre-registered, (4) Brand name is included in first 67 characters.

Q: Can I use bit.ly or other URL shorteners? A: No. Shortened URLs are strictly prohibited in Taiwan. Use full-length URLs registered with your carrier.

Q: How do I register my URLs with carriers? A: Contact your SMS provider's support team with your full URLs and business documentation. Allow 3–5 business days for approval.

Q: What happens if I send during restricted hours? A: Messages may be blocked by carriers, and repeated violations can result in fines up to NT$50,000 per sender ID plus 2-month registration suspension.

Q: Do I need different sender IDs for transactional vs. marketing messages? A: While not required, it's best practice to use separate sender IDs. Taiwan carriers may apply different filtering rules based on content type.

Frequently Asked Questions

How to send SMS messages in Taiwan?

Use a reputable SMS provider like Twilio, Sinch, MessageBird, or Plivo. Their APIs offer integration with Taiwan's specific requirements. Remember to handle long codes appropriately, as sender IDs are often modified upon delivery.

What is the SMS market like in Taiwan?

Taiwan's mobile market is highly developed, but while apps like LINE are popular for personal use, SMS remains vital for business needs like authentication and marketing. Key operators include Chunghwa Telecom, Taiwan Mobile, and Far EasTone.

Why does Taiwan restrict SMS sender IDs?

Alphanumeric sender IDs are not supported for direct use, and long code sender IDs are modified by carriers. This is part of Taiwan's regulatory framework aimed at preventing spam and ensuring proper identification of message senders.

When should I send marketing SMS in Taiwan?

Avoid sending promotional messages between 9:00 PM and 9:00 AM, and also during the lunch break from 12:30 PM to 1:30 PM Taiwan Standard Time (GMT+8). Emergency and service messages are exempt.

Can I send SMS to landlines in Taiwan?

No, sending SMS messages to landline numbers in Taiwan is not supported. Attempts will result in a 400 response error (code 21614) with no message delivery and no charge incurred.

What is the character limit for SMS in Taiwan?

Standard SMS messages are 160 characters (GSM-7) or 70 characters (UCS-2). However, for Chinese characters, the limit is 65 characters per SMS. Longer messages will be concatenated.

How to comply with SMS regulations in Taiwan?

Obtain explicit consent for marketing messages, adhere to strict time restrictions, register URLs with carriers, and regularly check numbers against the Do Not Call (DNC) registry managed by the NCC.

What are the prohibited SMS content categories in Taiwan?

Gambling, adult content, financial loans, political or religious messages, controlled substances, alcohol, and links to messaging apps like WhatsApp or LINE are all prohibited in SMS content.

How to handle SMS opt-outs in Taiwan?

All marketing SMS must include opt-out instructions (STOP, CANCEL, etc. in both English and Chinese), and businesses are required to process and remove numbers from lists within 24 hours of the request.

What is the best practice for URLS in Taiwan SMS?

Shortened URLs are strictly prohibited. Use full-length URLs and pre-register them with local carriers to ensure successful delivery and avoid content filtering issues.

What SMS encoding should I use for Taiwan?

Use UCS-2 encoding for messages containing Chinese characters. This ensures proper display on recipients' devices, especially given the prevalence of Android devices (around 65% market share).

How to get consent for SMS marketing in Taiwan?

Explicit consent, either written or electronic, is mandatory for marketing messages. Double opt-in, storing consent details (time, source), and regularly updating consent status are best practices.

What are the penalties for violating SMS regulations in Taiwan?

The article does not detail specific penalties, but mentions that SMS communications are regulated by the National Communications Commission (NCC) and governed by the Telecommunications Act.

Where can I find more information on Taiwan's SMS guidelines?

The National Communications Commission (NCC) website ([www.ncc.gov.tw](https://www.ncc.gov.tw)) and the Ministry of Justice website for the Personal Data Protection Act ([www.moj.gov.tw/EN/pdpa](https://www.moj.gov.tw/EN/pdpa)) offer further resources.