• About Us
  • Blog
  • Basket
  • Account
  • Sign In


Tips for consumer electronic device vendors

Published on Monday, April 27, 2015

Tips for consumer electronic device vendors

How smartphone vendors can improve their customers digital experience

Every day consumer electronic vendors fuel the growing demand for smartphones, tablets and smartwatches by releasing new web enabled devices. From the mighty Apple iPhone and iPad to the relative smaller-scale like Gionee, Oppo and Fly, 51Degrees track the post popular ensuring their specifications and capabilities are available for analysis.

For many marketers its essential to know how each device and platform is performing. 51Degrees provide a tool which aggregates usage information from over 3 billion unique web visits per month and shows vendors exactly how their models are performing by country and month. This information differs to sales figures and shows real usage of the web.

% Device Count for Hardware Vendors in United States
% Device Count for Hardware Vendors in United States

Over 1.5 million web sites and businesses including eBay, Unilever, T-Mobile and Microsoft use the information gained to optimise their web sites for different device types including feature phones, smartphones, tablets and big screen laptop and desktop devices. This article explains the simple techniques vendors should consider when releasing new devices to ensure they play nicely with all web sites.

How does 51Degrees work?

The most common method of identifying a device on the web is to examine the finger prints, called HTTP headers which identify the device. HTTP headers include a field called User Agent (UA) which is a collection of characters containing information about the web browser and operating system accessing a website. Many UAs also include information about the hardware model number. Other HTTP headers contain additional information.

Vendors are free to choose whatever UA they wish for their devices. There are no formal standards or governing bodies. However there are conventions that have evolved. Choosing a consistent format is essential.

Here is an example UA:

Mozilla/5.0 (Linux; Android 4.4.4; HTC_0P6B6 Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.93 Mobile Safari/537.36

Some parts of the UA are of more or less important. Words like Mozilla and Safari are only included for historical reason.

We know that "Mozilla" and "Safari" in this case has no real meaning anymore. The word "Mobile" indicates that this is a mobile device. Additionally, we can identify that it is a HTC device with 0P6B6 model number that runs on Android 4.4.4 and is using Chrome 39.0 to access a website. The User Agent includes additional information such as "Linux", which indicates it's a Linux based operating system. The characters "AppleWebKit and (KHTML, like Gecko)" indicates that it is a WebKit and Gecko based browser.

Mystery devices

Most User Agents do not create a problem for browser or software identification, the difficulty comes with mobile hardware recognition. Let's look at the following two UAs.

Mozilla/5.0 (Linux; U; Android 4.2.2; it-it; C50 Build/JDQ39) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30

Mozilla/5.0 (Linux; U; Android 2.3.5; zh-cn; C50 Build/MocorDroid2.3.5) UC AppleWebKit/534.31 (KHTML, like Gecko) Mobile Safari/534.31

We can identify that both devices are running on Android and have a model number C50. However there is no way of knowing which vendors C50 the UA relates to. Had the hardware vendor placed a prefix in front of C50 to identify themselves the problem could be avoid.

What about mobiles in desktop mode?

Although a mobile version of a website is designed to work faster and be easier to navigate on small screens some users prefer viewing a desktop version to see more details or additional feature that aren’t included on the mobile site.

In this cases, when the UA is constructed it is beneficial that it provides the device model. Let’s look how Amazon in dealing with this.

The Kindle Fire HDX 7” (3rd Gen) User Agent not in desktop mode:

Mozilla/5.0 (Linux; U; Android 4.2.2; en-us; KFTHWA Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Silk/3.23 like Chrome/34.0.1847.137 Safari/537.36

The Kindle Fire HDX 7” (3rd Gen) User Agent in desktop mode:

Mozilla/5.0 (Linux; U; en-us; KFTHWA Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.17 Safari/535.19 Silk-Accelerated=true

Both of them include model name so we know that it is a Kindle tablet but viewing the page in different mode.

Type Allocation Code (TAC) code and marketing mobile name

TAC is an 8 digits number associate with the model of device. It's allocated by the GSMA to the specific manufacturer and device model. They form a unique identifier for the model.

Some negligent manufacturers reuse TAC codes across different models either to avoid GSMA licencing fees, or due to negligence.

Using a consistent model identifier in a format that is unique to the vendor consistently across TAC registration, User Agents and requests from native applications for the model identifier will help the vendors devices be consistently identifier across all platforms.

Tips for Device Vendors

The following tips should be considered by device vendors:

  1. Use a model number format which is sufficiently unique to avoid confusion with other brands. The format BRAND-MODEL works well in most cases.
  2. Use the same model number across all elements of configuration including methods used by native applications, TACs and UAs.
  3. Publish information about your UAs and device models consistently on your web site. Treat the UA and model information as important fields in your product catalogue.
  4. Provider different UAs for differnt modes of web browsing. For example; to request a desktop version of a web site add an identifier to indicate this is the users preference.
  5. Follow the established format for each browser vendors UAs.
  6. Don't pretend to be a device you're not, like an iPhone. This only leads to disappointment for your users when the experience doesn't work as intended.
  7. Avoid overly long UAs with additional verbose information.

If you are a Vendor and you would like to know more how 51Degrees can help deliver better user experience for your mobile devices, or arrange a free consultation, please contact us.

Contact Us

Comments (0)


Other posts by Kamila
Contact author



.NET 4G 51Degrees 5G Acer Adform Adtech Advertising Afilias Alcatel Amazon AMP Analysis Analytics Android Apache API Apple Asian Market ASP.NET Asus Blackberry Browser C C# Centro Chrome chromium Client hints Cloud CMS CPU CSS3 Data Data Blog Data File Daydream Design Detection Developers Device Device Data Device Detection Device Intelligence Device Models Device property DeviceAtlas Disney dmexco DotNetNuke Download ebay Ericsson Event Facebook Firefox Foundation Framework Galaxy git repositories Google Google Analytics Google Daydream GPU GSMA Guess HAProxy Hash Trie HTC HTML5 HTTP HTTP Headers Huawei Infinix Ingeniux Internet usage iOS iOS 13 ipad iPadOS iPhone iPhone 11 Java Javascript Kentico LG Liferay LTE m.dot Memory Memory leak Meta Data Microsoft Mobile Mobile Analysis Mobile Analytics Mobile Devices Mobile Marketing Mixer Motorola Mozilla MWC MWC 2017 MWC16 Native Apps NET New Release News Nexus NFC NGINX Nokia OnePlus 5 Opera Operating System Oppo Optimisation OS Patent Performance PHP Press Release Price Band programmatic Publishers Python Redirection Research Responsive Images Responsive web design RESS Review RTB RWD Safari Samsung Scala ScientiaMobile SEO Server Server-side optimisation Seznam.cz Sitecore Smart TV Smartphone Smartwatches Sony Swedish Beers Tablet Tencent Testing Tips Tutorial Umbraco Update User Agent User-Agent Valgrind Varnish Varnish Cache Video Vodafone VoLTE Web Web Apps Web content management Webtrekk White Paper Widgets WiFi Windows WURFL Xiaomi Xperia ZTE