Analytics
Neuratel provides analytics at two levels: aggregate dashboards for tracking overall performance, and per-call post-call analysis that runs automatically after every conversation.
Dashboard Metrics
The analytics dashboard shows real-time and historical KPIs:
| Metric | Description |
|---|---|
| Total Calls | Number of calls in the selected period |
| Average Duration | Mean call length in seconds |
| Success Rate | Percentage of calls that completed successfully |
| Minutes Used | Total minutes consumed |
| Inbound / Outbound | Call direction breakdown |
| Active Calls | Currently in-progress calls |
Summary Endpoint
Retrieve aggregated analytics for a date range. Supports grouping by agent or phone number.
Code
Code
Code
Response:
Code
Parameters
| Parameter | Description |
|---|---|
startDate | Start date (YYYY-MM-DD) — required |
endDate | End date (YYYY-MM-DD) — required |
groupBy | agent or phoneNumber |
agent_id | Filter to a specific agent |
Volume Endpoint
Get call volume as a time series for charts and trend analysis.
Code
Code
Code
Response:
Code
| Parameter | Description |
|---|---|
interval | hour (max 7-day range) or day (max 365-day range) |
Post-Call Analysis
Every call automatically runs through AI-powered analysis when it ends. Results are attached to the call record and delivered via webhook events.
Summary
A concise paragraph describing what was discussed, the outcome, and any follow-up items identified.
Success Evaluation
Scores each call against a rubric defined in the agent's analytics config. The rubric type determines the scoring format.
Rubric Types
SuccessEvaluationRubric enum values (PascalCase):
| Type | Output |
|---|---|
PassFail | Binary pass or fail |
NumericScale | Score on a numeric range (e.g. 1–10) |
DescriptiveScale | Labeled score (e.g. poor / fair / good / excellent) |
LikertScale | Agreement spectrum (strongly disagree → strongly agree) |
PercentageScale | Score as a percentage |
Checklist | Multiple criteria, each independently pass/fail |
Matrix | Multiple criteria, each scored on a scale |
AutomaticRubric | AI infers the appropriate rubric from your criteria description |
Configure the rubric under analytics.post_call.analysisPlan — the same tree as summary and structured-data extraction. Use successEvaluationPrompt for the criteria (free-form text — the prompt determines what the LLM scores against).
Code
The verdict lands on the voice session as call_successful ("success" / "failure" / "unknown") with a free-text call_successful_rationale. See Post-call analysis for the access pattern and full field list.
Sentiment Timeline
Per-turn sentiment scoring across the entire conversation. Each turn receives a sentiment value from -1.0 (strongly negative) to 1.0 (strongly positive), producing a timeline that shows how the caller's mood changed during the call.
The overall sentiment trend (improving, declining, stable) is included in the call summary.
Structured Data Extraction
Extract specific fields from the conversation into structured JSON. Define a JSON Schema in the agent's analysisPlan and the analysis engine fills in the values from the transcript.
Extraction runs only when analysisPlan.enabled is true AND structuredDataSchema is non-empty. The optional structuredDataPrompt lets you steer the extraction (defaults to a generic instruction if omitted).
Code
After the call, the extracted data is available in the call record under extracted_data:
Code
The same extracted_data field appears in the outbound session_report and analysis_complete webhooks fired to your configured endpoint.
Latency Breakdown
Every call record includes a breakdown of processing latency across the voice pipeline:
| Metric | Description |
|---|---|
latency_ttft_ms | Time from end of caller speech to agent's first LLM token |
latency_ttfb_ms | Time from end of caller speech to first audio byte reaching the caller |
stt_turnaround_ms | Speech-to-text transcription time |
Use these metrics to identify bottlenecks in the pipeline — whether latency is coming from transcription, the language model, or voice synthesis.
Export
Analytics data can be exported from the Analytics section of the dashboard. Use the date picker to select a range and click Export to download as CSV.
Rate Limits
| Endpoint | Max Range |
|---|---|
/v1/voice-sessions/analytics/summary | 365 days |
/v1/voice-sessions/analytics/volume (hourly) | 7 days |
/v1/voice-sessions/analytics/volume (daily) | 365 days |
Best Practices
Daily — Check success rates and review any failed calls. Watch for latency spikes.
Weekly — Compare agent performance using groupBy=agent. Identify top performers and agents that need prompt tuning.
Monthly — Export data for reporting. Review sentiment trends and data extraction results to surface systemic issues.
Next Steps
- Calls and Sessions — Per-call details, transcripts, and recordings
- Agents — Configure the analytics section on your agents
- Monitoring — Real-time event streaming and active call visibility
