Google’s Universal Analytics: Issues with inflated data

Apr. 11, 2014 | by Nick Rhodes

With Universal Analytics (UA) finally out of beta, adoption rates look poised to soar. Boasting cross-device tracking, custom metrics, dimension widening and the measurement protocol (among other features), UA generates more insights than Sherlock Holmes can shake his pipe at. As with any new product, however, there are a few teething problems.

Recently a client approached us with an unusual problem: their visit data were behaving erratically, with historic values changing over the course of the day.

After fruitlessly searching for issues with the tracking code, we found that manually checking for data discrepancies on a regular basis would be time consuming and ultimately unfeasible. With this in mind, we decided to create a custom alert to monitor changes in traffic volume.

Unfortunately, the shortest time period available to custom reports in the UA interface is one day. This level of granularity was insufficient for the task at hand – the data issues were cropping up multiple times daily. To this end, we created our own custom alert using Google Sheets and the Google Analytics API.

Google apps script

We created a Google Sheet to house data for the View in question. This was populated programmatically with visit and unique visitor metrics for each of the past seven days.

This unearthed two interesting insights:

  1. Only visits were inflated. As these were interpreted as coming from the same visitor, unique visitors were unaffected.
  2. Only the previous day’s data were affected.


Using these insights we were able to establish a daily visit/visitor threshold (in this case 2) to determine whether data had been inflated. If the ratio was above this threshold, an email alert was send by the script.

We set the alert to run every 30 minutes and began accumulating data.

After a few days had passed, a trend began to appear. Each morning at roughly 5:30 GMT, the visits were duplicated. This tended to rectify itself within an hour, but occasionally lasted into the afternoon – well into the reporting period.

At this point we decided to contact Google directly; this was their response:

[Visit duplication] is a known issue with the reporting between both the GA and Universal Analytics. This problem happens because of the way back end systems process data as they are switching to Universal Analytics.

This is specifically happening because the system is still sending ga.js hits.

Unfortunately this is going to be expected behavior until Universal Analytics comes out of beta.”

Evidently this is a known issue, which Google are aware of and would be planning to fix in future releases. Google’s own guidelines state to allow 24-48 hours for data processing latency and this does fit within these bounds. With UA now out of beta, we asked if a fix was in the pipeline and were given a rough estimate of Q2 this year.

Universal Analytics is a powerful and flexible tool, containing multiple improvements over classic GA; nevertheless, there are still a few bugs that need to be ironed out. It is for this reason that we advocate running both platforms in tandem: always cross-check your data before making critical decisions.

Update 14/04/2014: Since publishing this article, Google have added an alert which appears when logging into Google Analytics highlighting this issue, and stating that they are working on a fix to be released as soon as possible.

Be Sociable, Share!

    Comments (2)

    • Edward

      We noticed this problem back in February, and also concluded it was a data processing blip with GA. However, i'm amazed it's taken Google 6 weeks to come clean about what is a fairly fundamental issue with a product trying to become more 'real time'Apr 15, 2014 07:04 pm

    • Analytics showing wrong numbers for yesterday’s visits | LittleData

      […] It then corrects itself a few hours later – so seems to be just a blip with the data processing at Google. Others have noticed the same problem. […]Apr 15, 2014 07:04 pm

    Please note: the opinions expressed in this post represent the views of the individual, not necessarily those of iCrossing.

    Post a comment


    Other Blogs We Recommend