Bango releases the Google Analytics of mobile?

Bango has launched a site analytics product. For organisations looking to accurately assess the traffic coming to their mobile site, Bango’s is a unique proposition.

The key is the session

Sessionisation, the task of identifying a set of page requests as having originated from a single user, is a major issue in web analytics. Some of the simplest things marketers like to know require requests to be grouped. For example, “where does the best traffic come from?” could be rephrased by a web analyst as “which campaign or search engine sent us the most people who eventually hit the checkout page?” To answer this question, the analyst needs to link your request for the first page (the one linked to by the search engine) to your later request for the checkout page. Other questions like “how long do people spend on the site?” or “how many products do people look at before they buy?” also require a session.

Approaches to sessions in web analytics

In the early, dark days of log file parsing for web analytics, sessions were identified using your IP address. This approach provides very poor accuracy as IP addresses are commonly shared. All of AOL’s users, for example, were hidden behind a single proxy. Not only are IPs shared, but a set of requests from a user could come from any number of IPs in the proxy’s range.

JavaScript-based analytics tools, of which Google Analytics is the most well known, avoid this problem by setting cookies as a more reliable source of identity. Look through your browser’s cookie store and you’ll see lots of entries called __utmz and __utma with a long number as a value. These are identifiers given to you by Google Analytics the first time you visit a site and read each subsequent time. Information about all requests you make from a site is collected and linked to this one identifier.

The cookie approach has a flaws as well. Delete your cookies and your ID is hidden. Move to another computer and you become another person. Vendors like to tie your cookie to a login name if they can. This provides a more persistent ID to base sessions on. The cookie might change, but if you log in again, they know it’s you once more. Google almost certainly uses your Google Account to centralise this data. These methods have been evolving for some time and are getting increasingly accurate.

Mobile web analytics

But JavaScript support the mobile web is minimal. High-end phones are beginning to offer it with the Webkit-based phones from Apple and Nokia (and soon many others via Andriod) leading the way. Until JS becomes reliably available (>95% of users), mobile web analytics vendors are left with the same tools that their forefathers had to use in the 1990s. The same problems are even exacerbated. Each mobile device is part of an operator network, so requests come from the small number of IPs in the operator’s gateway. No phones are directly connected to the internet, as modem and ADSL users are. It is possible to build cookie-based tracking without JavaScript, but this requires server-side code on the site being tracked. We could build that at MyMart, but what about all the other operators who are just serving static HTML. The solution would be useless for them.

This is a bit strange, the user’s phone number provides a perfect session ID. It is very persistent (I’ve had mine for about 9 years) and there is a good relationship between your number and you, unlike a cookie stored on an internet café PC for example. However, operators are extremely reluctant to give phone numbers out to any old mobile web site operator. The privacy concerns of their users must be respected.

Bango and the phone number

This is a unique opportunity for Bango. I’m not entirely familiar with their infrastructure, but they have long been able to map a mobile web browser to a phone number by requesting that information from the mobile operators. They then create a Bango ID for each phone, and this is used as the core of their analytics engine. It is obfuscated, they can provide it to site operators without risk of that operator using it to contact a visitor inappropriately.

Implementing their solution is simple, add an image tag to each page you want to track. This causes the visitor’s browser to request the image from Bango. In processing this request, Bango probably look up the visitor’s Bango ID so they have the session. The image tag passes information about the page being requested so Bango have that information as well. It’s still early days for this process and I’m sure getting it accurate will be hard work, but it seems like the foundations are there.

It will be hard for another organisation to mimic this approach as it leverages Bango’s position as a payment provider. AdMob is preparing an analytics product, but without accurate sessionisation it will be quite useless. I’m not familiar with their approach, but it will be hard for them to beat Bango unless they have something similarly innovative up their sleeve.

[Via Bango Newsroom on the mobile web]

Update, July 25, 14:30.

The day after I published this post I was invited to the AdMob analytics beta. Thanks guys!

AdMob’s product must be integrated with your server-side code. It uses a session ID you have assigned (cookie or url parameter, how is your problem) and captures other data from your system. This is really the only other way to get accurate sessionisation, but it does place a greater burden on implementers. I have not yet implemented AdMob analytics and frankly probably won’t since Bango’s product is up and running already. This ease of deploying Bango’s product is a significant advantage.

3 Comments

  1. Posted July 22, 2008 at 11:27 | Permalink

    Exceedingly good post; it’s almost layman ready really. Also a smart approach from Bango, they’re pretty much the only people who are in a position to do this, but whoever realised it must have had that Eureka moment feeling.

  2. Posted August 18, 2008 at 9:14 | Permalink

    Your blog is interesting!

    Keep up the good work!

  3. Posted January 10, 2009 at 12:04 | Permalink

    Interesting post. I’d have to say that neither solution works very well: comparing, say, page impressions on Bango, I’ve consistently seen a -30% to -40% discrepancy as against our raw apache logs and visitor and unique visitor numbers running at about a third of those reported by the admob ads reporting interface.

    Admob analytics has consistently agreed with apache on things like page impressions, but–in contrast to bango–reports 3 times the number of visitors as against the reporting on their own ad interface (Did every single user click each ad three times? I doubt it.) and unique visitors seems to have been derived by, I dunno, rolling dice? Worse still, the conversion from the ‘real-time’ dashboard to the next-day’s figures managed to lose a very large chunk (about 35%) of the tagged clicks.

    Neither Bango nor Admob have been able to provide any kind of convincing explanation of what is at work here (except to say ‘of course our numbers are accurate’ and ‘no, I can’t explain why they don’t agree with their numbers or our own numbers from another system’).

    In the end, I’d have to say that neither system is really there yet, and that both have miles and miles to go before they arrive at the level of accuracy of, say, Google Analytics.


One Trackback/Pingback

  1. Bango Bookmarks…

    Bookmarked your page with keywords bango!…

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*