mcpField
S
sms-marketing

sms-marketing

github.com/finsilabs营销与增长6082 次安装6 天前更新
代码仓库

关于 sms-marketing

sms-marketing 是面向电商团队的短信营销实施与合规技能,介绍平台选择、订阅同意、用户分群和效果衡量。内容涉及 Postscript、Attentive、Klaviyo SMS、SMSBump 和面向无头店铺的 Twilio 方案。

主要功能

  1. 01比较短信营销平台与适用场景
  2. 02配置订阅入口和同意流程
  3. 03按购买历史与生命周期划分用户
  4. 04区分营销与交易短信授权
  5. 05跟踪点击、退订和收入指标

适用场景

  1. 01为电商渠道启用短信营销
  2. 02审查短信订阅流程是否符合要求
  3. 03向弃购或流失客户发送定向短信
  4. 04将短信加入现有邮件营销流程

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/finsilabs/awesome-ecommerce-skills --skill sms-marketing

安装后在 Claude Code 中输入/sms-marketing确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

tile.json
evals/compliant-opt-in-and-consent-storage/
criteria.json
task.md
evals/inbound-sms-keyword-webhook-handling/
criteria.json
task.md
evals/marketing-sms-send-with-compliance-check/
criteria.json
task.md

详细介绍

短信营销

概述

短信营销的打开率可达 98%,点击率比电子邮件高 5–10 倍,因此它是电商表现最佳的直接营销渠道之一。不过,短信受到严格监管:美国的 TCPA 要求获得明确的书面同意,违规者每条消息最高可被罚款 1,500 美元。专用短信应用(Postscript、Attentive、Klaviyo SMS)会自动处理合规要求、订阅流程和 10DLC 注册。只有无头商店才需要自定义 Twilio 实现。

何时使用此技能

  • 在现有电子邮件自动化之外,推出短信营销渠道时
  • 需要在结账时和通过弹窗设置符合 TCPA 要求的订阅流程时
  • 希望按购买历史、生命周期阶段或位置细分短信营销活动时
  • 向不同的订阅名单发送交易类短信(配送更新)和营销类短信时
  • 审核现有短信项目是否存在合规问题时

核心说明

第 1 步:选择合适的短信平台
平台最适合ShopifyWooCommerceBigCommerce价格
Postscript原生 Shopify,细分 + 工作流App Store——免费套餐;$100+/月
Attentive中端市场,高级 A/B 测试App Store通过集成通过集成$400+/月
Klaviyo SMS已使用 Klaviyo 发送电子邮件App Store插件App Marketplace添加到 Klaviyo 套餐中
SMSBump (Yotpo SMS)WooCommerce + ShopifyApp Store插件—免费套餐;$19+/月
Twilio自定义/无头,由开发者控制通过 API通过 API通过 API按消息计费

建议: Shopify 使用 Postscript,WooCommerce 使用 SMSBump。如果已在使用 Klaviyo,可添加 Klaviyo SMS,以便在同一平台中管理营销活动和工作流。只有在需要全面的程序化控制时,无头商店才使用 Twilio。

第 2 步:设置短信订阅

使用 Postscript 的 Shopify
  1. 从 Shopify App Store 安装 Postscript
  2. 前往 Postscript → Keywords,设置订阅关键词(例如,“JOIN”)——客户向你的 Postscript 号码发送此关键词即可订阅
  3. 前往 Postscript → Sign-up Units 添加订阅表单:
    • 结账订阅:Postscript 会自动在结账时添加一个复选框——在 Settings → Checkout 下配置同意文本
    • 弹窗:创建限时弹窗并提供折扣(例如,“享受 10% 折扣——向 [number] 发送 JOIN”)
  4. 在 Postscript → Settings → Compliance 下设置重要的合规选项:
    • 确认已显示同意文本:“订阅即表示你同意接收营销短信。回复 STOP 即可取消订阅。”
    • 结账时切勿预先勾选短信订阅框——TCPA 要求默认不勾选
  5. 前往 Postscript → Flows 构建自动化序列:
    • 欢迎系列:订阅后触发——立即发送欢迎消息 + 折扣码
    • 购物车弃置:Shopify 检测到结账弃置时触发(与电子邮件不同;即使没有电子邮件地址也可以发送)
    • 浏览弃置:高购买意向浏览后 4 小时内未购买时触发

使用 SMSBump 的 WooCommerce
  1. 从 WordPress 插件目录安装 SMSBump(现为 Yotpo SMS)
  2. 前往 SMSBump → Settings → Compliance,配置结账订阅字段
  3. 前往 SMSBump → Automations,启用:
    • 购物车弃置短信
    • 订单确认和配送更新短信(交易类)
    • 挽回短信(60 天以上未购买的客户)
  4. 为符合 GDPR 要求,SMSBump 为欧盟订阅者提供双重订阅流程——在 Settings → Compliance → Double Opt-in 下启用

BigCommerce 搭配 Klaviyo SMS
  1. 从 BigCommerce App Marketplace 安装 Klaviyo
  2. 前往 Klaviyo → SMS → Getting Started,完成 10DLC 注册(Klaviyo 会引导你完成)
  3. 通过 BigCommerce Admin → Store Setup → Checkout 在结账页面添加 SMS 选择加入字段
  4. 在 Klaviyo → Flows 中构建 SMS 工作流——可以将 SMS 添加到任何现有电子邮件工作流中,作为额外渠道

自定义/无头架构

对于无头商店,请使用 Twilio。你必须将合规要求纳入应用逻辑:

import twilio from 'twilio';

const client = twilio(process.env.TWILIO_ACCOUNT_SID, process.env.TWILIO_AUTH_TOKEN);

async function sendMarketingSMS(phone: string, body: string, customerId: string): Promise<boolean> {
  // ALWAYS check consent before sending — never skip this check
  const consent = await db.smsConsent.findActive(phone, 'marketing');
  if (!consent) {
    console.warn(`SMS suppressed for ${phone} — no active marketing consent`);
    return false;
  }

  // TCPA: no marketing SMS before 8am or after 9pm in recipient's local time
  if (isQuietHours(phone, consent.zipCode)) {
    await smsQueue.add('send', { phone, body, customerId }, { delay: msUntilMorning(phone, consent.zipCode) });
    return false;
  }

  await client.messages.create({
    from: process.env.TWILIO_PHONE_NUMBER,
    to: phone,
    body: `${body}\n\nReply STOP to unsubscribe`,
  });

  return true;
}

// Handle STOP/HELP/UNSTOP via Twilio webhook — required by carriers
export async function handleInboundSMS(req: Request, res: Response) {
  const { From: from, Body: body } = req.body;
  const keyword = body.trim().toUpperCase();

  if (['STOP', 'STOPALL', 'UNSUBSCRIBE', 'CANCEL', 'END', 'QUIT'].includes(keyword)) {
    await db.smsConsent.deactivateAll(from);
    // Twilio also auto-handles STOP at the carrier level for registered numbers
  } else if (keyword === 'HELP') {
    // Required: explain how to opt out
    await client.messages.create({
      from: process.env.TWILIO_PHONE_NUMBER,
      to: from,
      body: `${process.env.STORE_NAME} alerts. Msg&Data rates apply. Reply STOP to unsubscribe.`,
    });
  } else if (['START', 'UNSTOP', 'YES'].includes(keyword)) {
    await db.smsConsent.reactivate(from, 'marketing');
  }

  res.sendStatus(200);
}

**自定义 Twilio 实现的重要提示:**发送消息前,必须通过 Campaign Registry (TCR) 注册品牌和营销活动。美国运营商会拦截未注册的 10DLC 流量。Twilio 的控制台会在 Messaging → Regulatory Compliance → 10DLC 下引导你完成注册。

第 3 步:同意合规要求

TCPA(美国)要求——必须遵守:

  1. 结账时的选择加入复选框默认必须未勾选
  2. 同意声明必须显示在复选框旁边(不能放在细则中)
  3. 必须使用以下同意声明:“勾选此框即表示你同意我们向你提供的号码发送营销短信。消息频率不定。可能产生消息和数据费用。回复 STOP 即可取消订阅。”
  4. 必须在 10 个工作日内处理 STOP 请求(专用 SMS 应用会自动处理)
  5. 不得在收件人当地时区上午 8 点前或晚上 9 点后发送营销 SMS

GDPR(欧盟)要求:

  • 同意标准与 TCPA 相同,另外还需明确记录同意
  • 提供数据导出机制(同意记录须包含时间戳、IP、完整的同意声明)
  • 许多国家/地区要求欧盟订阅者进行双重选择加入

所有主流 SMS 应用(Postscript、SMSBump、Klaviyo SMS)都会自动处理这些合规要求。若直接使用 Twilio,则必须自行实现。

第 4 步:营销活动细分

SMS 投资回报率最高的细分人群:

细分人群消息预期 CTR
放弃购物车的客户(1–4 小时)“你有商品遗留在购物车中:[cart link]”15–25%
VIP 客户(LTV 排名前 20%)提前了解促销和新品20–30%
沉睡客户(60–90 天)提供折扣的挽回优惠8–15%
购后交叉销售(送达后 7 天)“其他购买了 X 的客户也喜欢 Y”10–20%

在 Postscript 中:前往 Postscript → Segments,使用订单历史记录、购买频率和 LTV 筛选条件构建细分人群。 在 Klaviyo SMS 中:将 SMS 步骤添加到现有电子邮件细分人群中——受众定位方式相同。

第 5 步:衡量 SMS 效果
指标健康目标查看位置
结账时的选择加入率占客户的 5–15%应用分析
点击率(营销活动)8–20%应用分析
每次营销活动的退订率< 2%应用分析——若高于 3% 则暂停
每位订阅者每月带来的收入$3–$10计算方式:SMS 归因收入 ÷ 订阅者人数
总退订率每月 < 5%应用分析

最佳实践

  • 将营销同意与交易同意分开处理——选择退出营销 SMS 的客户仍应收到订单确认和发货短信;两者属于不同的同意类型
  • 每周营销 SMS 不要超过 2–3 条——SMS 是侵扰性最强的渠道;高频发送比其他任何渠道都更容易导致退订
  • 消息长度保持在 160 个字符以内,避免拆分成多条发送——表情符号计为 2 个字符,并会触发 UCS-2 编码,使 160 个字符的上限减半
  • 每条营销消息都必须包含 STOP 说明——大多数应用会自动添加;请确认说明确实存在
  • 上线前先注册 10DLC——美国运营商会拦截未注册的流量;通过 SMS 平台注册需要 1–2 周

常见问题

问题解决方案
运营商拦截消息发送消息前,通过你的短信平台完成 10DLC 品牌和营销活动注册
未遵守 STOP 请求专用短信应用会自动处理;对于自定义 Twilio,请配置入站 webhook
违反静默时段规定使用短信平台内置的静默时段设置;对于 Twilio,请根据时区实现定时发送
结账时复选框默认已勾选这违反了 TCPA——请立即将默认状态改为未勾选;这是法律要求,并非个人偏好
161 个字符的消息被拆分为多条短信发送前在服务器端统计字符数;购物车链接请使用 URL 缩短服务

相关技能

  • @email-marketing-automation
  • @cart-abandonment-recovery
  • @cart-recovery-sms
  • @push-notifications
  • @customer-segmentation

评论

支持 Markdown