Talkr AI
Voice Agent Builder

QA

QA node allows you to run post-call quality analysis on your Voice Agent runs

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, and USER_DETECTS_AI
  • Call quality score: 1-10 rating
  • Overall sentiment: positive, neutral, or negative
  • Summary: 1-2 sentence description of the call segment

You can replace the default System Prompt with your own instructions when you need domain-specific evaluation. Write the prompt as instructions to the QA reviewer LLM, and specify the JSON structure you want it to return.

For compliance use cases, for example:

You are a compliance reviewer for a debt collection workflow.

Review the transcript and return a JSON object with the following fields:
- "identity_verified": true or false — did the agent confirm the caller's identity before discussing the account?
- "options_presented": true or false — did the agent offer all three payment options before accepting a decision?
- "tone_score": 1-5 — how calm and professional was the agent throughout?
- "summary": one sentence describing the call outcome.

Be specific about what counts as a pass or a valid score. Include the exact behaviors you want the LLM to look for. Vague instructions produce inconsistent results across calls.

Additional settings

SettingDefaultWhat it does
EnabledOnToggle to disable QA without removing the node
Use Workflow's LLMOffWhen on, uses the same LLM configured for the workflow instead of the default QA model
Minimum Call Duration (seconds)15Calls shorter than this are skipped
Include Voicemail CallsOffWhen off, voicemail calls are skipped
Sample Rate (%)100Run QA on a percentage of calls rather than all of them

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

On this page