Report stats don't match the API stats


We are seeing discrepancies between the UI & API spend, click, and impression metrics.

The UI and the API match exactly when looking at the tweet level, but once you expand to the campaign level, the UI does not match the API data.

This post seems to be a similar issue - Report stats data not corresponding to data in the Ads UI

Can you please help?


Thanks for the question, @essenceglobal. Please provide some specific examples, including the values you expect to see and what values you’re actually seeing along with the actual Ads API requests you’re making.


Thanks for the response!

The first issue is that the UI doesn’t match at different levels of granularity for the same campaign & date range. Please see the screenshots below

Campaign Level

Tweet Level


@essenceglobal: Is there a second issue, too?

Is there also a discrepancy between API and UI?


Hey @juanshishido,

The main issue is that the numbers are different when switching between campaign and ad level. I believe I thought the API and UI didn’t match because I was looking at campaign level in the UI vs ad level in the API.



Thanks for the clarification, @essenceglobal. We’re looking into why this might be. No time estimate on this yet. Thanks for reporting.


@essenceglobal: Wanted to follow up here. We’ve identified the issue that was causing this discrepancy and have deployed a fix. All data should be accurate across various levels of the ads hierarchy starting on 2017-10-23 16:00:00 UTC. Data prior to this will not be updated. Thanks again for reporting this issue!


Thanks for digging into this and resolving @juanshishido!


Hi @juanshishido
I have seen the same issue for my campaign.

The UI shows a bit more spend amount(billed_charge_local_micro) than what I get from stats API. Here is the detail

Timezone in UI:

Date range in UI:


POST stats/jobs/accounts/:account_id
version: 2

Date range:
2018-03-05T16:00:00Z to 2018-03-06T16:00:00Z

Called twice for placement: ALL_ON_TWITTER and PUBLISHER_NETWORK

Could there be any reason for the discrepancy?


Hey @makoto87285361

Billing stats usually take upto 3 days to finalize so it’s best to request that data after the campaign flight dates if you require the accurate values.

See Analytics overview for more details


Hi @imit8me
thank you for the reply. So I am okay with billing stats not finalized, but need to see the (almost) exact billing amount from API as what I see on UI for business purpose. I see around 5-10% difference sometimes. Aren’t these numbers always synchronized?


Hi @makoto87285361! So you’re saying that even after 3 days after the campaign has ended you’re still seeing discrepancies between the UI and the API regarding the billing amount?