Files
marketingskills/skills/sms/references/sequence-templates.md
T
Corey Haines d36433703b feat: add sms skill + 5 SMS platform integration docs (#307)
New skill: skills/sms/
- SKILL.md (336 lines, under 500 limit): strategy, when SMS beats email,
  compliance overview, sequence types, copy guidelines, platform selection,
  measurement, common mistakes
- references/compliance.md: TCPA, A2P 10DLC, EU GDPR, CASL, Australia,
  opt-in disclosure templates, STOP/HELP response templates, audit checklist
- references/sequence-templates.md: full copy templates with character
  counts for welcome, abandoned cart, browse abandonment, post-purchase,
  win-back, promotional, transactional, re-engagement, replenishment, VIP
- references/platforms.md: platform deep-dives across Klaviyo SMS,
  Postscript, Attentive, Twilio, Plivo, AudienceTap, Brevo, SimpleTexting,
  Customer.io
- evals/evals.json: 6 evals covering getting started, abandoned cart,
  TCPA compliance, opt-out diagnosis, A2P throughput, emoji segment cost

New integration docs:
- tools/integrations/twilio.md
- tools/integrations/postscript.md
- tools/integrations/attentive.md
- tools/integrations/plivo.md
- tools/integrations/audiencetap.md

Registry + marketplace wiring:
- tools/REGISTRY.md: 5 new entries + new SMS / Messaging category section
- .claude-plugin/marketplace.json: bumped to 2.1.0, SMS added to plugin description
- VERSIONS.md: sms 1.0.0 + 2.1.0 changelog entry
- README.md: skill table re-sorted via sync-skills.js, sms added to ASCII flow

All 41 skills pass validation. sync-skills.js is idempotent on current state.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-21 16:44:47 -07:00

6.9 KiB
Raw Blame History

SMS Sequence Templates

Full copy templates with character counts, timing, and segmentation logic for every major SMS flow.

Character counts shown assume GSM-7 encoding. Emojis force UCS-2 (70 chars/segment instead of 160). All templates use [Brand], [FirstName], and [short.link] as substitution tokens.


Welcome / Opt-In Confirmation

Send 1 — Immediate (after opt-in)

From [Brand]: Welcome! Here's your 10% off code: WELCOME10. Shop now: [short.link]
Reply STOP to opt out, HELP for help. Msg & data rates may apply.

~155 chars / 1 segment (just). Footer required on first send.

Send 2 — 24 hours later (optional)

From [Brand]: Don't forget your code WELCOME10 — expires in 48hrs. Top picks: [short.link]

~108 chars / 1 segment.

Send 3 — 7 days later (optional, conditional on no purchase)

From [Brand]: Last chance for 10% off with WELCOME10. Expires tonight at midnight: [short.link]

~107 chars / 1 segment.


Abandoned Cart (highest-ROI flow for ecom)

Send 1 — 30 minutes after abandon

From [Brand]: Hey [FirstName], you left something behind! Your cart's here: [short.link]

~95 chars / 1 segment.

Send 2 — 4 hours after abandon (if no purchase)

From [Brand]: Items in your cart are selling fast. Reserved for you for 24hrs: [short.link]

~98 chars / 1 segment.

Send 3 — 24 hours after abandon (if no purchase, discount allowed)

From [Brand]: Still thinking? Here's 10% off to seal the deal: SAVE10. Shop: [short.link]

~99 chars / 1 segment.

Notes:

  • Discount on Send 1 trains customers to abandon. Reserve for Send 2 or 3.
  • Exclude customers who abandoned <$X in cart value or repeat abandoners (gaming the discount).
  • Stop sequence on purchase, opt-out, or 48 hours elapsed.

Browse Abandonment

Send 1 — 1 hour after browse (single product or category)

From [Brand]: Still thinking about [product]? Take another look: [short.link]

~84 chars / 1 segment.

Notes:

  • Trigger only after meaningful browse signal (3+ product views or 2+ min on product page).
  • Exclude if a purchase happened on a different product.

Post-Purchase Flow

From [Brand]: Order #12345 confirmed! We'll text shipping updates here. Track: [short.link]

~95 chars / 1 segment.

Send 2 — Day of shipment

From [Brand]: Your order's on the way. Estimated delivery: [date]. Track: [short.link]

~92 chars / 1 segment.

Send 3 — Day of delivery

From [Brand]: Your order should arrive today! Questions? Reply or visit [short.link]

~88 chars / 1 segment.

From [Brand]: How are you liking your [product]? Share a review for 15% off next order: [short.link]

~108 chars / 1 segment.

From [Brand]: Goes great with your [product]: [related-item]. 10% off bundle: [short.link]

~99 chars / 1 segment.


Win-Back (Lapsed Customers)

Send 1 — 60-90 days after last purchase

From [Brand]: [FirstName], we miss you! Picks we think you'll love: [short.link]

~84 chars / 1 segment.

Send 2 — 14 days later (if no purchase)

From [Brand]: Come back for 15% off your next order: COMEBACK15. Expires in 7 days: [short.link]

~106 chars / 1 segment.

Send 3 — 14 days after Send 2 (final, if no purchase)

From [Brand]: Last chance — 20% off ends tonight: COMEBACK20. We'll stop texting if you'd rather: reply STOP. [short.link]

~130 chars / 1 segment.

Notes:

  • After Send 3 with no engagement, suppress for 90 days minimum.
  • After two full win-back cycles with no engagement, sunset (remove from active list).

Promotional / Campaign Sends

Flash sale (single send)

From [Brand]: 24-HOUR FLASH: 25% off everything with FLASH25. Ends midnight: [short.link]

~94 chars / 1 segment.

Limited drop / launch

From [Brand]: New drop just landed: [product-name]. Limited stock, members get early access: [short.link]

~115 chars / 1 segment.

Holiday / BFCM (2-send sequence)

Send 1 — Day of launch:

From [Brand]: Black Friday is LIVE — up to 50% off sitewide. Shop now: [short.link]

~92 chars / 1 segment.

Send 2 — Day of (or evening, expiration push):

From [Brand]: Last 6 hours of BFCM savings. Don't miss out: [short.link]

~73 chars / 1 segment.


Transactional / Account Notifications

Order confirmation

[Brand]: Order #12345 confirmed. Total $XX.XX. Track at [short.link]. Reply HELP for help.

Shipping update

[Brand]: Your order #12345 shipped! Track: [short.link]. ETA [date].

Delivery confirmation

[Brand]: Order #12345 delivered. Enjoy! Issues? Reply or [support-link].

Auth code (2FA)

[Brand] verification code: 123456. Expires in 10 min. Do not share.

Account alert

[Brand]: Sign-in from new device in [location]. Wasn't you? Secure: [short.link]

Re-Engagement / Reactivation (Subscribers Who've Gone Cold)

For SMS subscribers who haven't engaged with any send in 60+ days.

Send 1 — Soft reactivation

From [Brand]: We've missed you, [FirstName]! Here's what's new: [short.link]

~80 chars / 1 segment.

Send 2 — Confirm interest (if no engagement)

From [Brand]: Want to keep hearing from us? Reply YES to stay on the list, or STOP to opt out.

~98 chars / 1 segment.

After no reply: suppress for 60 days, then remove from active list. This protects opt-out rate metrics and reduces wasted spend.


Replenishment (Consumables Ecom)

For products with predictable usage cycles (skincare, supplements, coffee, pet food).

Send 1 — At expected reorder window (e.g., 28 days for a 30-day supply)

From [Brand]: Running low on [product]? Reorder in one tap: [short.link]

~73 chars / 1 segment.

Send 2 — 7 days later (if no purchase)

From [Brand]: Don't run out! 10% off your reorder of [product]: REFILL10 [short.link]

~92 chars / 1 segment.


VIP / Loyalty Members

Higher frequency, exclusive offers, early access — different cadence rules apply but quiet hours and STOP still required.

Early access

From [Brand]: VIPs get the new drop 24hrs early. Yours now: [short.link]

~72 chars / 1 segment.

Loyalty milestone

From [Brand]: You've reached Gold status! Your perks: 15% off + free shipping. [short.link]

~95 chars / 1 segment.


Segmentation rules across all flows

  • Suppress customers in active sequences from promotional sends (no double-tap)
  • Suppress opted-out subscribers from everything (platform handles this)
  • Frequency cap: max 46 marketing sends/week per subscriber (lower for newer subscribers)
  • Quiet hours: 9am8pm recipient-local time
  • Cool-off: After a discount-driven purchase, suppress promotional sends for 14 days