← All tools & templates
AutomationSome setup

Missed-Call Text-Back

When you miss a call, the caller gets a friendly text before they dial someone else.

A missed call is usually someone with a problem who'll try the next number. This texts them within moments, says sorry we missed you, and tells them when you'll call back, using your actual hours. It never texts the same number twice in a day, and it starts in test mode so the first messages go to your own phone.

The short lesson

Why it matters
A missed call is usually someone with a problem who will try the next number. A quick text keeps the conversation open.
Common mistake
Texting without permission or an opt-out. The workflow limits repeats to one a day, but confirming consent is up to you.
Next step
Once it works, add a booking link, or route replies to whoever answers texts.

What's inside

  • An n8n workflow that texts missed callers and tells you about it
  • Hours-aware wording: it says when you'll call back
  • A once-per-day limit per caller and a built-in test mode
  • The TwiML snippet for forwarding a Twilio number to your cell

What it does

  1. Your phone system tells the workflow that a call went unanswered.
  2. It ignores answered calls, and ignores a number it already texted in the last 24 hours.
  3. The AI writes a short, friendly text based on your hours and whether you're open right now.
  4. The text is sent. In test mode it goes to your own phone instead of the caller.
  5. You get an email saying who called and what was sent.

Set it up

Pick the path that matches the tools you already use.

  1. Download the workflow file from the box on this page. It's a .json file.
  2. In n8n, create a new workflow, open the ⋯ menu at the top right, and choose Import from file. Pick the file you downloaded.
  3. Nodes that need a login show a warning. Click each one and connect your own account. n8n walks you through it.
  4. Open the node called Settings and replace the sample values with yours.
  5. Copy the Production URL from the first node. In Twilio, create a TwiML Bin with the snippet below and set your Twilio number to use it. Replace the number with your cell and the URL with your n8n address.
  6. Leave testMode on until you've called yourself and the text looks right.
  7. Click Execute workflow to run it once with test data and check what comes out.
  8. When you're happy with it, switch the workflow to Active.

Using Claude, Gemini or another model instead of OpenAI? Delete the model node under each AI step, add the one you want, and drag its connector into the AI step.

New to n8n? Start here →

Forwarding a Twilio number to your cell

If you use Twilio, this TwiML makes the call ring your cell first. When it ends without an answer, Twilio tells the workflow. Replace the number with your cell and the address with your n8n address.

TwiML Bin

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Dial timeout="20" action="https://YOUR-N8N-ADDRESS/webhook/missed-call">+15555550123</Dial>
</Response>

Other phone systems work too. Anything that can send a web request with the caller's number and a status of no-answer, busy or missed to the workflow's address will do.

The AI prompt

This is exactly what the n8n file sends to the AI. Square brackets are the details your tool fills in for each customer.

Test it before it touches a customer

  • Leave testMode on. Call your Twilio number from a second phone, let it ring out, and check your test phone.
  • Call twice within a day. Only the first should get a text.
  • Call outside your hours and make sure the wording says when you'll call back.

Texts to customers need their permission and a way to opt out. Confirm yours before you turn the test mode off.

When you'll outgrow this

This is the right size for most small businesses. These are the signs it's time for something sturdier.

  • You have several locations or lines and need each to use its own hours, name and number.
  • You want the text conversation to continue: answering replies, booking, or routing to a person.
  • You need a record of consent and opt-outs kept with each customer.
When low-code stops and custom software starts →The blueprint behind this: the logic and the consent notes →

More tools & templates

Make it fill itself.

This runs on rows you type in. I can connect it to your CRM, phone and invoicing so the rows write themselves and the report is always current.