LeadCounsel: the after-hours calls a law firm never loses again
Someone sitting in their car after a crash calls a personal-injury firm at 9pm — and gets voicemail. By morning, that lead has called a competitor. LeadCounsel answers in under two seconds, runs a structured motor-vehicle-accident qualification interview, pipes a fully-populated case record into HubSpot, and texts the on-call attorney within 60 seconds.
- Type
- Voice AI agent · legal intake
- Stack
- Vapi · n8n · HubSpot · Twilio · OpenAI
- Pickup
- Under 2 seconds, 24/7
- Attorney alert
- SMS within 60 seconds of a qualified call

The problem
Personal-injury leads are time-critical and expensive — and the calls arrive after hours: from a car after a crash, from a hospital waiting room, from a construction site. Today those calls go to voicemail, and the firm loses them by morning. The firm doesn't need a chatbot; it needs the one artifact that matters at 8am — a qualified, prefilled lead with a callback number.
Three layers, one morning artifact
The caller talks to the Vapi layer, which handles voice end to end — speech recognition, LLM conversation, and text-to-speech — picking up in under two seconds. It runs a structured interview where every question maps to an intake criterion: when did the accident happen (statute of limitations), were you at fault (liability), did you see a doctor (injury severity), does the other driver have insurance (collectability).
n8n is the decision-maker. It receives structured JSON from Vapi, evaluates it against the firm's intake criteria, and only then fires the three outputs: a prefilled HubSpot record, an SMS to the on-call attorney, and the full recording plus transcript into compliance storage. The firm only ever sees the bottom layer.
Deterministic qualification, not vibes
Qualification is a decision table, not a model's mood: a 4-part gate (statute, fault, treatment, insurance) extended with edge-case rows — minors, wrongful death, out-of-state incidents, multi-party or commercial vehicles, hit-and-run, uninsured-motorist coverage — where any flagged row short-circuits to human review instead of auto-qualifying. Thresholds like the statute window live in a Set node at the top of the workflow, tunable per firm and per state without touching code.
Callers who don't qualify are never hung up on. The agent politely captures their details, logs the call as non-qualified, and closes with bar-safe language — nothing wasted, no human time spent.
Compliance by design
The greeting includes a recording-disclosure line with separate wordings for one-party and two-party consent states. An emergency check runs before anything else — anyone seriously injured is redirected to 911 first. Audio and transcripts are retained for compliance review, and medical details never appear in the attorney SMS body: the text carries identifiers plus a link to the HubSpot deal. The agent never promises representation — “someone from the firm will follow up.”
Engineering notes
The Vapi-to-n8n contract is frozen first so the voice script and the orchestration can be built in parallel against the same payload shape. Webhook handling is idempotent — a retried delivery can't create a duplicate HubSpot deal or a second SMS. Version one targets HubSpot Free per firm via a private app token stored as an n8n credential, with legal-native CRMs (Filevine, Litify, MyCase) as future integrations.