How to check Usage & Statistics
Track WhatsApp usage and costs for each client and phone number (channel) through the 360dialog Hub, the Partner API, or webhooks. Usage can be checked regardless of whether the account is on Direct Payment or Partner Payment. Final charges always come from Meta’s monthly invoice.
There are multiple ways to check it:
Pricing is message-based. All in-month usage data is an estimate and may slightly differ from the final invoice issued by Meta.
View usage visually in the 360Dialog Hub
Clients and Partners can see a specific WABA usage in the Insights dashboard. To access it, click on Show details in the specific WABA you wish to use and select Insights on the top menu.
View your conversation history—including all Free and Paid conversations—to track volume over time. You can refine the data displayed by applying filters located in the top-right corner of the dashboard.

The Messages by Category chart displays the total volume of messages sent during your selected timeframe, broken down into specific Meta categories such as Utility, Marketing, Marketing Lite, and Service. Complementing this, the Messaging Costs graph illustrates your cost breakdown over time, allowing you to track daily expenditure fluctuations and identify which categories are driving your messaging budget. You can use the dropdown menus and filters to refine these views for more granular reporting.

Please be aware that the Approximate Charges displayed in the 360Dialog Hub is financially binding in its totality. The precise amount due will be determined by Meta's invoice at the end of the month, which will serve as the authoritative record of charges.
The Voice Calls section provides a comprehensive overview of your call performance and usage metrics. At a glance, you can monitor high-level KPIs such as Total Calls, Total Minutes, Average Duration, and the associated Total Cost for the selected period. Each metric includes a comparison against the previous cycle to help you identify trends in call volume or expenditure. For a more detailed analysis, the Calls: Inbound vs Outbound chart tracks call direction over time, while the Total Call Duration graph visualizes fluctuations in minute usage across specific dates. These tools allow you to manage your voice operations effectively and ensure your communication strategy remains cost-efficient.

Get usage programmatically per channel via API
Check the status and analysis of message usage separately using the following methods:
Get Channel Usage
Retrieve channel-level pricing analytics for messages delivered within a specific date range. This endpoint is aligned with Meta’s pricing structure and provides granular breakdowns.
GET https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/channels/{channel_id}/info/usage
Overview:
Returns current pricing breakdowns for a specific phone number (channel) within a WABA for any messages delivered within a specified date range.
Abstracts all Meta-specific complexity, so partners don’t need to implement or maintain their own integration with Meta’s pricing services.
Allows partners to proactively monitor pricing without needing direct integration with Meta.
Includes MM Lite messaging pricing and statistics
Query parameters
Use the following input parameters to filter and shape the usage data:
start_date*
UNIX Timestamp
The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date.
Example: 1672531200
end_date*
UNIX Timestamp
The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date.
Example: 1672531200
granularity*
string
The granularity by which you would like to retrieve the analytics. One of DAILY, HALF_HOUR, MONTHLY.
countries
list of ISO codes
The countries list for which you would like to retrieve analytics. If not provided, usage data will be returned for all countries you have communicated with.
Example: US, IN, BR
pricing_types
list
Filter by pricing type. Supported values: FREE_CUSTOMER_SERVICE, FREE_ENTRY_POINT, REGULAR.
pricing_categories
list
Filter by pricing type. Supported values: AUTHENTICATION, AUTHENTICATION_INTERNATIONAL, MARKETING, SERVICE, UTILITY, MARKETING_LITE.
metrics
list
Which metrics to include. Defaults to all.
Options: COST, VOLUME.
dimensions
list
Breakdowns you would like to apply to your metrics. If not provided, we return results without any breakdowns. Supported options: PRICING_CATEGORY, PRICING_TYPE, COUNTRY, PHONE, TIER, DIRECTION.
Dimensions explained
pricing_category– Message category (e.g., authentication, marketing, utility, MM lite).pricing_type– Message type:regular,free_entry_point(when the conversation is started by the user using CTAs like “Click-to-WhatsApp” or “Facebook WhatsApp CTA”) , orfree_customer_service(when the conversation was opened by the user by directly messaging you).country– Destination country of the user.tier- Applicable monthly pricing tier (e.g., 0:750000). More about pricing tiers
Request example
Response example
Rate Limits:
10 requests/hour per phone number (channel)
200 requests/hour per WABA
This endpoint offers data directly from Meta. Slight discrepancies may occur with existing info/balance endpoints due to varying usage collection and processing schedules.
Get Channel Balance
Use this endpoint to retrieve balance information only for a specific channel. Usage metrics returned by this endpoint are deprecated and will no longer be returned.
GET https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/channels/{channel_id}/info/balance
Path Parameters
partner_id*
string
ID of the partner
client_id*
string
ID of the client
channel_id*
string
ID of the channel
Query Parameters
start_date*
string
The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date.
Example: 1672531200
end_date*
string
The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date.
Example: 1672531200
granularity*
string
The granularity by which you would like to retrieve the analytics. Supported Options: DAY , MONTH
Defaults with MONTH if no value is provided in the request.
app_ids
To get usage accumulated from selected app_ids (e.g. ?app_ids=100,200)
Request example
Response example
Get Client Balance
Soft Deprecation Notice: Starting from July 1, 2025, the usage portion of this endpoint is soft-deprecated.
It previously returned client-level balance and usage data, but is now replaced by Get Channel Balance and Get Channel Usage.
GET https://hub.360dialog.io/api/v2/partners/{partner_id}/clients/{client_id}/info/balance
Path Parameters
client_id*
string
ID of the client
partner_id*
string
ID of the partner
Query Parameters
end_date
UNIX Timestamp
The end date in UNIX Timestamp (UTC). Returned data will be equal to or older than the specified date.
Example: 1672531200
start_date
UNIX Timestamp
The start date in UNIX Timestamp (UTC). Returned data will be equal to or newer than the specified date.
Example: 1672531200
granularity
string
The granularity by which you would like to retrieve the analytics. Supported Options: DAY , MONTH
Defaults with MONTH if no value is provided in the request.
Request example
Response example
Rate Limits:
5 requests per 30 seconds.
Via Webhook
Webhook events include message-delivery information and conversation context. You can build counters to estimate usage in real time based on those objects.
FAQ
1. Why are usage numbers different from my invoice?
Usage data in the Hub and API is based on near-real-time processing. Meta’s invoices are finalized monthly and may include adjustments. Minor differences are expected.
2. Does usage tracking work for both Partner and Direct payment accounts?
Yes. Usage tracking is available regardless of payment method. The only difference is who receives the invoice.
3. What happened to the Get client balance endpoint?
It has been deprecated and will no longer return data after July 1, 2025. Use Get channel balance for balance data and Get channel usage for usage analytics.
4. Can I still see usage per WABA or client?
Yes, but you’ll need to aggregate channel-level results from the Get channel usage endpoint across all channels within the WABA or client.
5. What is the best endpoint to use for billing dashboards?
Always use Get channel usage for accurate and detailed analytics. Combine it with Get channel balance for funds tracking.
6. Why are there different granularity options?
Granularity controls how data is grouped in time: use half_hour for high-resolution analysis, daily for regular monitoring, and monthly for summaries.
7. Are webhooks sufficient to calculate costs?
You can estimate usage from webhooks, but they are not authoritative. Always reconcile against Meta’s monthly invoice for final billing.
Last updated
Was this helpful?