Resolving call log and call usage discrepancies
Learn how to align your records by understanding that call logs track every event while usage records only reflect billed minutes rounded to the nearest increment. This reconciliation ensures your internal data matches Twilio billing.
You can use this guide to manage your account's health and costs for all use cases.
See Related reference documentation to learn more about the API resources used in this guide.
To find call logs in Twilio Console, go to Monitor > Logs > Voice > Calls. You can also find them in the legacy Console. The legacy Console Usage page shows your account's usage totals.
In order to match call logs with Usage API, keep these points in mind:
- The
countin the usage API is the number of events (# of calls, in this case) - The
usagereturned via the Usage API is the total number of BILLED minutes per call, rounded to duration defined by the pricing model ( minimum and round quantity ) - In the
usageconsole, call usage is displayed separately as "voice minutes" and "client minutes". Since client calls are a separate entity in the usage API definition, you will need to get the usage for calls and client calls separately. - Not all calls listed in call logs are billed. For example, calls with status :
Failed, orBusy, are not billed and the usage API will not add the usage from those calls. - Internally, the date parameter defaults to midnight. When querying the call logs for a month, use
< 1st day of next monthas the end boundary (do not use<= last day of this month).
| Parameter | Usage (API and Console) | Logs (API and Console) | How to Reconcile Usage and Logs |
|---|---|---|---|
| Duration of Calls | Measured in minutes | Measured in seconds | Round up duration in your call logs to the nearest minute to match the usage logs. |
| Voice vs. Client Calls | Client and Voice calls are treated separately | Client and Voice calls are merged | Add your voice and client usage minutes together to match the combined logs. |
| Call Billing Time | The start date of the call is the date we use to attribute it | N/A | If a call begins in one month and ends in another, usage would be attributed to the first month.. |
| Call Time Zone | Calls timezone is always in UTC | Calls will be in UTC or your local time zone | If your logs are in your local time zone, normalize them to UTC to match usage. |
This guide covers a feature that can support the following use cases:
You can use the reconciliation methods in this guide to verify that critical automated alerts, such as emergency weather closings or system failure pages, actually reached their destinations. Cross-referencing internal dispatch times with Twilio's call logs allows you to detect undelivered notifications or unexpected routing delays.
To learn more advanced features that you can use with voice notifications, see Voice notifications.
You can use the reconciliation methods in this guide to align user interaction drops with specific points in your automated call flows. Auditing log discrepancies helps isolate whether call terminations during IVR steps (such as confirming an appointment) are due to user behavior or technical connection drops.
To learn more advanced features that you can use with voice self-service automation, see Voice self-service automation.
You can use the reconciliation methods in this guide to resolve differences between your internal call queue statistics and your Twilio usage invoice. Tracking down discrepancies ensures accurate metrics for agent handle times, abandoned calls, and inbound trunk utilization.
To learn more advanced features that you can use with inbound call centers, see Voice inbound call centers.
You can use the reconciliation methods in this guide to audit agent productivity and ensure compliance across your outbound campaigns. Auditing call duration logs prevents billing errors related to answered calls versus answering machine detections.
To learn more advanced features that you can use with outbound call centers, see Voice outbound call centers.
You can use the reconciliation methods in this guide to analyze duration mismatches between your AI conversational layer and the underlying telephony carrier. This helps ensure that the virtual agent is not holding lines open unnecessarily or dropping sessions before completion.
To learn more advanced features that you can use with virtual agents, see Voice AI agents.
You can use the reconciliation methods in this guide to track down differences between CRM-reported talk tracks and raw carrier logs. Aligning these data points gives sales leadership accurate reporting on cold-calling connection rates and overall team output.
To learn more advanced features that you can use with sales dialers, see Voice sales dialers.
You can use the reconciliation methods in this guide to double-check marketing attribution and campaign ROI. Resolving log discrepancies ensures that the inbound phone leads attributed to specific advertisement numbers match your actual platform billing.
To learn more advanced features that you can use with call tracking, see Voice call tracking.
You can use the reconciliation methods in this guide to match carrier-grade CDRs (Call Detail Records) from your on-premise IP-PBX with Twilio's platform logs. This bridges the visibility gap between your local hardware and public switched telephone network endpoints to pinpoint exact billing boundaries.
To learn more advanced features that you can use with PSTN connectivity, see Voice PSTN connectivity.
You can use the reconciliation methods in this guide to guarantee that audio media payload durations exactly match your AI transcription API logs. Resolving these discrepancies guards against overpaying for processing time on dead air or incomplete audio fragments.
To learn more advanced features that you can use with AI or ML transcription, see Voice AI and ML transcription.
Explore the following guides to build on what you've learned in this guide:
- Retrieve call logs: Learn how to programmatically fetch call records to compare against your usage data.