Reviewing Interactions (The Audit Tab)
The Audit tab is where you review individual evaluated interactions. This is the starting point for daily QA work: finding calls to review, examining scorecards, reading transcripts, and submitting feedback.
4.1 Navigate the Audit Tab
- Log in to Ema at app.ema.co
- Navigate to your Agent QA AI Employee
- Click the Audit tab
The list syncs automatically, and shows when it last did so (e.g. "Synced a few seconds ago" or "Not synced yet"). Click Refresh at any time to pull the latest data without waiting.
Each row in the interaction list displays:
| Field | Description |
|---|---|
| Interaction Details | Combined column showing the Interaction ID (resource_id, truncated to first 12 characters with # prefix) and the Agent ID displayed below it. A New badge appears next to interactions you haven't opened yet, and clears once you view that interaction's details. |
| Duration | Call length in seconds |
| QA Status | The current state of the evaluation |
| QA Score | Overall score out of 100. If the score has not been computed yet, it displays as "--". |
| Call Time (UTC) | When the call actually took place. Immutable -- unaffected by reruns. |
| Ingested At (UTC) | When the interaction was last processed by Ema. Normally the same as when it was first ingested, but a rerun (see 4.3 Rerunning an Interaction) updates this timestamp and floats the row to the top of the list, while Call Time stays fixed. |
| Feedback | Count of feedback items submitted on this interaction's scorecard. |
QA Status Values
| Status | What It Means |
|---|---|
| QA completed | Evaluation is finished and the score is available. Click in to see full details. |
| QA in progress | The system is still processing this interaction. Check back shortly. |
| QA failed | Something went wrong during processing. Ema automatically retries a failed or stuck interaction internally for a period before treating it as permanently failed. If it's still failed after that, use Rerun (4.3) to trigger it manually, or check audio quality, file format, or contact your administrator. |
A transcript missing an agent turn, missing a customer turn, or with no utterances at all cannot be evaluated. These rows show QA failed with a status-cell tooltip and, in the detail view, a "Could not evaluate this interaction" empty state naming the specific reason -- rather than being silently scored.
Failed Evaluation Error Types
When an evaluation fails due to a problem with the submitted input, the audit row surfaces a specific error type. These are terminal failures -- the system will not retry them, because the outcome cannot change without the caller supplying different input.
| Error Type | What It Means | How to Fix |
|---|---|---|
| EMPTY_TRANSCRIPT | The submitted transcript contains no content. | Re-submit with a valid transcript. |
| MISSING_REQUIRED_SPEAKERS | The transcript has no agent utterance, no customer utterance, or both -- there is no interaction to score. | Re-submit a transcript that includes both an agent and a customer turn. |
| EMPTY_AUDIO | The audio container carries no decodable audio payload (for example, a WAV file that is only its 44-byte RIFF header, or an Ogg/WebM-Opus container with no audio pages). Detected before the speech-to-text provider is called. | Re-export the recording and re-submit. |
| CORRUPT_AUDIO | The audio carries payload but the speech-to-text provider rejected it as undecodable. The same bytes are rejected on every attempt, so re-submitting the identical file will not succeed. | Re-export the recording from the source system and re-submit. |
Internal or transient backend failures (for example, a provider outage or a diarization error) are retried automatically and do not produce one of the error types above. If a row is stuck in QA failed with no input-problem error type, use Rerun to trigger it again.
4.2 Filters and Sorting
Available Filters
| Filter | Description |
|---|---|
| Date range | Custom date range (UTC). Presets: Today, Last 7 Days, Last Week, Last 14 Days, Last 30 Days, Last Month, or custom range. |
| Agent | Dropdown to select a specific agent or view all agents. |
| Interaction ID | Text search field to find a specific call by resource ID (UCID). |
| QA Status | Filter by evaluation status. |
| QA Score | Filter by preset score bands: Auto-fail (0), Low (1-50), Medium (51-75), High (76-100). |
Sorting Options
| Sort By | Directions |
|---|---|
| Call Date (default) | Ascending or Descending |
| Call Length | Ascending or Descending |
Pagination
Results display 25 interactions per page. Navigation uses token-based pagination.
4.3 Rerunning an Interaction
Permission required: Builder, Manager, or Admin.
A rerun re-processes an interaction end to end, re-transcribing/re-redacting and re-scoring, and refreshes the same row in place with new verdicts, score, insights, and CSAT. Use it after editing a rule, fixing a processing issue, or when an interaction is stuck or failed.
- In the Audit tab, select one interaction, or multi-select any number of them.
- Click Rerun.
- Confirm the warning -- rerunning deletes any existing feedback on the selected interaction(s). For a multi-select, the warning states how many of the selected interactions have feedback that will be lost.
The row shows "QA in progress" while it reprocesses, then settles with refreshed results. Its Ingested At timestamp updates to the rerun time (floating it to the top of the list), while Call Time never changes.
An interaction can only be rerun while its raw source (audio or transcript) is still within its data-retention window -- see 2. Setting Up Agent QA for retention periods. Interactions past that window are shown blocked/non-selectable, since there is no longer a source to re-process.
Rerun Ineligibility Reasons
When a row cannot be re-run, the audit row surfaces a reason. The server reports the first applicable reason in this order: row state (in progress or already queued) takes priority over attempt limit, which takes priority over retention.
| Reason | What It Means |
|---|---|
| IN_PROGRESS | The evaluation is currently running. Wait for it to finish before requesting a rerun. |
| ALREADY_QUEUED | A rerun for this row is already pending (the row is in a QUEUED state). |
| RETENTION_EXPIRED | The raw source file is past, or within the safety buffer of, its retention window. There is no longer a source to re-process. |
| ATTEMPT_LIMIT | The row has hit the consecutive failed user-rerun cap. |
4.4 Bulk Actions
Permission required: Builder, Manager, or Admin.
You can select multiple interactions in the Audit tab and act on them together. A Deselect all control clears the entire selection.
Bulk Archive
Select up to 50 interactions at once and click Archive to archive them in bulk. A warning is shown if any of the selected interactions have pending Continuous Learning (CL) data that will be lost when archived.
Bulk Delete
Select multiple interactions and click Delete to delete their evaluations in bulk. This calls the BulkDeleteQATranscriptEvaluation RPC and permanently removes the selected evaluation records.
Bulk delete is permanent. Deleted evaluation records cannot be recovered.
4.5 View Interaction Details
Click View Details on any interaction to open the detailed view.
Interaction Summary
A collapsible panel at the top of the detail view gives an AI-generated plain-language summary of the call -- what the customer needed, what the agent did, and how it was resolved. It uses the same PII redaction as the transcript, so sensitive values appear as redaction placeholders (e.g. a masked name or account number) rather than the original text.
Below the summary, the detail view has the following tabs:
Scorecard Tab
The core evaluation view. A summary bar at the top shows the total parameter count with Pass and Fail totals.
| Field | Description |
|---|---|
| Result | Color-coded badge: Pass (green), Fail (red), or N/A (gray) |
| Parameter name and category | What was being evaluated and which group it belongs to |
| Pass/Fail instruction | The evaluation criteria used for this parameter |
| Rationale | Detailed, plain-language explanation of why the parameter passed or failed. This is the most important field for understanding a score. |
| Verbatims | Click the "Source" accordion to expand and see the exact transcript excerpts used as evidence |
Transcript Tab
Full conversation text with speaker labels and timestamps. Every speaker the transcript carries is shown under its own label -- not just Agent and Customer. A supervisor, an IVR/bot segment, or an external third party (e.g. a hotel receptionist or interpreter brought into the call) appears under its own descriptive label. QA scoring still evaluates only the interaction's designated agent; every other party, including third parties, is treated as context.
The Transcript tab does not currently have an in-panel search feature.
Strengths Tab
Positive agent behaviors identified during the interaction.
| Field | Description |
|---|---|
| Driver | The positive behavior identified (e.g., "Clear policy explanation"), displayed as bold title |
| Category | The broader behavioral category (e.g., "Communication Skills"), displayed as a badge |
| Justification | Why this was identified as a strength, labeled "Key insight" in the UI |
Opportunities Tab
Areas for improvement with coaching recommendations.
| Field | Description |
|---|---|
| Driver | The issue identified (e.g., "Did not confirm customer understanding"), displayed as bold title |
| Category | The broader behavioral category (e.g., "Active Listening"), displayed as a badge |
| Justification | Why this was identified as an opportunity and what could have been done differently |
CSAT Mapping Tab
Shows Ema's AI-derived customer satisfaction analysis for the interaction, plus any customer-submitted survey feedback ingested via the CSAT Ingestion API.
| Field | Description |
|---|---|
| Overall Summary | A banner giving the overall sentiment (positive, negative, or neutral) and a plain-language summary of the customer's experience. |
| Customer Satisfaction | Sentiment badge, evaluation text, and supporting transcript verbatims (via the "Source" accordion) for how satisfied the customer appeared. |
| Issue Resolution | Sentiment badge, evaluation text, and sources for whether the customer's issue was resolved. |
| Call to Action | Sentiment badge, evaluation text, and sources for any follow-up action expected from the call. |
| Customer Behavior | Sentiment badge, evaluation text, and sources describing how the customer behaved during the call. |
| Customer Feedback | A survey score or comment submitted via the CSAT Ingestion API. A value of 1-5 renders as a star rating; anything else (including an emoji-derived score) renders as text. Hidden if no survey feedback was submitted. |
If Ema has not yet produced a CSAT analysis for this interaction, the tab shows an empty state instead of the fields above.
Additional Data
Agent Talk Time, User Talk Time, and Dead Air are computed in the backend and stored in the database, but are not currently displayed in the evaluation details drawer in the UI.
| Field | Description |
|---|---|
| Agent Talk Time | How much of the call the agent was speaking |
| User Talk Time | How much the customer was speaking |
| Third-Party Talk Time | How much any other speaker (supervisor, IVR/bot, external third party) was speaking. Only populated when the transcript carries a third party and per-utterance timestamps. |
| Dead Air | Periods of silence during the call |
4.6 Feedback Interaction Deeplink
When feedback is accepted on a scorecard parameter, the feedback item now links directly back to the source interaction in the Audit tab. Clicking the link opens the interaction's detail view, so you can navigate from an accepted suggestion straight to the call it came from without searching manually.