Home / Law Firms / Missed-call text-back for law firms (Twilio + Clio)
Law Firms problem 5: Calls to the office go unanswered
Missed-call text-back for law firms (Twilio + Clio)
When a call is missed, the caller gets a text within seconds. Existing clients get a personal 'we'll call you back' with no case details, and the call is logged on their open matter in Clio. New callers get your intake form, a booking link and a note not to text confidential details. Replies go to the attorney's phone; nothing is answered by a bot.
The problem
A caller who can't reach you will often call the next firm. The research measures how often firms don't pick up; it doesn't give a dollar figure, so neither do we.
- In Clio's 2024 secret-shopper study, only 40% of 500 US firms answered the phone and 48% could not be reached by phone at all. Source: Clio press release on the 2024 Legal Trends Report (PR Newswire) (Vendor press release)
- The same study found 67% of firms did not respond to an email inquiry. Source: Clio Legal Trends Report 2024, secret-shopper study (500 US law firms) (Industry report by a practice-management vendor; read via search excerpt)
Background reading: Can lawyers text clients? A checklist for automated texts · Is missed-call text-back legal? · Missed calls at a small law firm: a text-back that doesn't solicit
Who it's for
Solo and small US firms on Clio where the attorney is often in court or with a client and there's no full-time receptionist.
Tools and monthly cost
| Tool | Official price |
|---|---|
| Twilio US local phone number | $1.15 / month pricing page |
| Twilio US SMS, sent or received | $0.0083 per 160-character segment, plus carrier fees of about $0.0035-$0.005 per segment pricing page |
| A2P 10DLC registration (required to text US customers from a local number) | One-time: $4.50 brand + $15 campaign vetting (Standard brands add $41.50 vetting). Monthly campaign fee: $1.50 (low-volume mixed) to $10 (Standard) pricing page |
| Twilio voice, receiving calls | $0.0085 / minute (calls routed through Twilio also pay for the forwarded leg; see voice pricing) pricing page |
| Clio Manage (you probably already pay for it) | Starter from $49 / user / month; Core, Signature and Elite are quote-based. Make sure your plan includes API integrations (third-party guides report the entry plan does not). Matter stages are listed from Signature up pricing page |
| Resend (sends the emails) | Free: 3,000 emails / month, 100 / day. Pro: $20 / month for 50,000 pricing page |
| n8n | Community Edition: free if you self-host (you pay for the server). n8n Cloud: from EUR 20 / month (Starter) or EUR 50 (Pro) pricing page |
Example month: Illustrative arithmetic, not a measured result. Assume 60 missed calls a month: 20 clients get a 1-segment text, 40 new callers get a 2-segment text, and 20 replies are forwarded (about 2 segments in and 2 out each): 180 segments x $0.0083 = $1.49, plus carrier fees of about $0.50-$0.90. Fixed: $1.15 number + $1.50-$10 campaign fee. Total about $5-$14 a month plus n8n and voice minutes for calls routed through Twilio. One-time: $19.50 A2P registration. No AI model is used.
Setup
- Buy a Twilio local number and complete A2P 10DLC brand + campaign registration (texts to US numbers are blocked until it's approved).
- Route your office line through the Twilio number: an incoming call <Dial>s your office phone, and the Dial action URL points at the workflow's 'call' webhook. No-answer, busy and failed count as missed.
- Point the number's incoming-SMS webhook at the workflow's 'sms' webhook.
- Create a Clio API app with read access to Contacts and Matters and write access to Communications; connect it in an n8n OAuth2 credential.
- Set FIRM_SHORT, FIRM_TZ, office hours, ATTORNEY_PHONE, ATTORNEY_EMAIL, INTAKE_FORM_URL and BOOKING_URL from .env.example, then call your number from a second phone and let it ring out.
Download
Download law-firm-missed-call-text-back.zip
Contains the n8n workflow, the mock data, the test runner with its last results, and the mock server we tested against. All keys in .env.example are fake.
Test result
Every workflow was imported into n8n 2.45.4 and run end to end on our test machine. Clio Manage (API v4), Clio Grow, the email sender (Resend), Outlook (Microsoft Graph), Twilio and Stripe were replaced by a local mock server built from their official API docs: it checks the same request shapes and required fields, enforces Clio's rate limit (HTTP 429) and records every call. These recipes use no AI model; every decision is a written rule you can read. Matters, clients and invoices are invented. Nothing was sent to a real phone, client or account. The billing recipe was also run once against a real Stripe test-mode sandbox (no money moves).
10/10 scenarios passed (run 2026-10-27)
| PASS | M1 | Answered call is ignored |
| PASS | M2 | Existing client misses us during office hours: personal text (no case details), attorney email, call logged on her open matter in Clio |
| PASS | M3 | Same client calls again 2 hours later: no second text |
| PASS | M4 | New caller after hours: intake form + booking link, 'don't text details about your case', STOP line; nothing logged in Clio |
| PASS | M5 | Silent recording: workflow must stop and write nothing |
| PASS | M6 | Anonymous / blocked caller ID is skipped |
| PASS | M7 | Caller replies with a question: forwarded to the attorney's phone, no bot answer |
| PASS | M8 | Plain-English opt-out ('please stop texting me'): one confirmation, then no text after the next missed call |
| PASS | M9 | STOP keyword: no extra confirmation from us (Twilio sends it); START re-subscribes and texts resume |
| PASS | M10 | Clio rate limit (429) during the lookup is retried; the client still gets the text and the call is logged |
Actual output from the test run
Texts sent in scenarios M2 (client), M4 (new caller, after hours) and M8 (plain-English opt-out). Names and numbers are invented.
M2: to +15555550141: Hi Maria, this is Harbor Point Law - sorry we missed your call. We'll call you back shortly. Reply STOP to opt out. M4: to +15555550177: Hi, this is Harbor Point Law - sorry we missed your call. We'll call you back next business day. To get started: https://harborpointlaw.example/intake or book a consult: https://calendly.com/harborpointlaw-example/consult . Please don't text details about your case. Reply STOP to opt out. M8: to +15555550190: OK - you won't get any more automatic texts from Harbor Point Law. You can still call us at +15555550160.
Verified with mocks
- Answered, anonymous and non-US numbers are skipped; one text per caller per 12 hours.
- Clients (found in Clio by phone) get a personal text with no case details; the call is logged on their matter when they have exactly one open matter. Non-clients in Clio (for example an opposing party) get the new-caller text.
- Office hours vs after hours wording ('shortly' vs 'next business day').
- Every first text ends with 'Reply STOP to opt out.' STOP blocks future texts silently (Twilio confirms); a plain-English opt-out such as 'please stop texting me' gets one confirmation; START re-subscribes.
- Any other reply is forwarded to the attorney's phone; the workflow never answers questions.
- Clio 429 rate-limit replies are retried.
Documented from official API docs only
Built to the vendor's documentation but not run against a live account. Check these on yours.
- Twilio call-status and SMS webhook fields and the Messages API (from Twilio's docs; not run against a live Twilio account).
- Clio Manage API v4 contacts (query by phone), matters and communications (PhoneCommunication) fields (from Clio's developer docs).
Limitations
- The workflow does not yet validate the X-Twilio-Signature header (the HVAC call-scorecard recipe shows how; copy that check before going live).
- Texting clients may be subject to your state's advertising and confidentiality rules; keep texts free of case details, as this workflow does.
- The new-caller text is 2 SMS segments, so it costs twice a 1-segment text.
- These workflows are tools, not legal advice. Check your state's rules on advertising, client communication, trust accounting and texting before you turn one on.