The Shifting Sands of Device Identifiers

The Shifting Sands of Device Identifiers

Or, The Half-Life of User Agents

User Agent Half Life

One of the key identifiers that WURFL uses to detect devices is the user agent (UA) string. This string morphs based on the device, OS version, browser version and several other dimensions. Over the lifecycle of a device, that device’s user agent will change – especially if you are gadget geek who upgrades, experiments with alternate browsers, or generally fiddles around with his/her phone or tablet.

So, we knew UA string change, but how quickly do we see the universe of active user agents change? If we see a user agent this month, what are the odds that we will see it again unchanged in the following month?  I liken this probability to the half-life of radioactive particles that decay over time – sometimes quickly, and sometimes slowly.  (Disclaimer: I used to work in the nuclear energy industry). This behavior also reflects how difficult it is to stay up to date with user agents.  Just because you have the universe of user agents locked down this month does not mean you will be able to correctly identify most of them with the same UAs in a few months.

Filip Sufitchi and I looked back at the historical data.  Ok, actually Filip did all the hard analysis.  I just asked the questions. We plowed through millions of UA strings.  We identified the universe of unique UAs in July 2012.  It’s a big number. Then, we analyzed subsequent months (August 2012 – July 2013) to see if those original UAs showed up again.  The result: in the next month, only 74% showed up again.  Or, conversely, 26% of UAs churned away. A particular UA may show up again in later months, but in aggregate, the user agent universe is in continuous churn.


User Agent Half Life 2

This analysis was a bit of a surprise to us.  We knew that UAs changed, but we did not realize how quickly. Over time, if you are using that original set of UAs to identify devices, then it will decline in effectiveness pretty fast.  Between people buying new phones (e.g. Samsung Galaxy S4), OS upgrades (e.g. iOS 7) and new browser versions, the half-life of UAs is pretty short.  Or, to use another metaphor, the sands are always shifting.

At ScientiaMobile, we do two things to make sure this change does not impact your accuracy. First, we use a combination of detection logic in our WURFL API and updating device information in our weekly WURFL snapshot.  Every week, we analyze millions of UAs for new and relevant devices to include in the Device Description Repository (DDR).

The second thing we do is maintain a historical record of the “long tail” of devices. Because we have been doing this for over 12 years, we have a research track record that makes our detections very complete.

It is hard work maintaining WURFL.  It is not for the faint of heart. But with the time, resources, and industry connections that we devote to this issue, the result is an accurate device solution.

by Kenneth Jones, December 11, 2013