# Mobile web analytics

Mobile web analytics studies the behaviour of mobile website users in a similar way to traditional web analytics. In a commercial context, mobile web analytics refers to the data collected from the users who access a website from a mobile phone. It helps to determine which aspects of the website work best for mobile traffic and which mobile marketing campaigns work best for the business, including mobile advertising, mobile search marketing, text campaigns, and desktop promotion of mobile sites and services.
Data collected as part of mobile analytics typically includes page views, visits, users, and countries, as well as information specific to mobile devices, such as device model, manufacturer, screen resolution, device capabilities, service provider, and preferred user language. This data is typically compared against key performance indicators for performance and return on investment, and is used to improve a website or mobile marketing campaign's audience response.
The majority of modern smartphones are able to browse websites, some with browsing experiences similar to those of desktop computers. The W3C Mobile Web Initiative identifies best practices to help websites support mobile phone browsing. Many companies use these guidelines and mobile-specific code like Wireless Markup Language or HTML5 to optimize websites for viewing on mobile devices.

## Background

Collecting mobile web analytics data has proven to be less straightforward than traditional web analytics due to a few factors. Traditional analytics software on a mobile website only provides data for HTTP requests coming from the most advanced mobile browsers; such as those found in the iPhone and other smart phones and PDAs, with no data on other mobile devices browsing the site. Additionally, common web analytics software that use server log parsing to associate different IP addresses with "unique visits" may fail to actually identify unique visitors. This is due to IP addresses from each mobile device originating from a gateway IP address of the network access provider.
Several dynamic server-side platforms are used to develop mobile sites. Server-side tracking code is recommended for more accurate analytics reporting.

## Platforms

* HTML/JavaScript
* WordPress Mobile Pack
* PHP
* .NET
* Java
* Python
* ColdFusion
* Ruby on Rails
* node.js/Connect
* TypePad Pro
Different tracking processes or mechanisms are available for each of the above platforms. For unsupported/HTML sites, the JavaScript pixel tracking mechanism is most commonly used.
Because mobile websites are typically open to access from any kind of network - fixed, Wi-Fi, cellular wireless, satellite wireless, etc. - a traditional web analytics solution could range from fairly accurate to mostly inaccurate, depending on where the HTTP requests are coming from.
In addition, mobile web analytics involve metrics and KPIs associated with mobile device information, such as model, manufacturer, and screen resolution. These data can usually be assembled by combining device identification information taken from special HTTP headers, such as user-agents, with device capabilities stored in a device information registry, such as WURFL. This method is not provided by traditional web analytics solutions because it is mobile web-specific.

## Problems with tracking
### Visitor identification

Visitor identification is the most important aspect of usable mobile web analytics and one of the hardest technical aspects to accomplish, primarily because JavaScript and HTTP cookies are so unreliable on mobile browsers. As a result, some mobile web analytics solutions only detect or count user visits per day. The best solutions provide reliable, persistent, and unique user identities, allowing accurate measurement of repeat visits and long-term customer loyalty.

### JavaScript page tagging

Javascript-based Page tagging notifies a third-party server when a page is rendered by a web browser. This method assumes that the end user browser has JavaScript capabilities and that JavaScript is enabled, though it is possible that neither may be true. At this time, most mobile web browsers do not support JavaScript sufficiently for this to work.

### HTTP cookies

HTTP cookies are commonly used to mark and identify visitors. Cookies are a standard capability for all desktop web browsers. With the prevalence of iPhones and Androids, HTTP cookies are now supported by most smartphones, because by default, iPhones and Android phones will accept browser cookies from web sites. As with desktop browsers, the mobile device user may choose to disable cookies.

### HTTP referrer

HTTP referrer information showing where a visitor navigated from is generally not provided for mobile web browsing. This is either because the device manufacturer has disabled sending such information in the HTTP request to save bandwidth during network usage, or because the mobile network operator's internet gateway removes or alters the original HTTP header due to the gateway software or use of mobile web transcoding software.

### Image tags

Handset caching mechanisms impact the use of images for page tagging. In some cases, image caching on handsets is performed regardless of any anti-caching headers output by the remote server.

### IP address

For desktop web browsing, the network address of the client machine usually gives some form of user identification and location. For mobile web browsing, the client IP address refers to the internet gateway machine owned by the network operator. For devices such as the BlackBerry or for phones using Opera Mini browser software, the IP address refers to an operator-owned internet gateway machine in Canada or Norway.

## Collecting mobile web analytics data

Collection of mobile web analytics data requires a different approach from collecting traditional web analytics data. A number of solutions are available and the best results are obtained through the use of more than one technology.

### Packet sniffing

Also known as tagless data capture or passive network capture, this technique uses a tap between the mobile users and the web server to capture the full content of the client-server exchange. Tagless data capture techniques are increasing in popularity for mobile web analytics because they capture all users, work with all devices and do not require JavaScript, cookies, server logs, or plugins.

### Image tags or beacons

Images can be forced to work for mobile web analytics, provided that the transmitted image is always unique. The level of information recorded from these transmissions depends on the architecture provided by the supplier, and not all image beacon solutions are the same.

### Link redirection

Link redirection is an important method of tracking mobile visitor activities. It is the only reliable way to record clicks from advertising, search, and other marketing activities. It also records visitors clicking on links to leave a site. This method helps address the lack of HTTP referrer information on mobile.

### HTTP header analysis

This tells you a number of basic facts about the mobile phone and the browser. It can be used in conjunction with a device database such as WURFL.

### IP address analysis

An operator database is used to identify operators and their countries based on the IP addresses of their internet gateway devices. IP addresses alone do not identify all operators and countries, as some operators share their mobile networks with virtual network operators (MVNO). Boost Wireless, for example, uses the Sprint network. Because these two operators have very different customer demographics, clear differentiation between operators is critical for good mobile marketing campaigns. Carriers may also share their mobile internet gateways, sometimes across multiple countries, and many change or add gateways on a regular basis.

### WAP Gateway Traffic logs

The WAP gateway logs are the mine of information that can be analysed to get relevant information as all the mobile traffic goes through these servers. There are companies like OPENWAVE which have tools that can analyse these logs and provide the information required.