How Fast Does Your AdWords Data Update? Find Out
Former Googler Daniel Gilbert shares a script from Brainlabs that calculates how recently your AdWords data has updated.
Ever wondered how up-to-date your AdWords data is?
Back in the old days, it could take up to a day for AdWords data to update. These days, there is a warning in the interface that says “Clicks and impressions received in the last three hours may not be included.” However, we’ve noticed that data is usually updated more regularly than that. In fact, we’ve built tools that respond in real time, so it’s important to know how recent that data is.
Some of the guys at Brainlabs (my employer) decided to run a little experiment that we’ve shared below. We poll the AdWords API repeatedly so we can actually know how recent the data is. We’ve open-sourced the code so you can run it yourself, but if you just want to know how real-time our AdWords data is, then check out the live graph we’re updating here.
At the time of writing, we have seen AdWords:
- Update every 2:43 minutes.
- Provide data from just 13:22 minutes previously.
That’s incredibly fast for such a complex system – hats off to the phenomenal AdWords API team! The methodology centers on pulling a report of today’s impressions segmented by hour, then comparing it against the data in the previous report. You can tell how often the API information updates by seeing when the impressions for the most recent hours increase. (We’re looking at data from our biggest accounts, so we can assume there are always impressions coming in.)
You can tell how recent the information is by seeing when the data for the current hour appears. If there are no impressions showing for 11 a.m. in the report downloaded at 11:13, but there are impressions for 11 a.m. when you download a report at 11:14, you know the data is between 13 and 14 minutes old.
If you have API access, you can test this with your own accounts. Below is a PHP script to record when the API’s data changes. It finds out how frequently your AdWords data is changing (to the nearest 30 seconds). To run the script, you’ll need PHP installed, and you’ll need the AdWords API client library (with authentication set up).
Before you run the script, change this part:
to have the path of the client library’s init.php file. You’ll also need to input your account’s time zone (so that the script can create dates correctly) and your account’s name (used for file names). You can also put in the account’s customer ID, although this is only necessary if you did not specify a customer ID when setting up the authorization.
You can change the timeToRun if you want, but note that this script is an easy way to use up your quota of reports! If you have basic API access, you can only download 1,000 reports a day, so you can’t run this script for more than nine hours. We suggest that if you have basic access, you only run it for a couple of hours so you can still download any other reports you want.
Also note that this process works on the assumption that the account always gets impressions — if you’ve got a smaller account, or if you run the script at a time when there’s not much traffic, it will not work as accurately.
The script should create four files:
- Log.csv contains all of the impression and click data, and at what time it was downloaded.
- Summary.csv lists the time at which the updates took place, and the time since the last update.
- Hour-data.csv reports when data for each hour first appeared, and when that hour’s data last changed. (Sometimes the data can change well after the hour has ended, if Google removes invalid impressions.)
- Results.txt is written at the end and gives the average, maximum and minimum time between updates, and the average age of the data (which is the average time between an hour starting and the hour’s data appearing in the reports).
(The script also uses tempdatastore.csv while it’s running, but should remove it at the end.)
We’ve found that the data tends to update every three minutes (although that can vary between 1:50 and 6:00 minutes), and that the data is around 14 minutes old. Is it the same for you?
Opinions expressed in this article are those of the guest author and not necessarily Search Engine Land. Staff authors are listed here.