Customer Value Management · Agent

Call Quality Assessment Agent

Evaluate customer-care call transcripts against a deterministic nine-dimension Service Excellence Index and get an instant quality grade, full dimension breakdown, and AI-coached rewrite in one run.

Documentation Pricing
Type Autonomous agent Status Stable Pricing unit Per transcript Access Workspace

What it does

Call Quality Assessment Agent evaluates a call transcript against a nine-dimension Service Excellence Index. Paste or upload a transcript and the agent returns an overall score (0-100), a grade from A+ (Exceptional) to E (Critical), a per-dimension scorecard with observations, a sentiment delta, and an AI-generated coached rewrite focused on the lowest-scoring dimensions.

Leverage the Call Quality Assessment Agent to generate consistent, explainable, and auditable quality scores without building a custom scoring pipeline. The agent automatically identifies the transcript language, interaction category, and subcategory, delivering deterministic results that ensure identical transcripts always receive the same score.

Capabilities

  • Nine-dimension scoring. Scores Empathy & Tone (12 pts), First Call Resolution (14 pts), Compliance (12 pts), Active Listening (10 pts), Product / Plan Accuracy (12 pts), Solution Orientation (10 pts), Brand / Upsell (10 pts), Conversation Closure (10 pts), and Sentiment Delta (10 pts) - 100 points total.
  • Grade with coaching trigger. Returns a letter grade (A+, A, B, C, D, E) mapped to score bands. A/A+ calls are skipped for coaching; C/D/E calls are flagged for immediate review.
  • Multilingual support. Accepts English, Hindi, Tamil, Telugu, Kannada, Malayalam, Marathi, and Punjabi. Non-English transcripts are translated automatically; the original language is preserved in the report.
  • AI-coached rewrite. Produces an improved version of the transcript that targets the weakest dimensions, so supervisors can show agents exactly what a better call would look like.
  • Auto call-type detection. Identifies whether the call is a complaint, sale, upsell, retention, service query, or information request no pre-labelling required.
  • Sentiment delta. Measures how much customer sentiment improved from call open to call close, surfacing calls where the agent de-escalated or escalated the situation.

Inputs & outputs

Inputs

NameTypeRequiredDescription
transcript string / file required Plain-text call transcript with speaker labels on each line: AGENT: ... and CUSTOMER: ... (case-insensitive, colon or dash separator). Accepts .txt, .json, .html
language string optional Language code (en, hi, ta, te, kn, ml, mr, pa). Omit to let the agent auto-detect.
categoryId string optional Call category code: CMPL (Complaint), SALE (Sales), UPSL (Upsell), RETN (Retention), QURY (Service Query), INFO (Information). Omit to let the agent auto-detect from transcript content - the same detector /score uses.
subCategoryId string optional Sub-category code (e.g. CMPL.BIL for billing dispute, SALE.PST for postpaid new connection). Omit to let the agent infer.

Outputs

NameTypeDescription
callId string Unique identifier for this scored call, used to retrieve the full report.
assessment.overallScore number Total score out of 100.
assessment.grade string Letter grade: A+ (≥ 95), A (85-94), B (70-84), C (50-69), D (30-49), E (0-29).
assessment.factors array Nine dimension objects, each with label, score, maxScore, and observations (rule-level evidence).
assessment.decision string One of excellence_demonstrated (A+), excellence (A), meets_standard (B), coaching_recommended (C), below_standard (D), or urgent_review (E).
assessment.coachingPriority string none (A/A+ no rewrite generated), low (B), medium (C/D), or high (E).
coaching.improvedTranscript string AI-generated coached rewrite of the transcript, targeting the lowest-scoring dimensions.

Example tasks

Things you can hand this agent:

  • Score a 15-minute billing-dispute call from your contact centre to identify which dimensions pulled the grade below B.
  • Evaluate 100 calls from a new hire cohort and surface the bottom 10% by FCR and Compliance score for targeted coaching sessions.
  • Run a Hindi-language upsell call through the agent to get a coached English rewrite that supervisors can use for training.
  • Compare grade distributions across two customer-care circles to benchmark regional quality before a quarterly review.
Example scored call (illustrative)
{
  "callId": "cq_7f3a9b2c",
  "idempotent": false,
  "assessment": {
    "overallScore": 79,
    "grade": "B",
    "decision": "meets_standard",
    "coachingPriority": "low",
    "language": "en",
    "factors": [
      { "label": "Empathy & Tone",         "score": 10, "maxScore": 12 },
      { "label": "First Call Resolution",   "score": 11, "maxScore": 14 },
      { "label": "Compliance",              "score": 10, "maxScore": 12 },
      { "label": "Active Listening",        "score":  8, "maxScore": 10 },
      { "label": "Product / Plan Accuracy", "score":  9, "maxScore": 12 },
      { "label": "Solution Orientation",    "score":  8, "maxScore": 10 },
      { "label": "Brand / Upsell",          "score":  7, "maxScore": 10 },
      { "label": "Conversation Closure",    "score":  9, "maxScore": 10 },
      { "label": "Sentiment Delta",         "score":  7, "maxScore": 10 }
    ]
  },
  "newBalance": 875
}

Configuration

The agent requires no configuration to produce a scored result. The following optional parameters let you override auto-detection defaults:

OptionTypeDefaultDescription
lang string auto Force a specific transcript language instead of using character-script detection.
categoryId string auto Force a call category (CMPL / SALE / UPSL / RETN / QURY / INFO) instead of auto-detecting from transcript keywords.
subCategoryId string auto Force a sub-category (e.g. CMPL.BIL) in addition to the category override.
Data isolation. Transcripts are processed only to return your score and are not stored beyond the run or used to train any underlying model. Each run is workspace-scoped and never blended with another tenant's data.

Bulk & audio input

Bulk scoring

Click 📦 Bulk Upload above the transcript box to score many calls in one batch instead of running them one at a time:

  • .json - a single object, or an array of objects/strings (each item = one transcript). An item can carry its own categoryId, subCategoryId, or lang override; explicit per-item metadata always wins over auto-detection.
  • .zip - a folder of .txt / .html / .json files, including sub-folders (each file = one transcript; a .json file inside may hold many).

The Bulk Upload dialog caps a batch at 100 transcripts, 25 MB total. Each transcript is scored individually, and you get an average quality report plus a per-transcript breakdown with a downloadable ZIP of all reports. For programmatic access, POST to the BFF endpoint (/api/bff/v1/ai-agents/call-quality-manager/bulk-upload) with a transcripts array - the same 100 per request limit applies, still capped at 25 MB per request body. Credits for the whole batch are deducted upfront and refunded per item for anything that fails or comes back unscorable (junk, one-sided, or too-short input).

Audio upload

Click Upload Audio to transcribe a call recording instead of pasting text. Accepts mp3, wav, m4a, webm, ogg, and flac, up to 30 MB. The file is transcribed by AWS Transcribe with speaker diarization; the resulting AGENT: / CUSTOMER: transcript drops straight into the textarea for scoring. No credits are charged for transcription itself - only for the subsequent scoring run.

Limits & guardrails

  • Supported text input formats: .txt, .json, .html. Supported audio formats: mp3, wav, m4a, webm, ogg, flac (max 30 MB).
  • Supported languages: English, Hindi, Tamil, Telugu, Kannada, Malayalam, Marathi, Punjabi.
  • Bulk Upload: up to 100 transcripts / 25 MB per batch, whether via the dialog or the BFF endpoint directly.
  • The scoring engine is deterministic the same transcript always produces the same nine-dimension scores and overall grade.
  • A/A+ calls (score ≥ 85) return decision: excellence or excellence_demonstrated with coachingPriority: none; no coached rewrite is generated for these calls.
  • Junk, one-sided, or too-short transcripts (e.g. under ~12 words, or missing a real two-sided exchange) come back as unscorable: true with a reason instead of a fabricated score, and are never charged.
  • Failed runs (error before any score is produced) are not charged.
  • Transcript data is not persisted after the run completes and is never used for model training.