sms compliance
sms compliance
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 |
| Region | Asia |
| 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:
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:
- National Communications Commission (NCC): www.ncc.gov.tw
- Ministry of Justice (PDPA enforcement): www.moj.gov.tw
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
Consent and Opt-In
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:
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:
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:
- Contact your SMS provider (Twilio, Sinch, MessageBird, Plivo, etc.)
- Submit full-length URLs for whitelisting (e.g., https://yourdomain.com/verify, not bit.ly links)
- Provide business registration documents and KYC information
- Allow 3–5 business days for carrier approval
- Re-register if URLs change (excluding variable parameters)
Carrier Contact Details:
- Twilio: Submit via Twilio Support or email senderid@twilio.com
- Vonage/Nexmo: Access Global Sender ID Portal
- MessageBird: Contact account manager or support@messagebird.com
- Sinch: Use Sinch Dashboard or contact your account team
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):
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:
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.
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.
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.
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.
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:
| Provider | Base Cost/SMS | Rate Limits | Taiwan Features | Support Quality |
|---|---|---|---|---|
| Twilio | $0.05–0.08 | 30 msg/sec | Brand registration, URL whitelisting | Excellent |
| Sinch | $0.04–0.07 | 50 msg/sec | UCS-2 encoding, batch API | Very Good |
| MessageBird | $0.045–0.075 | 40 msg/sec | Unicode support, delivery reports | Good |
| Plivo | $0.04–0.06 | 30 msg/sec | Full URL preservation | Good |
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 Code | Provider | Meaning | Action |
|---|---|---|---|
| 21614 | Twilio | Landline number | Validate mobile vs landline before sending |
| 21408 | Twilio | Permission denied | Check carrier restrictions, register content |
| 30006 | Twilio | Unreachable destination | Verify number format and carrier availability |
| 30003 | Twilio | Unreachable number | Number out of service or invalid |
| 30004 | Twilio | Message blocked | Content filtering violation, review message |
| 30005 | Twilio | Unknown destination | Invalid Taiwan number format |
| 1902 | Sinch | Invalid recipient | Verify E.164 format (+886...) |
| 1903 | Sinch | Missing parameter | Check required fields |
| error_2 | MessageBird | Insufficient balance | Top up account balance |
| error_9 | MessageBird | Invalid recipient | Validate Taiwan mobile number |
// 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
-
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
-
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)
-
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
-
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
-
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
-
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
-
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
- Review NCC regulations at www.ncc.gov.tw
- Consult with local legal counsel for compliance
- Register with your chosen SMS provider
- Implement your testing framework
Additional Resources
- National Communications Commission (NCC): www.ncc.gov.tw
- Personal Data Protection Act (PDPA): Ministry of Justice at www.moj.gov.tw
- Telecommunications Management Act: law.moj.gov.tw
- Taiwan Personal Data Protection Commission: www.pdpc.gov.tw
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.