
Most User-Agent Parsers are Inaccurate 22% of the Time
If you use an open-source or home-grown User-Agent Parser (UA Parser) to identify devices, OS, browsers, or other device information, should you be worried about its accuracy?
We have bad news and worse news. The bad news is “yes” you should be worried. Actually it is “YES!” with alarm bells going off in the background.
For starters, most open-source or home-grown UA Parsers do an inferior job of device detection. We analyzed the results of the most popular open source JavaScript UA Parsers in August 2022. We found that 22% of the time UA Parsers will get the mobile device model wrong, the brand name wrong, or just not return a result. And that is being generous.
In other words, if you are using a non-enterprise UA Parser for business or operational purposes, then you are providing a poor experience for your visitors 22% of the time. We will go into the reasons for the poor accuracy a little later.
Frozen User Agent Strings

Here is worse news: non-enterprise User-Agent Parsers’ accuracy is getting worse. Why? Because Google Chrome has decided to freeze the user-agent strings and move to using user-agent client hints.
The shift to user-agent client hints complicates the detection process considerably. The UA Parser needs to deal with two potential sources: user-agent strings vs. user-agent client hints. And this raises many difficult questions. Is the user-agent string frozen or active? Is the client-hints responding? If you have both, then which one do you trust? And once you have figured out which is the accurate source, is your detection process tuned well to accurately determine the device profile and all the other capabilities of the device?
The clock is ticking. Google has already started to freeze user-agent strings. 14% of user-agents from Google Chrome desktops are already frozen in 2022 Q2. The linked blog gives the timeline for the transition. So if your UA Parser is only 78% accurate today, then expect that accuracy to drop even more by next year.
The Good News: WURFL.js is Here and Accurate

The good news is that WURFL device detection has already deployed engineering upgrades to ensure accuracy going forward. ScientiaMobile released an upgrade that uses user-agent client hints and accurately resolves any issues with frozen user-agents. This means that WURFL will continue its 99.9% accuracy, while non-enterprise UA Parsers will continue to face deteriorating accuracy.
The even better news for people using JavaScript UA Parsers is that WURFL.js simplifies any transition. ScientiaMobile offers a free version, WURFL.js Lite, for you to try.

ScientiaMobile also offers enterprise versions that provide device model-level detection of Apple iPhones. Apple makes it very difficult to distinguish between their iPhones, but the WURFL.js Basic, Standard, and Pro all include accurate iPhone detection. WURFL.js Basic, Standard, and Pro also return 24 WURFL device capabilities (via a JSON object) that go beyond what non-enterprise UA Parsers provide. And if you need to customize those device capabilities to include any of the 500+ device capabilities WURFL has in its library, then we can customize WURFL.js for you.

Why is WURFL.js More Accurate?
The World’s Most Accurate Detection Algorithm Already Incorporates User-Agent Client Hints
WURFL’s fundamental architecture is designed to deliver accuracy that companies can trust. The world’s largest internet companies and CDNs choose WURFL because it combines high accuracy with the ability to handle billions of transactions (contact your salesperson to receive our white paper on performance). In the end, WURFL’s accuracy makes it the trusted industry standard.
WURFL avoids false positives and provides tools to clearly see conclusive, accurate matches.

The process of detecting a device occurs within the logic of the WURFL API. There are several major steps that the API goes through to detect and return the device attributes (or WURFL capabilities) requested by an application.
The WURFL API automatically accepts user-agent client hints, reconciles them with the user-agent (UA) string, and continues to identify the same accurate device profile and capabilities that customers expect from WURFL.
Largest Device Profile Library – More Than 80,000 Devices
The pace of change in devices is swift. We measure this pace using the UA half-life. If you take the universe of UAs from the real world starting today, then the half-life is the length of time when 50% of those UAs are no longer used in the real world. Based on our study, only 50% of UAs are still in use after 7 months. After 12 months, only 38% are in use.
Why does this happen? New models arrive. Operating systems update. Browsers change. This all contributes to a rapidly changing universe of device profiles.
The constant churn means you need an automatic system that updates itself.. WURFL.js is cloud-based and automatically updates its API and library so you don’t have to. This means WURFL stays accurate with no maintenance from your IT staff.
Most experienced team dedicated to device detection
ScientiaMobile’s team analyzes more than 2 billion UA strings and client hints per month, identifying virtually every device on the planet using a browser. WURFL automatically and seamlessly updates its device profile snapshot XML so its device accuracy remains high. In addition, API updates every quarter improve accuracy and performance and are performed automatically in cloud-based WURFL.js.
Combine this with comprehensive support, through support documentation or one-on-one, and you have the makings of a stellar team that will ensure you get the most accurate information and best results from your WURFL device detection.
Uses JavaScript Techniques Tuned to Distinguish, Identify Apple iPhones
ScientiaMobile’s engineering team has integrated a methodology to return accurate Apple device model information in its WURFL.js Basic, Standard, and Pro plans. Apple has made it very difficult to distinguish iPhone and iPad models. This is very unfortunate because the iPhone 7 is very different from Apple’s models.
For years, WURFL.js has quickly and reliably detected iPhone and iPad models – something no other device detection solution on the market can do. And with each new release, ScientiaMobile quickly updates its detection process so users can be assured of accurate device model-level detection.
Choosing Your Device Detection Options
For many organizations, the decision to build or use an open-source UA Parser was made years ago. For years, they have recognized that their UA Parser accuracy was only “good enough.” But, facing the new realities that non-enterprise UA Parsers will have declining accuracy in the next few months. Also, given the security concerns caused by hackers hijacking and distributing malware via a popular open-source UA Parser, it is a good time to re-evaluate.
Pros | Cons |
---|---|
Free | Poor accuracy, small library of device profiles |
Open source code | No support of user-agent client hints |
Poor security | |
No Apple iPhone model detection | |
Poor form factor classification | |
Limited # of device capabilities | |
Poor coverage of non-smartphones, app webviews |
If you have a home-grown system that is suffering from poor accuracy, that’s not surprising. Keeping track of new devices is difficult for companies for whom it is not their core mission, and JavaScript hacks that do simple UA sniffing are no longer going to function properly. Now that frozen User-Agent Strings and User-Agent Client Hints are complicating matters, once-workable solutions are breaking quickly. ScientiaMobile’s WURFL is the most trusted name in device detection solutions, used by leaders like Google, Amazon, and Oracle. We have a solution that will fit your needs. Contact us, and ScientiaMobile can set you up with a free 30 day trial so you can see the improvements yourself!