Skip to content
Community content. Review instructions before giving them to an AI agent — treat modules like open-source code.

SMS Notification Rules

Rules for sending SMS notifications correctly: reserving SMS for urgent/actionable messages, explicit opt-in with easy STOP, sender identification, the 160-character discipline, quiet hours, trustworthy link shortening, and cost awareness.

Mby @markdownersPublished August 21, 2026 · ~4 min read

0 downloads · Used by 0 stacks

SMS interrupts — it lands on a lock screen with a sound or vibration regardless of whether the recipient wants it right now, unlike email sitting quietly in an inbox. Every rule here follows from that one fact: SMS is the highest-cost-to-the-recipient channel available, and it should be reserved for messages that actually justify an interruption.

Only urgent or actionable content

  • Send SMS only for messages that are genuinely time-sensitive or require prompt action: a one-time passcode, a delivery arriving in the next hour, a security alert, an appointment reminder for tomorrow — not general updates, newsletters, or anything that could wait for email.
  • Ask, for every SMS before it ships: would the recipient be annoyed to be interrupted by this specific message right now? If the honest answer is yes, it belongs in email or in-app notification instead, not SMS.
  • Never use SMS as a secondary marketing channel just because deliverability is higher than email — higher deliverability for unwanted content is a liability, not an opportunity; it makes opt-outs and complaints correspondingly more likely and more damaging.

Explicit opt-in and easy STOP

  • Require explicit, affirmative opt-in specifically for SMS (not inherited from an email or account signup checkbox) — most jurisdictions and carrier rules require this, and beyond compliance, unrequested SMS generates disproportionate complaint rates compared to unrequested email.
  • Support and honor "STOP" (and common variants) as an immediate, unconditional opt-out with no additional steps — a delayed or non-functional STOP reply is both a compliance violation and a fast path to a carrier filtering the sending number entirely.
  • Confirm opt-in and opt-out with a short reply message so the recipient has explicit confirmation their preference took effect, not silent uncertainty about whether STOP actually worked.

Sender identification

  • Identify the sender by name in the first message of any conversation, or in every message if using a shared/shortcode number the recipient won't recognize — an SMS from an unrecognized number with no sender name reads as spam or a scam attempt and gets ignored or reported.
  • Keep the sender identity consistent across all messages in a relationship (same number or same named sender) — a recipient who gets messages from different numbers for the same service can't build the pattern recognition that makes them trust and open future messages.

160-character discipline

  • Write to fit within a single 160-character segment wherever possible — messages beyond that split into multiple segments (billed and often displayed as multiple messages), and long SMS reads as a channel mismatch; if the content needs more space, it likely belongs in email or a linked page.
  • Front-load the essential fact in the first sentence — assume the recipient reads only the first line in a notification preview before deciding whether to open the full message.

Quiet hours

  • Never send non-emergency SMS outside a reasonable local-time window (typically not before ~8am or after ~9pm in the recipient's timezone) — an SMS notification arriving at 3am for anything short of a genuine emergency damages trust in the sender regardless of the message's actual content.
  • Respect the recipient's actual local timezone, not the sender's — a scheduled send that's daytime for the business but the middle of the night for the recipient is still a quiet-hours violation.
  • Use a branded or recognizable short domain rather than a generic, unbranded shortener — an unrecognizable short link in an SMS is a top phishing red flag, and recipients trained to distrust random-looking links will ignore legitimate ones too.
  • Never send a link that requires the recipient to enter sensitive credentials on the resulting page without independent context confirming the message is genuinely from the expected sender — SMS phishing (smishing) specifically exploits the same trust this rule set is trying to build responsibly.

Fallback channels

  • Provide a fallback channel (email, in-app) for the same notification when SMS delivery fails or when the recipient hasn't opted in — don't let a message that matters (an OTP, a critical alert) depend on SMS alone as a single point of failure.
  • Let recipients choose their preferred channel per notification type where the product supports multiple channels, rather than defaulting everyone into SMS for everything.

Cost awareness

  • Remember that SMS has a real per-message carrier cost, unlike email — batch or deduplicate notifications where a single message can carry multiple updates instead of firing one SMS per individual event.
  • Monitor delivery cost against actual engagement value per notification type, and demote low-value notification types out of SMS and into a cheaper channel when data shows they're not earning the cost of the interruption.
Badge

Link back to this module from your own README.

Get it on Markdowners
[![Get it on Markdowners](https://markdowners.com/mdstack-badge.svg)](https://markdowners.com/m/markdowners/sms-notification-rules)

Comments (0)

Sign in to comment. Sign in

No comments yet. Be the first to add one.

Discussions about this module

No discussions about this module yet.

Start a discussion