Video Tutorial
The QA node runs an LLM quality review on the call transcript after each conversation ends. Use it to score agent performance, flag compliance issues, and surface patterns across calls, without listening to recordings manually.
When it runs
QA Node runs post-call only. It is not part of the live call flow - it reads the completed transcript after the conversation ends. It has no edges and cannot connect to any other node in the workflow. This means QA does not affect call behavior. It only measures it.Where it sits on the canvas
Add QA Node anywhere on the canvas. It does not need to connect to other nodes - most builders place it off to the side to make clear it is a standalone evaluator. The node runs automatically for every eligible call once the workflow is published.Configuring the System Prompt
The core configuration is a single System Prompt: instructions to the reviewer LLM that describe how to evaluate each call. The LLM reads the transcript and returns a structured JSON result. The default prompt already covers common quality dimensions out of the box:- Tags: named issues detected in the transcript. The default tag set includes
DEAD_AIR,USER_FRUSTRATED,ASSISTANT_IN_LOOP,ASSISTANT_REPLY_IMPROPER,USER_NOT_UNDERSTANDING,HEARING_ISSUES,UNCLEAR_CONVERSATION,USER_REQUESTING_FEATURE,ASSISTANT_LACKS_EMPATHY, andUSER_DETECTS_AI - Call quality score: 1-10 rating
- Overall sentiment: positive, neutral, or negative
- Summary: 1-2 sentence description of the call segment
Additional settings
Viewing QA Results
After a call completes, the QA analysis runs automatically. You can view the results on the Run Detail page for each individual run. Open a run and scroll to the QA Analysis section. The result shows the full JSON output your QA System Prompt requested - tags, scores, sentiment, and summary for the default prompt, or whatever structure you defined.Common mistakes
Expecting QA to affect the live call. QA Node is read-only at runtime. It evaluates what happened; it does not change what happens. Connecting QA Node to other nodes. QA has no edges. Drawing a connection from QA to another node is not possible - edges will snap back when you try. Writing a vague System Prompt. βWas the agent good?β produces unhelpful scores. Define specific, observable behaviors and the exact JSON fields you want back. Not specifying output format. The LLM follows your instructions, but if you do not specify a return format, the output may be inconsistent across calls. Always describe the exact JSON structure in the System Prompt.Next Steps
Agent Node
Configure the conversation logic that QA evaluates.
Webhook Node
Send call outcomes to external systems after the call ends.
Context and Variables
Learn how
gathered_context is built during the call.End Call Node
Configure the final message before the call drops.