There's a contact sitting in your list right now. They opted in eight months ago, clicked one link, and have ignored every text since. You're staring at them wondering: do I try to win them back, or do I cut them loose?
Here's the thing most people get wrong. That dormant contact costs you nothing to keep sitting in the database. Storage is free. They don't drag down your bill. The moment they start costing you is the moment you send them the wrong re-permission text — a clumsy "we miss you 😢" blast that trips carrier filters, generates spam complaints, and drags down delivery for everyone else on your number. That's when a harmless dead weight becomes an active liability.
Full disclosure: I work for Ready, an SMS platform. So I have a bias toward "send responsibly and keep your number clean." But the mechanics below are carrier reality, not marketing.
Why aging contacts are a deliverability problem, not just an engagement one
When you text a batch of people who haven't engaged in months, a predictable thing happens. A chunk of them no longer recognize your brand. Some changed numbers (recycled numbers get reassigned constantly). A few will reply STOP, and a few more will report the message as spam through their carrier's built-in reporting.
Carriers watch spam-complaint rate and STOP rate as signals of a bad sender. Cross a threshold and they start silently filtering your traffic — not bouncing it, filtering it. Your dashboard still says "delivered" while the message never reaches the handset. If you've ever wondered why a campaign showed 98% delivered but generated zero replies, this is often why. (There's a whole gap between "carrier accepted" and "carrier actually delivered" — I wrote about it in Your 98% 'Delivered' Rate Is Lying to You.)
So the risk with a stale list isn't "we waste a few segments." It's that one bad re-engagement blast poisons the reputation of the number your active customers rely on.
Step one: segment before you send anything
Do not treat "hasn't replied in 8 months" as a single bucket. Split it:
- Dormant but consented — opted in, no STOP, just quiet. These are your re-permission candidates.
- Never really engaged — opted in during a checkout or lead form, never opened a link, never replied. Weaker signal.
- Consent is questionable — you're not sure when or how they opted in, or the opt-in predates your current 10DLC campaign. Do not re-engage these. Suppress them. Asking someone to re-consent when you can't prove the first consent is worse than saying nothing.
The last bucket matters. Re-permission only works on people who legitimately opted in and went cold. It is not a laundering mechanism for a list you're unsure about.
Step two: warm the number, don't blast it
If your number has been quiet for a while, or you're re-engaging a big cohort at once, don't slam thousands of dormant contacts in one shot. Carriers read a sudden spike to a low-engagement audience as classic spam behavior.
Two things help:
- Drip it. Send in waves — a few hundred at a time — and watch the STOP and complaint signals before scaling the next wave. If the first wave comes back with a 6% opt-out rate, that's your answer; don't send wave two the same way.
- Don't lead with a link. A cold contact getting a message with a URL in it is one of the fastest ways to get filtered. The two-message warmup — identify yourself first, then send the link after a reply or in a follow-up — is what carriers reward. More on that mechanic in Putting a Link in Your Very First Text Is the Fastest Way to Get Filtered.
Step three: write a re-permission text that doesn't sound like a trap
The best re-permission message does three things in as few characters as possible: reminds them who you are, gives them a reason to stay, and makes leaving frictionless. That last part is counterintuitive — you make opting out easy because a clean STOP is far better for your number than a spam complaint.
Here's a template that keeps it to a single segment:
Hey [Name], it's [Brand]. You signed up for [thing] a while back. Want to keep getting [value]? Reply YES to stay, STOP to leave.
Count it. At ~140 characters with a short brand name, that lands inside one GSM-7 segment (160 chars). Add an emoji and you've blown it — a single 😊 drops the segment ceiling to 70 characters and turns your one-segment text into three. On a 5,000-contact re-permission send at Ready Standard ($0.02 + $0.0045 carrier = $0.0245/segment):
- One segment, no emoji: 5,000 × 1 × $0.0245 = $122.50
- Three segments with an emoji: 5,000 × 3 × $0.0245 = $367.50
Same message, $245 difference, for a decoration nobody asked for. The emoji tax is real, and on a re-engagement send — where you expect a lot of these to go nowhere — it stings extra.
Step four: let the platform handle the parts you shouldn't handle manually
A re-permission campaign generates a lot of inbound: YES replies, STOP replies, and the carrier-mandated keyword variants people actually type ("unsubscribe", "cancel", "quit", "end"). Handling that by hand is how consent gets messed up.
This is where the plumbing earns its keep. On Ready:
- STOP/opt-out is honored automatically, and the opt-out propagates so that contact can't be messaged again from any campaign — not just the one they replied to. (STOP isn't the only word that counts; the full carrier-mandated keyword set is handled, which most DIY setups miss.)
- Quiet-hours enforcement holds sends outside permitted local hours based on the recipient's area. Re-permission blasts have a way of firing at 9 AM your time, which is 6 AM for a chunk of your list — a great way to earn a complaint. Here's the timezone problem in detail.
- Automations can move a YES-replier into your active segment and everyone else into a suppression window, so you're not re-mailing silence.
You want the reply captured and acted on the instant it arrives, not batched into a spreadsheet you clean next Tuesday.
Step five: know the exact point where suppression beats another send
This is the part nobody writes down, so here's a concrete rule of thumb. After a single, well-formed re-permission attempt:
| Response | What it means | Action |
|---|---|---|
| Replied YES / clicked / re-engaged | Revived. Consent refreshed. | Move to active segment |
| No response, no STOP | Silent. One nudge is fair. | One follow-up after 3–5 days, then suppress |
| Replied STOP or variant | Explicit exit | Suppress permanently (auto-handled) |
| Bounced / undeliverable | Number likely recycled | Suppress — chasing it only hurts your reputation |
The trap is sending a third, fourth, fifth "we really miss you" text to people who've now demonstrated twice that they're gone. Every additional send to a non-responder raises your complaint rate and lowers the average engagement of your list — which is exactly the signal carriers use to throttle you.
The math on when to stop: if two waves to a cohort produce a re-engagement rate under ~5% and an opt-out/complaint rate creeping past 3–4%, you're spending money to actively damage deliverability. Suppress the remainder. A smaller list that engages beats a bloated one that gets filtered — every time.
A quick word on consent hygiene going forward
The cleanest re-engagement strategy is not needing one, and that starts at opt-in. Confirmed (double) opt-in loses you some sign-ups up front but leaves you with a list that goes cold far slower and complains far less. It's a genuine tradeoff, and I've argued both sides of it in Double Opt-In Loses You 20–30% of Sign-Ups Up Front — and Still Wins on Revenue Per Contact. If your dormant-contact problem is chronic, the fix is often upstream.
The practical takeaway
A dormant SMS contact is a stored possibility, not a cost. Keep them. But when you decide to wake them up:
- Segment first — only re-permission people whose consent you can stand behind.
- Drip it, and don't lead with a link.
- Keep the message to one segment; skip the emoji.
- Let STOP, quiet-hours, and suppression run automatically.
- Cap it at one nudge past the initial ask — then suppress and move on.
Do that and re-engagement stays a net positive. Skip it and you turn a harmless quiet contact into the thing that filters your whole number.
If you want to run a re-permission campaign with STOP handling, quiet-hours, and suppression automations doing the compliance heavy-lifting for you, you can start on Ready with 2,500 free credits — no card required — and sign up here when you're ready to test a first wave.