1. 客户面临的挑战
客户是沙敦省中型岛屿旅游运营商,经营8年,拥有数艘speedboat、longtail船、向导团队(会泰/马来/英,部分会爪夷文)。提供8项程序:半日浮潜、全日浮潜、全日高级、徒步、Tarutao一日游、日落巡游、私人包船、多日套餐(3-5天)。
沙敦岛屿以”泰国的马尔代夫”闻名——水清、珊瑚完整。最大目标市场为马来西亚游客(旺季11月-4月占60-80%),因为从吉隆坡驱车至巴拉港距离750公里,8-9小时+船1.5小时,可作为周末游——其次是泰国15-20%、新加坡8-10%、欧洲背包客5-8%。
问题是业务模式严重依赖中间代理——合艾代理(过境带马来西亚团)、槟城+KL代理(通过马来西亚旅行网站预订)占预订80%——佣金20-28%在1,200-3,500泰铢/人的tour上,利润被吃。每年1,400-1,800万泰铢收入,损失佣金320-460万泰铢。
此外运营混乱——通过WhatsApp(马来西亚)+ Facebook Inbox(混合)+ LINE OA(泰国)接收咨询,旺季每日合计120+条消息,4名管理员回复不过来。公司没有在线预订系统——使用团队共享的Google Sheet,没有实时库存,旺季每周遇到3-4次重复预订。
原网站是5年前的WordPress + Bridge主题——LCP 5.8秒,多语言=Google Translate widget(马来语翻译错乱,如”snorkeling”→无意义的”snorkel”),预订流程=邮件表单——马来西亚客户多不用邮件,使用WhatsApp+Facebook Messenger。
搜索需求:“Satun island tour” 12,000/月(全球)、“Pulau Satun” 4,800/月(马来西亚搜索)、“Satun snorkeling” 3,200/月、“Tarutao tour” 2,100/月、“沙敦岛之旅” 1,800/月——合计>25,000次/月搜索需求,但该客户仅获得320次/月自然流量。
2. 为什么以前的解决方案行不通
客户聘请槟城的马来西亚自由SEO,每月RM800(约6,400泰铢)持续5个月——结果是部分马来语关键词上排名,但流量不转化,因为着陆页是没有良好预订流程的WordPress。马来西亚用户期待首页有”WhatsApp按钮+即时预订”。
尝试上架Klook + KKday + GetYourGuide——获得流量,但佣金25-30%高于本地代理——保本困难+无法建立客户关系做回头业务。
尝试Facebook Ads针对马来西亚受众——预算RM2,000(约16,000泰铢)/月持续6个月——engagement 4-6%高,但转化低,因着陆页问题+Facebook Pixel未设置无法优化。
更重要的是马来西亚客户的”支付摩擦”——没有DuitNow QR(马来西亚数字支付标准,马来西亚人使用率超80%)+不接受MYR(锁定泰铢使马来西亚人遇到昂贵汇率+2-3%银行手续费)。使新马来西亚客户避免直接预订——使用接收MYR现金+开具可退款收据的合艾代理。
3. Southern Whale的方案(4大支柱)
支柱1:混合架构——Astro公开 + Next.js预订——Astro静态站点用于公开内容(SEO性能最佳)+ Next.js 14 + tRPC用于预订app(实时库存+复杂state管理)。拆分subdomain:satun-tour.com(公开Astro)+book.satun-tour.com(Next.js预订app)——公开站SEO好+预订流程灵活
支柱2:三语架构泰/马来/英——Astro + i18n支持 /th, /ms, /en + 基于路径的hreflang。马来语版本必须使用槟城本地马来作者(非词汇不同的印尼Bahasa)——因为马来西亚搜索关键词使用马来西亚马来语(如”snorkel”→“menyelam snorkel”、“tour”→“pelancongan”)
支柱3:“沙敦岛旅行指南”内容中心——24篇起始文章分3集群:(1) 行前规划(英+马来焦点):“如何从吉隆坡到沙敦岛——驱车 vs 飞行”、“马来西亚人访问沙敦签证要求”、“沙敦岛最佳访问时间——天气指南” (2) 在岛体验:“浮潜点地图”、“日落步行街指南”、“沙敦岛 vs 其他泰国岛屿” (3) 旅游选择:“如何选择浮潜旅游”、“半日 vs 全日浮潜对比”、“Tarutao一日游——值得吗?”
支柱4:多支付+多渠道预订——集成(1) 泰国人PromptPay QR (2) 马来西亚人DuitNow QR(改变游戏——所有竞争对手都还没有) (3) Stripe Checkout MYR/THB/SGD/USD/EUR (4) WhatsApp Business API + tRPC触发立即发送确认 (5) 通过Twilio发送预订确认SMS(马来西亚+新加坡比邮件更常用SMS)
技术选型理由: 为什么拆Astro+Next.js——公开站需要静态生成+多语言SEO(Astro在此胜出),预订app需要实时WebSocket库存+复杂表单state(Next.js+tRPC在此胜出)——两者均托管在Cloudflare Pages + Workers,总hosting费用<$40/月,对比Vercel pro 2站$40+数据库$25=$105。
4. 工作流程(按周)
第1-2周:发现+马来西亚市场研究 在巴拉港shadow运营1天+沙敦办公室2天,业主+管理负责人+2向导stakeholder访谈,4个画像深度分析(马来西亚周末家庭、新加坡情侣、泰国背包客、欧洲背包客),马来西亚市场研究——通过Zoom用马来/英访谈12位过去马来西亚客户关于预订旅程+支付偏好
第3-4周:架构+设计 数据库架构设计22表(bookings、tours、vessels、schedule_slots、customers、payments、payment_methods_multi、languages等),“热带新鲜现代”风格板(色调:绿松石+沙+珊瑚),35页线框图(公开Astro 25+预订app 10)
第5-6周:Astro公开站构建 Astro项目+三语搭建+24篇内容中心(槟城自由马来作者+泰国作者+英语编辑),280+图片资产R2优化,Schema markup TouristAttraction + Trip + FAQPage
第7-8周:Next.js预订app构建 Next.js + tRPC + Prisma迁移,认证(管理员+代理伙伴层级),实时库存WebSocket(Cloudflare Durable Objects),预订流程3步(选tour→填信息→支付)+ tour选择向导,管理员dashboard移动优先三语UI
第9周:支付+多渠道 PromptPay QR + DuitNow QR生成器+Stripe多币种(MYR/THB/SGD/USD/EUR),WhatsApp Business API集成+意图分类+自动响应模板14条FAQ(泰/马/英),Twilio SMS确认,OCR滑单验证(Google Vision支持马来西亚Maybank、CIMB、Public Bank滑单除泰国银行外)
第10周:SEO+GBP+UAT Hreflang验证、sitemap提交、3语GBP优化(泰/马来/英资料)、35个目录引用提交(泰+马+新加坡旅游平台)、UAT 6次发现14个bug(4高 - DuitNow QR生成、hreflang错误、WhatsApp webhook超时、多币种汇率;10中)
第11周:上线+培训 通过feature flag软启动25%流量5天,管理员团队培训6次(每次2小时,泰语+马来语字幕),完全上线+24小时监控,知识转移+视频教程12段(泰6+马4+英2)
上线后 6个月运维 每月6篇内容(轮换泰2+马2+英2),马来西亚反向链接外联12-15次接触/月(槟城+KL旅行博客),3语每周GBP post
5. 障碍与转向
障碍1:马来西亚银行的DuitNow QR API不直接对泰国商户开放——必须通过支付网关中介(Razer Merchant、Billplz)——增加2.5%交易成本,但解锁价值更高的马来西亚市场——决定继续因ROI明确
障碍2:聘请的马来作者交付比deadline慢2周——槟城自由职业者有多份兼职,交付延迟——通过改为全职commit的KL马来作者+在timeline增加5天buffer解决
障碍3:旺季天气+安全政策——5-10月monsoon期间沙敦岛屿关闭——预订系统必须支持季节性关闭+对关闭期自动禁用预订——增加”Tour Availability Calendar”,管理员可批量禁用日期
障碍4:马来西亚KL/槟城代理抵抗——2大代理看到直接预订平台后威胁切断关系——通过提出”代理伙伴Portal”解决,代理仍获15%佣金(低于原20-28%但代理不必自己处理库存+支付+客服)。1家主要代理同意,2家代理切断关系——净效应直接预订+伙伴portal在4个月后收入增加+28%
障碍5:第3个月Google Search Console发现 /ms 和 /id(印尼语)之间”重复内容”问题——Google混淆马来与印尼(语言相近)——通过细化hreflang+canonical+在每个马来页面增加马来西亚语境的地理特定内容变化(提及”from Kuala Lumpur”、“ringgit pricing”)修复
6. 上线后及持续运营
6个月内的结果:
- 自然流量320 → 8,770/月(+2,640%),分布:英3,200、马4,100、泰1,470
- 直接预订+340%,代理依赖度80% → 45%
- 马来西亚直接预订(不经代理)+480%,因DuitNow QR+马来内容+WhatsApp即时响应
- WhatsApp响应时间3-4小时 → 11分钟(聊天机器人处理58% FAQ)
- 重复预订每周3-4次 → 0
- 滑单验证5-8分钟 → 22秒(OCR多银行)
- “Satun island tour”排名第1(马来西亚SERP)、“Satun snorkeling”第3、“沙敦岛之旅”第1
- LCP 5.8秒 → 1.4秒
- 代理portal活跃伙伴4家(合艾1+KL 2+槟城1),收入占总18%
经验教训: 跨境旅游(泰国目的地+马来西亚客户)必须本地化支付+语言+沟通渠道——DuitNow QR是使马来西亚客户在60秒内信任直接预订的最大单一解锁,vs通过WhatsApp多次消息的OTA代理
另一教训是”代理去中介化”非零和——灵活愿意进入伙伴portal的代理仍获收入,但角色从”销售方”变为”分销方”,而我们拥有客户数据+品牌
持续合作: 目前是第9个月运维客户——正在讨论第二阶段 面向马来西亚客户的移动app (Apple App Store MY + Google Play MY),含忠诚度计划+回头预订+推送通知+沙敦岛屿离线地图。详见 其他case studies。