Guides
A missed call is a lead who raised their hand. This guide shows how to build a missed-call SMS follow-up in Thoughtly — from detecting unanswered calls to sending the right text, handling replies, and staying compliant.
Last updated
A missed call is not a dead lead — it is a lead who raised their hand but could not connect. The window to recover them is short. Send a text too fast, too generic, or too often, and you push them toward your competitor. Send the right message at the right time, and you turn a missed connection into a booked meeting.
This guide walks through how to build a missed-call SMS follow-up workflowWorkflowAn automated, multi-step process — usually triggered by an event (form fill, new lead) and orchestrating one or more voice / SMS / email actions. in Thoughtly — from detecting the missed call to sending a personalized text, handling replies, and measuring whether it is actually working.
Before you start, make sure you have:
Not every unanswered call deserves a text. In Thoughtly, the On Call Completed trigger fires after every call ends and includes rich payload data — including call status, duration, variables captured, and voicemail detection.
Use the call status field to filter:
For most missed-call SMS workflows, you want to trigger on No Answer and optionally on Left Voicemail. Calls that ended normally — where the prospect picked up and had a conversation — should not receive a missed-call text.
In Thoughtly, open Tools → Automations and create a new automation.
Select Thoughtly → On Call Completed. Scope it to the specific agent or agents handling your inbound or outbound lead calls. You can select multiple agents or choose All Agents for organization-wide coverage.
Add a Conditions (If/Else) step to branch based on call status.
Add the Send SMS action.
If you are connected to HubSpot, Salesforce, or another CRMCRMThe system of record for leads, contacts, deals, and activity. Thoughtly reads from and writes to your CRM continuously., add an update step to log that a missed-call SMS was sent. This keeps your reps informed and prevents duplicate outreach. Store a timestamp in a contact attribute like last_missed_call_sms_at so downstream automations can check it.
Activate the automation when you are ready to go live. Draft mode automations never execute, even when trigger events fire.
The SMS body is where most teams go wrong. A generic "We tried to reach you" message reads like spam. Here is what works.
Here are templates that follow these principles, adapted for common Thoughtly verticals:
| Industry | Example Message |
|---|---|
| Insurance | Hi {Name}, this is {Agency} — I just tried calling about your coverage quote. Want me to call back at a better time? Reply with when works. |
| Home services | Hey {Name}, {Company} here. Tried to reach you about your {service} request. Still need help? Reply YES and I'll call you right back. |
| Education enrollment | Hi {Name}, this is {School}. I tried to connect about your enrollment inquiry. Text me a good time to call, or reply STOP to opt out. |
| Mortgage | Hi {Name}, {Lender} here. Just tried reaching you about your pre-qualification. Reply with a good time and I'll call you back. |
| Healthcare | Hi {Name}, this is {Practice}. We tried to reach you about your appointment request. Reply with a preferred time or call us at {number}. |
Notice every message includes four elements: (1) who is texting, (2) why, (3) one clear next step, and (4) opt-out language or implied consent acknowledgment.
Sending a one-off text is table stakes. The real conversion lift comes from handling what happens next.
Thoughtly supports agent-led SMS conversations — when the prospect replies, the same AI agent that would have handled the call picks up the text thread. The agent can:
To enable this, assign an SMS profile to your agent's phone number. Navigate to Phone Numbers in Thoughtly, select the number, and assign the agent under the SMS profile. The agent handles inbound SMS on that number using the same conversational logic you have built in the Agent Builder — adjusted for text with shorter responses and no vocal cues.
If you want the SMS to be purely notification-based with no two-way replies, use the Send SMS action in your automation without assigning an SMS profile. But for lead recovery, two-way is almost always the better play.
Timing matters more than copy. Send too fast and it feels like surveillance. Wait too long and the lead forgets they called.
Send the text within one to three minutes. They just tried to reach you — they expect a response. This is the highest-intent window you will get.
Wait two to five minutes. The prospect did not initiate contact, so an instant text after a missed outbound call can feel aggressive. A short delay reads as "We tried, here is another way to connect."
One missed-call text per contact per day, maximum. If you are running multi-attempt outbound campaigns, do not send a text after every unanswered dial. Use Conditions in your automation to check whether a missed-call SMS was already sent today — store a timestamp in contact Attributes and check it before sending.
Respect business-hours windows. Thoughtly supports dark windows for outbound workflows — configure them so your automation does not fire a text at 11 PM. If the missed call happens outside quiet hours but the text would land during them, add a time-based Condition or a Delay step to hold the message until the next business-hours window.
This is not optional. Sending unsolicited SMS to contacts who have not consented violates TCPATCPAUS federal law governing telemarketing calls and SMS. Thoughtly enforces consent capture, time-of-day windows, and DNC scrubbing automatically. and carrierCarrierA telecommunications provider that routes phone calls and SMS over its network. Twilio, Telnyx, and Bandwidth are the three most common in the AI voice space. rules, and it will get your numbers flagged or blocked.
Before you enable missed-call SMS, confirm the following:
For a deeper dive on TCPA compliance for AI outbound workflows, see TCPA and AI Outbound Calling: A Practical Compliance Checklist.
Sending the same generic message to every missed call. A missed inbound call from someone who submitted a form is very different from a cold outbound dial that went unanswered. Use Conditions to branch your SMS copy based on call direction, lead source, or campaign.
Texting contacts who already connected. If the call status is Completed with a three-minute conversation, the lead does not need a "Sorry I missed you" text. Filter on call status, not just call direction.
Stacking SMS on top of voicemail. If your agent left a voicemail and you also send a text within seconds, that is two follow-ups almost simultaneously. For voicemail scenarios, consider skipping the text or delaying it by 15–30 minutes with a Delay step.
Ignoring replies. If someone texts back and gets silence, you have burned the channel. Either assign an SMS agent profile for two-way conversations or set expectations in the text: "I can't receive replies at this number — call us at [number]."
No CRM logging. If your reps do not know a text was sent, they will call the lead and say "I'm following up" — not knowing the AI agent already did. Log every SMS to the CRM contact timeline.
Skipping 10DLC10DLC10-Digit Long Code — US carrier-mandated registration for A2P SMS. Without it, your business texts get filtered or blocked. registration. Your texts will get filtered by carriers. Registration is the price of admission for business SMS.
Track these metrics weekly after launching your missed-call SMS workflow:
| Metric | What It Tells You | Healthy Benchmark |
|---|---|---|
| SMS reply rate | Are prospects engaging with your texts? | 15–30% for warm leads |
| Callback conversion rate | Of texted contacts, how many connected on a call? | Track week-over-week trend |
| Opt-out rate | Are you texting too aggressively? | Under 2% |
| Time to reply | Is your send timing right? | Most replies within 5 minutes |
| Suppression rate | Is your consent collection working? | Low and stable |
Use Thoughtly Analytics and your CRM reporting to track these. If you are using the On Call Completed trigger with CRM update steps, you will have a clean data trail from missed call → SMS sent → reply received → call connected → outcome.
Yes. Thoughtly phone numbers support voice and SMS on the same line. Assign both an inbound or outbound profile and an SMS profile to the same number. This means the text comes from the same number that called — which builds recognition and trust with the prospect.
This depends on your disclosure and terms of service. If your inbound number's IVR or website form includes SMS consent language, you are likely covered. If not, consult legal counsel before enabling automated SMS follow-up for inbound callers. Thoughtly's suppression system blocks texts to contacts on your suppression list, but documenting and collecting consent is your responsibility.
Use contact Attributes to store a timestamp — for example, last_missed_call_sms_at. In your automation, add a Condition before the Send SMS step: if last_missed_call_sms_at is within the last 24 hours, skip the text. After sending, update the attribute with the current timestamp.
Booking links work well — they give the prospect a self-serve path to schedule without waiting for another call. Keep the URL short and use your own branded domain for links if possible. Avoid generic link shorteners that carriers may flag.
Yes. With an SMS agent profile assigned, Thoughtly's agent handles two-way text conversations using the same logic from the Agent Builder. The agent can qualify the lead, collect information, and book a meeting entirely over text — then log everything to your CRM.