Score Voice Agent Call Leads
Analyze AI voice agent transcripts to extract entities, score leads by intent, sync structured data to your CRM, Google Sheets, and Slack.
Overview
Deploying AI voice agents is easy. Managing the mountain of unstructured transcripts they generate is hard. This workflow acts as the intelligence layer between your voice agents and your CRM — instantly analyzing every completed call, scoring the lead, and routing structured data exactly where your team needs it.
Ideal for high-ticket intake (legal recovery, real estate, B2B SaaS) where missing a crucial detail or delaying a callback costs thousands of dollars.
Key Features
- Universal Webhook Trigger: Catches call data and transcripts from major voice providers like Vapi, Bland AI, Retell AI, or custom Twilio setups.
- Precision AI Extraction: Uses strict JSON schemas to pull structured business intelligence from conversational transcripts.
- Automated Lead Scoring: The AI agent evaluates caller intent and assigns a lead score from 0 to 100.
- Smart Routing & Tagging: A code node evaluates the score. Leads scoring 80+ are flagged as urgent and tagged for priority follow-up.
- Multi-Channel Delivery: Pushes structured data to your CRM, logs it to Google Sheets, and fires a Slack alert simultaneously.
What the AI Extracts
| Field | Description |
|---|---|
| Call Outcome | Final status of the call (e.g., Appointment Booked, Voicemail, Escalated) |
| Lead Score | Buying intent score from 0–100 based on engagement and urgency |
| Extracted Entities | Specific business details like budget figures, legal claims, or timelines |
| Executive Summary | A concise 3-sentence summary so your team doesn't have to read the transcript |
| Caller Phone | The caller's phone number or ID |
Workflow Steps
- Webhook Trigger — Receives the post-call payload (transcript, caller info, duration) from your voice provider.
- AI Analysis Node — An AI agent parses the raw transcript, scores the lead, extracts key entities, and produces a structured JSON output.
- Routing Engine (Code Node) — Evaluates the lead score, flags urgent leads (80+), and prepares formatted payloads for your CRM and Slack.
- CRM Sync (HTTP Request) — Sends the structured contact data, tags, and custom fields to your CRM endpoint.
- Slack Alert (HTTP Request) — Posts a formatted lead notification to your team's Slack channel, including urgency flags and a call summary.
- Google Sheets Log — Appends a row with the phone number, outcome, lead score, extracted details, summary, and tags for reporting.
Prerequisites
- A Voice AI Provider — An active voice agent on a platform like Vapi, Bland AI, or Retell AI, capable of sending post-call webhooks.
- A Destination CRM — A webhook endpoint or API URL to receive the structured payload (e.g., GoHighLevel, HubSpot, Salesforce).
- A Slack Workspace — An Incoming Webhook URL to receive lead alerts.
- A Google Sheets Account — A connected Google account with a spreadsheet set up to log call data.
Setup Instructions
- Import the workflow template into your Needle workspace.
- Open the CRM Sync Node and paste your CRM's webhook endpoint into the URL field. Update the Authorization header with your API key.
- Open the Slack Alert Node and paste your Slack Incoming Webhook URL.
- Connect your Google Sheets account in the Google Sheets Node and point it to your target spreadsheet.
- Copy the webhook URL generated by the Trigger Node and paste it into your voice AI provider's "Post-Call Webhook" or "Server URL" settings.
Testing
To verify routing logic, send a POST request to your Needle webhook with a high-intent transcript:
{ "message": { "call": { "customer": { "number": "<phone-number>" }, "duration": "05:30" }, "transcript": "Caller: I need urgent help, I was scammed out of $150,000 yesterday and have all the wire receipts. Please have an expert call me back immediately to start the recovery process." } }
After sending, confirm that:
- Your CRM receives a new contact with the correct tags and custom fields.
- Your Slack channel shows a formatted alert marked as urgent.
- A new row appears in your Google Sheet with the extracted data.
Customization Tips
- Adjust the score threshold in the Code Node to change what counts as an urgent lead (default is 80).
- Add more tags in the routing logic to match your CRM's segmentation strategy.
- Swap the CRM endpoint to point at any system that accepts webhooks — no code changes needed beyond the URL and headers.
Want to showcase your own workflows?
Become a Needle workflow partner and turn your expertise into recurring revenue.
