Unlike WhatsApp, Messenger, and Instagram, SMS has no conversation window — see Conversation window — so most SMS delivery issues come down to message length, opt-outs, or carrier filtering rather than a policy block.
Character limits and segmentation
SMS is sent in fixed-size segments, and a longer message is automatically split into multiple segments and billed accordingly by Twilio:
A single emoji or a non-Latin character anywhere in the message drops the entire message into Unicode mode — cutting your per-segment limit roughly in half, not just adding a small overhead for that one character. If a message is unexpectedly split into far more segments than you’d estimate from character count alone, this is almost always why.
Message never arrives
- Check for opt-out. If the recipient has ever replied STOP (or a local equivalent) to your number, carriers block further messages to them until they opt back in — this happens at the carrier level and will not show as a Heyy error.
- Check carrier filtering. Messages that look like spam — excessive links, certain flagged phrases, very high send volume from an unregistered number — can be silently filtered by carriers rather than bounced with a clear error.
- Check compliance registration. In the US particularly, an unregistered 10DLC number can have its throughput throttled or filtered. See Common issues.
- Check delivery status on the message itself — see Message actions.
Keep messages short and avoid unnecessary links or promotional-sounding phrasing in transactional SMS — both segmentation cost and carrier filtering risk go up together as a message gets longer and more marketing-like.