Engagement metrics returned for organic tweet from analytics api differs from analytics dashboard

analytics

#1

A sync GET query to the endpoint /stats/accounts/18ce547v3py?end_time=2016-09-05T05%3A00%3A00Z&entity=ORGANIC_TWEET&entity_ids=772162428553482240&granularity=DAY&metric_groups=ENGAGEMENT&placement=ALL_ON_TWITTER&start_time=2016-08-29T05%3A00%3A00Z

end_time:2016-09-05T05:00:00Z
entity:ORGANIC_TWEET
entity_ids:772162428553482240
granularity:DAY
metric_groups:ENGAGEMENT
placement:ALL_ON_TWITTER
start_time:2016-08-29T05:00:00Z

Returns impressions with [0, 0, 0, 0, 0, 2123, 342], but the analytics dashboard shows engagement of 4,331 of that same tweet

Is there anything I can do to fix this? What am I doing wrong?


Organic Video Stats differ from ads.twitter.com, video analytics dashboard
#2

@CheapSteak: Thanks for the question! That’s definitely the correct way to make that request. The issue is that the UI shows the total number of impressions while the GET /1/stats/accounts/:account_id endpoint shows the impressions for the specified date range only.

In the UI, try changing the date range. For example, look at just September 3rd. You’ll notice that the number of impressions is the same as when the date range is 2016-08-29 through 2016-09-05.

Finally, please note that the end date in the UI is inclusive, but the end_time parameter in the API is exclusive (when specifying the time as midnight in the account’s timezone). In the UI, you should see eight bars; in the API response, you’ll only see seven elements in the array—it does not include September 5th.

Hope this helps!