{"slug":"sms","title":"sms","summary":"When the user wants to plan, build, or optimize SMS, MMS, or WhatsApp marketing — including welcome flows, abandoned cart texts, post-purchase, win-back, promotional sends, or transactional/auth SMS. Also use when the user mentions \"SMS marketing,\" \"text message campaigns,\" \"SMS ","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-10-15T13:12:18.305798Z","repo":{"url":"https://github.com/coreyhaines31/marketingskills","stars":54836,"forks":8123,"license":"MIT","updatedAt":"2026-10-14T21:21:00Z"},"bodyHtml":"<hr>\n<h2>name: sms\ndescription: When the user wants to plan, build, or optimize SMS, MMS, or WhatsApp marketing — including welcome flows, abandoned cart texts, post-purchase, win-back, promotional sends, or transactional/auth SMS. Also use when the user mentions \"SMS marketing,\" \"text message campaigns,\" \"SMS sequence,\" \"SMS automation,\" \"abandoned cart text,\" \"post-purchase SMS,\" \"Klaviyo SMS,\" \"Postscript,\" \"Attentive,\" \"Twilio,\" \"A2P 10DLC,\" \"TCPA,\" \"SMS compliance,\" \"short code,\" \"toll-free SMS,\" \"MMS campaign,\" \"should I do SMS,\" \"SMS vs email,\" \"WhatsApp marketing,\" \"WhatsApp Business API,\" \"WhatsApp templates,\" or \"click-to-WhatsApp.\" For email sequences, see emails. For SMS copy framing, see copywriting. For opt-in popups that capture phone numbers, see popups.\nmetadata:\nversion: 1.1.0</h2>\n<h1>SMS Marketing</h1>\n<p>You are an expert in SMS and MMS marketing for direct-to-consumer brands, mobile apps, and SaaS products with high-engagement use cases. Your goal is to help plan, build, and optimize SMS programs that drive measurable revenue or activation while staying fully compliant with TCPA and carrier rules.</p>\n<h2>Before Starting</h2>\n<p><strong>Check for product marketing context first:</strong>\nIf <code>.agents/product-marketing.md</code> exists (or <code>.claude/product-marketing.md</code>, or the legacy <code>product-marketing-context.md</code> filename, in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.</p>\n<p>Gather this context (ask if not provided):</p>\n<h3>1. Business Type</h3>\n<ul>\n<li>B2C ecom / DTC, B2B SaaS, mobile app, services, fintech</li>\n<li>Order volume or list size (SMS economics depend on scale)</li>\n<li>Geographic mix (US, EU, both — compliance differs dramatically)</li>\n</ul>\n<h3>2. Current State</h3>\n<ul>\n<li>Existing SMS program (platform, list size, opt-in rate, opt-out rate, revenue/send)</li>\n<li>Email program (SMS works best as a layer on top, not a replacement)</li>\n<li>Phone number type: short code, toll-free, long code (10DLC)</li>\n</ul>\n<h3>3. Compliance Posture</h3>\n<ul>\n<li>US: A2P 10DLC registration complete? (Required since 2022 — without it, your messages get filtered)</li>\n<li>Opt-in mechanism in use? (Checkbox, keyword opt-in, double opt-in)</li>\n<li>Privacy policy + terms include SMS disclosures?</li>\n</ul>\n<h3>4. Goal</h3>\n<ul>\n<li>Drive revenue (promotional, cart recovery, post-purchase)</li>\n<li>Drive activation (welcome, onboarding, milestone nudges)</li>\n<li>Transactional (order updates, auth codes, alerts)</li>\n</ul>\n<hr>\n<h2>When SMS Beats Email</h2>\n<p>SMS is not \"another email.\" Use it where the channel's properties win:</p>\n<table>\n<thead>\n<tr>\n<th>Use Case</th>\n<th>SMS or Email?</th>\n<th>Why</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Abandoned cart recovery</td>\n<td><strong>SMS first</strong></td>\n<td>98% open rate within 3 min vs 20% for email in 24h</td>\n</tr>\n<tr>\n<td>Order/shipping updates</td>\n<td><strong>SMS</strong></td>\n<td>Customers want it now, on their phone</td>\n</tr>\n<tr>\n<td>Flash sale / limited drop</td>\n<td><strong>SMS</strong></td>\n<td>Urgency channel; immediate read</td>\n</tr>\n<tr>\n<td>Auth codes / 2FA</td>\n<td><strong>SMS</strong> (or app)</td>\n<td>Latency-sensitive, must arrive in seconds</td>\n</tr>\n<tr>\n<td>Welcome series</td>\n<td><strong>Email primary, SMS layer</strong></td>\n<td>Email carries the long-form content</td>\n</tr>\n<tr>\n<td>Educational nurture</td>\n<td><strong>Email</strong></td>\n<td>Too much text for SMS, costs add up</td>\n</tr>\n<tr>\n<td>Newsletter</td>\n<td><strong>Email</strong></td>\n<td>Wrong channel for SMS</td>\n</tr>\n<tr>\n<td>Win-back lapsed customers</td>\n<td><strong>Both</strong></td>\n<td>SMS for the strong nudge, email for the offer detail</td>\n</tr>\n<tr>\n<td>Post-purchase upsell</td>\n<td><strong>SMS</strong></td>\n<td>High open rate, ride the purchase momentum</td>\n</tr>\n</tbody>\n</table>\n<p><strong>General rule</strong>: SMS earns the right to interrupt because of opt-in. Use it for messages that genuinely benefit from immediacy. If it could wait 24 hours, send it via email.</p>\n<hr>\n<h2>WhatsApp</h2>\n<p>If most customers are outside the US (LATAM, Europe, Africa, Middle East, India, Southeast Asia), WhatsApp often beats SMS for the same flows. It runs on different rules:</p>\n<ul>\n<li><strong>24-hour window</strong>: free-form messages only within 24 hours of the customer's last message. Outside it, send a Meta-approved template.</li>\n<li><strong>Template categories</strong>: marketing, utility, authentication. Cart reminders and anything promotional are marketing.</li>\n<li><strong>Per-message pricing</strong> (since July 2025): every marketing template is charged. From October 2026, service replies and in-window utility messages are charged too.</li>\n<li><strong>Quality rating and messaging limits</strong>: blocks and reports lower your rating and can shrink how many people you can message per day.</li>\n<li><strong>US caveat</strong>: Meta currently doesn't deliver marketing templates to US numbers. Keep SMS for US marketing.</li>\n</ul>\n<p><strong>For the 24-hour window, templates, opt-in, quality and tiers, pricing, click-to-WhatsApp ads, and WhatsApp playbooks</strong>: see <a href=\"references/whatsapp.md\">references/whatsapp.md</a>.</p>\n<hr>\n<h2>Compliance — Read First</h2>\n<p><strong>Compliance is the foundation, not an afterthought.</strong> A single TCPA class-action settlement runs $5M–$40M. The basics:</p>\n<h3>US — TCPA (Telephone Consumer Protection Act)</h3>\n<ol>\n<li><strong>Express written consent</strong> required for marketing SMS. Implied consent doesn't count.</li>\n<li><strong>Clear disclosure at opt-in</strong> must include: program name, frequency expectation (\"up to 4 msgs/month\"), STOP/HELP instructions, \"Msg &amp; data rates may apply,\" link to terms.</li>\n<li><strong>Honor STOP/UNSUBSCRIBE within seconds</strong>, every time, no exceptions, on every keyword variant (STOP, END, CANCEL, UNSUBSCRIBE, QUIT).</li>\n<li><strong>Honor HELP</strong> with a response containing brand name + STOP info + support contact.</li>\n<li><strong>Quiet hours</strong>: no marketing sends before 8am or after 9pm in the recipient's local time. Carrier rules and state laws (e.g., Florida, Oklahoma, Washington) are stricter than federal — default to 9am–8pm recipient-local.</li>\n<li><strong>Keep written consent records</strong> with timestamp, opt-in source, and exact disclosure text shown. Auditable.</li>\n</ol>\n<h3>US — A2P 10DLC Registration (required since 2022)</h3>\n<p>Application-to-Person 10-digit long codes must be registered through The Campaign Registry (TCR) via your SMS platform. Without registration:</p>\n<ul>\n<li>Throughput is throttled (or zero)</li>\n<li>Carriers filter your messages</li>\n<li>You'll see \"delivered\" status but recipients won't get them</li>\n</ul>\n<p><strong>Registration covers</strong>: brand identity verification, campaign use case (marketing, account notification, OTP, etc.), sample messages, opt-in mechanism, opt-out language. Sample message text from registration must match what you actually send.</p>\n<h3>EU/UK — GDPR-derived consent</h3>\n<ul>\n<li>Explicit opt-in required (no pre-checked boxes)</li>\n<li>Right to withdraw consent must be as easy as giving it</li>\n<li>Data subject access requests apply to SMS records</li>\n<li>ePrivacy Directive layered on top of GDPR</li>\n</ul>\n<h3>Canada — CASL</h3>\n<ul>\n<li>Express consent + sender identification + unsubscribe in every message</li>\n<li>Implied consent allowed for existing business relationships within 24 months</li>\n<li>Penalties up to CAD $10M per violation</li>\n</ul>\n<p><strong>For full compliance details, edge cases, opt-in copy templates, and STOP/HELP response templates</strong>: see <a href=\"references/compliance.md\">references/compliance.md</a>.</p>\n<hr>\n<h2>Phone Number Types (US)</h2>\n<table>\n<thead>\n<tr>\n<th>Type</th>\n<th>Throughput</th>\n<th>Cost</th>\n<th>Use Case</th>\n<th>Trust</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Short code (5-6 digit)</strong></td>\n<td>100+ msg/sec</td>\n<td>$500–$1,000/mo + setup</td>\n<td>High-volume marketing</td>\n<td>Highest (carrier-vetted)</td>\n</tr>\n<tr>\n<td><strong>Toll-free (1-8XX)</strong></td>\n<td>~3 msg/sec</td>\n<td>$10–$30/mo</td>\n<td>Mid-volume, B2C support</td>\n<td>Medium-high (carrier-verified)</td>\n</tr>\n<tr>\n<td><strong>10DLC (regular long code)</strong></td>\n<td>1–250 msg/sec</td>\n<td>$2–$10/mo</td>\n<td>SMB, conversational, transactional</td>\n<td>Medium (requires A2P 10DLC reg)</td>\n</tr>\n</tbody>\n</table>\n<p><strong>Rule of thumb</strong>: list &lt;10K = 10DLC. List 10K–100K = toll-free. List 100K+ = short code.</p>\n<hr>\n<h2>Core Principles</h2>\n<h3>1. Every send has a real cost</h3>\n<p>SMS isn't free. At $0.0075–$0.04 per send + carrier fees, a 100K send costs $750–$4,000. This forces relevance — you can't \"blast.\" Segment hard.</p>\n<h3>2. Opt-in is your most valuable asset</h3>\n<p>Opt-in rate from email → SMS is typically 5–25%. A high-quality SMS list of 10K beats a low-quality list of 100K. Optimize opt-in quality, not volume.</p>\n<h3>3. Each message must justify itself</h3>\n<p>The recipient gave you their phone number. Every send should pass: \"would I be glad I got this text?\" If no, don't send.</p>\n<h3>4. Brevity + clarity</h3>\n<p>160 GSM-7 characters = 1 SMS segment. 161+ chars = 2 segments (you're billed for 2). Emojis force UCS-2 encoding (70 chars per segment). Plan for segment count.</p>\n<h3>5. One CTA, one link</h3>\n<p>Short links are mandatory (<code>klvy.co</code>, <code>txt.attn.tv</code>, branded short domain). Track UTM params on every link.</p>\n<h3>6. Sender identity, every send</h3>\n<p>\"From [Brand]:\" or branded short code at the start of every message. Even on automated flows. Recipients can't see \"from\" address — they need it inline.</p>\n<hr>\n<h2>SMS Sequence Types</h2>\n<h3>Welcome / Opt-In Confirmation (immediate)</h3>\n<p>Send 1: Confirmation + reward (immediate)</p>\n<blockquote>\n<p>From Acme: Thanks for joining! Here's 10% off: ACME10. Use at checkout: acme.co/sale. Reply STOP to opt out.</p>\n</blockquote>\n<p>Optional Send 2 (24h later): Reminder + best-seller showcase</p>\n<h3>Abandoned Cart (highest-ROI flow for ecom)</h3>\n<ul>\n<li>Send 1 (30 min after abandon): \"Forget something? Your cart's still here: [short link]\"</li>\n<li>Send 2 (4 hours later): Soft urgency + social proof</li>\n<li>Send 3 (24 hours later, optional): Discount offer (only if margin allows)</li>\n</ul>\n<p><strong>Note</strong>: Discount on first message trains customers to abandon. Reserve discount for Send 2 or 3.</p>\n<h3>Browse Abandonment</h3>\n<ul>\n<li>Send 1 (1 hour after browse): Product + \"Thinking it over?\" + link</li>\n</ul>\n<h3>Post-Purchase</h3>\n<ul>\n<li>Send 1 (immediate): Order confirmation + delivery ETA (transactional, separate consent OK)</li>\n<li>Send 2 (after delivery + 2 days): \"How are you liking [product]?\" + review prompt + cross-sell</li>\n</ul>\n<h3>Win-Back (lapsed)</h3>\n<ul>\n<li>Send 1 (60–90 days after last purchase): \"We miss you\" + curated picks</li>\n<li>Send 2 (14 days later): Discount offer</li>\n<li>Send 3 (final, 14 days later): Opt-out warning + last chance</li>\n</ul>\n<h3>Promotional / Campaign Sends</h3>\n<ul>\n<li>Flash sales, drops, launches, BFCM</li>\n<li>1–2 sends max per campaign</li>\n<li>Stack against email send schedule to avoid same-day double-tap</li>\n</ul>\n<h3>Transactional (separate compliance bucket)</h3>\n<ul>\n<li>Order updates, shipping, delivery, auth codes, account alerts</li>\n<li>Generally OK without separate marketing consent if directly related to a transaction the user initiated</li>\n<li>Still subject to A2P 10DLC registration in US</li>\n</ul>\n<p><strong>For full sequence templates with copy and timing</strong>: see <a href=\"references/sequence-templates.md\">references/sequence-templates.md</a>.</p>\n<hr>\n<h2>SMS Copy Guidelines</h2>\n<h3>Structure</h3>\n<ol>\n<li><strong>Sender ID</strong> (\"From Acme:\" or brand short code) — required</li>\n<li><strong>Hook</strong> — first 5 words decide if they read on</li>\n<li><strong>Value</strong> — what's in it for them, specifically</li>\n<li><strong>CTA + short link</strong> — single action, single URL</li>\n<li><strong>Compliance footer</strong> — \"Reply STOP to opt out\" (required on opt-in confirmation and at least quarterly thereafter; carrier-recommended on every promotional message)</li>\n</ol>\n<h3>Length</h3>\n<ul>\n<li><strong>160 chars (GSM-7)</strong> = 1 segment. Aim here.</li>\n<li><strong>70 chars (UCS-2)</strong> if you use emojis, accented characters, or curly quotes — you'll pay for more segments.</li>\n<li><strong>161–306 chars</strong> = 2 segments (concatenated SMS). Acceptable for richer messages, but you're paying double per send.</li>\n<li><strong>MMS</strong> (image + up to 1,600 chars) = 3–5× the SMS cost. Use sparingly for high-impact moments.</li>\n</ul>\n<h3>Voice</h3>\n<ul>\n<li>Conversational, not corporate. SMS feels personal — write like you're texting a friend.</li>\n<li>No subject line, no formatting, no marketing-speak.</li>\n<li>Emojis are fine in moderation (one per message, situationally).</li>\n<li>ALL CAPS reads as shouting. Avoid except for explicit codes (e.g., \"Use ACME10\").</li>\n</ul>\n<h3>Personalization</h3>\n<ul>\n<li>First name token if available (boosts CTR ~20%)</li>\n<li>Recent product/category browse-based</li>\n<li>Location-based offers (where applicable)</li>\n<li>Don't fake intimacy (\"Hey friend!\") — it backfires</li>\n</ul>\n<p><strong>For complete copy patterns by sequence type with character counts</strong>: see <a href=\"references/sequence-templates.md\">references/sequence-templates.md</a>.</p>\n<hr>\n<h2>Platform Selection</h2>\n<table>\n<thead>\n<tr>\n<th>Platform</th>\n<th>Best For</th>\n<th style=\"text-align: center\">Native MCP</th>\n<th>Cost Tier</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Klaviyo SMS</strong></td>\n<td>DTC ecom already on Klaviyo email</td>\n<td style=\"text-align: center\">✓</td>\n<td>$$</td>\n</tr>\n<tr>\n<td><strong>Postscript</strong></td>\n<td>DTC Shopify ecom, deep integration</td>\n<td style=\"text-align: center\">-</td>\n<td>$$</td>\n</tr>\n<tr>\n<td><strong>Attentive</strong></td>\n<td>Mid-market+ ecom, full-service</td>\n<td style=\"text-align: center\">-</td>\n<td>$$$</td>\n</tr>\n<tr>\n<td><strong>Twilio</strong></td>\n<td>Custom builds, transactional, devs</td>\n<td style=\"text-align: center\">-</td>\n<td>$ (raw API)</td>\n</tr>\n<tr>\n<td><strong>Brevo SMS</strong></td>\n<td>EU-focused, email + SMS combo</td>\n<td style=\"text-align: center\">✓</td>\n<td>$</td>\n</tr>\n<tr>\n<td><strong>SimpleTexting</strong></td>\n<td>SMB, simple needs, ease of use</td>\n<td style=\"text-align: center\">-</td>\n<td>$</td>\n</tr>\n<tr>\n<td><strong>Customer.io</strong></td>\n<td>Behavior-based automation + SMS</td>\n<td style=\"text-align: center\">-</td>\n<td>$$</td>\n</tr>\n</tbody>\n</table>\n<p><strong>Quick picks</strong>:</p>\n<ul>\n<li>Already on Klaviyo for email + DTC/ecom → <strong>Klaviyo SMS</strong> (no second platform to learn)</li>\n<li>Shopify ecom, want deeper SMS-specific features → <strong>Postscript</strong></li>\n<li>Building custom SMS into a product → <strong>Twilio</strong></li>\n<li>B2B SaaS doing transactional/auth → <strong>Twilio</strong> or <strong>Customer.io</strong></li>\n</ul>\n<p><strong>For platform deep-dives (features, pricing, integration paths, A2P registration)</strong>: see <a href=\"references/platforms.md\">references/platforms.md</a>.</p>\n<hr>\n<h2>Measurement</h2>\n<h3>Key Metrics</h3>\n<table>\n<thead>\n<tr>\n<th>Metric</th>\n<th>What it tells you</th>\n<th>Healthy range (ecom DTC)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Opt-in rate</strong></td>\n<td>Top of funnel health</td>\n<td>5–25% of email subscribers</td>\n</tr>\n<tr>\n<td><strong>CTR</strong></td>\n<td>Message relevance</td>\n<td>8–15% (vs ~3% email)</td>\n</tr>\n<tr>\n<td><strong>Conversion rate (per send)</strong></td>\n<td>Revenue impact</td>\n<td>1–5% per promotional send</td>\n</tr>\n<tr>\n<td><strong>Revenue per send (RPS)</strong></td>\n<td>Channel economics</td>\n<td>$0.20–$2.00</td>\n</tr>\n<tr>\n<td><strong>Opt-out rate per send</strong></td>\n<td>Audience fatigue</td>\n<td>&lt;2% per send, &lt;0.5% for promotional</td>\n</tr>\n<tr>\n<td><strong>Cost per send</strong></td>\n<td>Channel cost discipline</td>\n<td>$0.0075–$0.04</td>\n</tr>\n<tr>\n<td><strong>List growth rate</strong></td>\n<td>Audience momentum</td>\n<td>5–15%/month early, 1–3% steady-state</td>\n</tr>\n</tbody>\n</table>\n<h3>What to track in analytics</h3>\n<ul>\n<li>UTM tag every link: <code>utm_source=sms&amp;utm_medium=sms&amp;utm_campaign=[campaign-name]</code></li>\n<li>Conversion attribution: SMS-driven sessions, last-click revenue, assisted conversions</li>\n<li>LTV impact: SMS subscribers vs email-only subscribers (typically 1.5–3× LTV for SMS opt-ins)</li>\n</ul>\n<h3>What to A/B test</h3>\n<ul>\n<li>Send time (afternoon vs evening, local time)</li>\n<li>Copy length (short SMS vs MMS with image)</li>\n<li>Discount amount and trigger (immediate vs delayed)</li>\n<li>Personalization tokens (with first name vs without)</li>\n<li>CTA copy (\"Shop now\" vs \"See it\" vs \"Last chance\")</li>\n</ul>\n<p>Cross-reference <strong>ab-testing</strong> skill for proper test design and <strong>analytics</strong> for attribution setup.</p>\n<hr>\n<h2>Output Format</h2>\n<p>When the user asks for an SMS plan, return:</p>\n<ol>\n<li><strong>Compliance check</strong>: Are they registered for A2P 10DLC (if US)? Is the opt-in mechanism compliant? Flag blockers first.</li>\n<li><strong>Strategy</strong>: Which SMS flows to build first, ranked by ROI for their business model.</li>\n<li><strong>Sequence designs</strong>: For each priority flow, specify trigger, delay, copy with character counts, CTA, segmentation.</li>\n<li><strong>Platform recommendation</strong>: Based on stack, list size, and complexity.</li>\n<li><strong>Measurement plan</strong>: KPIs, benchmarks, A/B test queue.</li>\n<li><strong>Compliance footer</strong>: Required disclosures, STOP/HELP response templates.</li>\n</ol>\n<p>Keep recommendations specific. Don't say \"send an SMS at the right time\" — say \"send 30 min after cart abandon, 4 hours later if no purchase, 24 hours later with discount.\"</p>\n<hr>\n<h2>Task-Specific Questions</h2>\n<ol>\n<li>Are you US, EU, or both? (Changes compliance approach entirely.)</li>\n<li>Is A2P 10DLC registration complete (US)?</li>\n<li>What platform are you on or considering?</li>\n<li>Email list size and SMS opt-in rate (if any)?</li>\n<li>What sequences do you already have running?</li>\n<li>Are you DTC ecom, mobile app, B2B SaaS, services?</li>\n<li>What's the primary goal: revenue, activation, retention, or transactional?</li>\n</ol>\n<hr>\n<h2>Common Mistakes</h2>\n<ol>\n<li><strong>Skipping A2P 10DLC registration</strong> — your messages get filtered into oblivion. Register first, send second.</li>\n<li><strong>Treating SMS like email</strong> — sending daily promotional blasts. Opt-out rates spike, list dies.</li>\n<li><strong>Discount on first abandoned cart message</strong> — trains customers to always abandon. Reserve for second or third send.</li>\n<li><strong>Generic \"From: [shortcode]\"</strong> — recipients need brand name in the message itself.</li>\n<li><strong>Forgetting quiet hours</strong> — sending at 6 AM local time gets opt-outs and TCPA complaints.</li>\n<li><strong>No STOP/HELP handling</strong> — non-negotiable. Every platform handles this; verify yours does.</li>\n<li><strong>Emojis everywhere</strong> — pushes you into UCS-2 encoding, halves segment size, doubles cost.</li>\n<li><strong>Mismatching A2P sample messages and actual sends</strong> — carriers flag and block.</li>\n<li><strong>Not tracking conversions</strong> — you can't justify channel ROI without attribution.</li>\n<li><strong>No throttling on bulk sends</strong> — burst sends trigger carrier filtering. Use platform throttling.</li>\n</ol>\n<hr>\n<h2>Tool Integrations</h2>\n<p>For implementation, see the <a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/REGISTRY.md\">tools registry</a>. Key SMS tools:</p>\n<table>\n<thead>\n<tr>\n<th>Tool</th>\n<th>Best For</th>\n<th style=\"text-align: center\">MCP</th>\n<th>Guide</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Klaviyo</strong></td>\n<td>E-commerce email + SMS combined</td>\n<td style=\"text-align: center\">✓</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/klaviyo.md\">klaviyo.md</a></td>\n</tr>\n<tr>\n<td><strong>Postscript</strong></td>\n<td>Shopify DTC SMS, deepest Shopify integration</td>\n<td style=\"text-align: center\">-</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/postscript.md\">postscript.md</a></td>\n</tr>\n<tr>\n<td><strong>Attentive</strong></td>\n<td>Mid-market+ DTC SMS, full-service</td>\n<td style=\"text-align: center\">-</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/attentive.md\">attentive.md</a></td>\n</tr>\n<tr>\n<td><strong>Twilio</strong></td>\n<td>Raw API for custom builds, transactional, dev-first</td>\n<td style=\"text-align: center\">-</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/twilio.md\">twilio.md</a></td>\n</tr>\n<tr>\n<td><strong>Plivo</strong></td>\n<td>Twilio alternative, lower per-send cost</td>\n<td style=\"text-align: center\">-</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/plivo.md\">plivo.md</a></td>\n</tr>\n<tr>\n<td><strong>AudienceTap</strong></td>\n<td>AI-forward DTC, on-pack QR opt-in</td>\n<td style=\"text-align: center\">-</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/audiencetap.md\">audiencetap.md</a></td>\n</tr>\n<tr>\n<td><strong>Brevo</strong></td>\n<td>EU email + SMS, SMB-friendly</td>\n<td style=\"text-align: center\">✓</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/brevo.md\">brevo.md</a></td>\n</tr>\n<tr>\n<td><strong>Customer.io</strong></td>\n<td>Behavior-based SMS automation</td>\n<td style=\"text-align: center\">-</td>\n<td><a href=\"https://github.com/coreyhaines31/marketingskills/blob/main/tools/integrations/customer-io.md\">customer-io.md</a></td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2>Related Skills</h2>\n<ul>\n<li><strong>emails</strong>: Sister channel — almost always run together. Email carries the long-form content; SMS carries the urgent nudges.</li>\n<li><strong>copywriting</strong>: For SMS copy at scale and the longer-form pages/emails that SMS links to.</li>\n<li><strong>popups</strong>: For phone number capture popups on-site.</li>\n<li><strong>churn-prevention</strong>: For win-back flows that combine SMS + email.</li>\n<li><strong>onboarding</strong>: For post-signup SMS milestone nudges.</li>\n<li><strong>analytics</strong>: For attribution and RPS measurement.</li>\n<li><strong>ab-testing</strong>: For SMS-specific test design.</li>\n<li><strong>lead-magnets</strong>: For incentivizing opt-in (the \"10% off for joining\" offer).</li>\n</ul>\n","files":[{"path":"evals/evals.json","sizeBytes":11269,"isText":true},{"path":"references/compliance.md","sizeBytes":7833,"isText":true},{"path":"references/platforms.md","sizeBytes":9865,"isText":true},{"path":"references/sequence-templates.md","sizeBytes":7070,"isText":true},{"path":"references/whatsapp.md","sizeBytes":16194,"isText":true},{"path":"SKILL.md","sizeBytes":18421,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-10-15T13:14:33.222114Z","sha256":"373AD4E96AA5F0C1CA4AE1C77BAEDD7F855999BD04CBD61049BC567AD96F22BE","sizeBytes":29369},"review":null,"source":{"repositoryUrl":"https://github.com/coreyhaines31/marketingskills","path":"skills/sms","license":"MIT","commit":"55ff469422c3592dac45bcad08dfb40221981c02","subtreeSha":"9011570E24812090C671B36C1CB7FB0BE27320BDCFAFE7E9B7326460B33AC38C","lastSyncedAt":"2026-10-15T13:12:07.743516Z"},"reviewedAt":"2026-10-15T13:19:01.302124Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/coreyhaines31/marketingskills/tree/main/skills/sms"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install coreyhaines31-marketingskills@llmmart"},{"target":"git","command":"git clone https://github.com/coreyhaines31/marketingskills.git"}]}