What Does Your User Agent Say About You?


A user agent is a computer program representing a person, for example, a browser in a Web context.

Besides a browser, a user agent could be a bot scraping webpages, a download manager, or another app accessing the Web. Along with each request they make to the server, browsers include a self-identifying User-Agent HTTP header called a user agent (UA) string. This string often identifies the browser, its version number, and its host operating system.

Spam bots, download managers, and some browsers often send a fake UA string to announce themselves as a different client. This is known as user agent spoofing.

The user agent string can be accessed with JavaScript on the client side using the navigator.userAgent property.

A typical user agent string looks like this: "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0".


User Agent String

Browser Data

See My User Agent

Carole Stephens
• Tuesday, 05 July, 2022
• 8 min read

There's no “standard” way of writing an user agent string, so different web browsers use different formats (some are wildly different), and many web browsers cram loads of information into their user agents. Some mobile web browsers will let you change what the browser identifies itself as (i.e. “Mobile Mode” or “Desktop Mode”) in order to access certain websites that only allow desktop computers.

agent user detected fake anonymized os browser still imgur firebug shows being


Defaults to your request's user agent string. They reveal a catalog of technical data about the device and software that the visitor is using.

Armed with this information, you can develop richer and more dynamic websites that deliver different experiences based on the user agent that's visiting. User agents are also critical in controlling search engine robots using the robots.txt file on your server.

In order to leverage this information, you need to understand the component parts of an user agent string and consider also the potential risks of using this method to deliver content. When the internet was a text-based system, right back at the beginning of its use, users had to type commands to navigate and send messages.

We simply point and click, and the browser is acting as our agent,” turning our actions into commands. When your browser (or similar device) loads a website, it identifies itself as an agent when it retrieves the content you've requested.

Browsers : Including Microsoft Edge, Internet Explorer, Firefox, Safari, Chrome, BlackBerry, Opera, Opera Mini, iOS Safari, Chrome for Android, Samsung Internet, HQ browser, and others. Plus a whole range of feed readers, validators, cloud platforms, media players, email libraries, and scripts.

explorer internet agent user

Once the user agent has identified itself to the web server, a process called content negotiation can begin. The user agent application is Mozilla version 5.0, or a piece of software compatible with it.

Note that a huge part of the user agent string is concerned with compatibility. That's because Internet Explorer originally had to declare itself to be Mozilla compatible in order to receive content with frames.

In practice, the majority of browsers now declare themselves to be Mozilla compatible to ensure that they can access all the content on the web. Check the capabilities of the browser or device, and load different CSS based on the outcome; Deliver custom JavaScript to one device compared with another; Send an entirely different page layout to a phone, compared to a desktop computer; Automatically send the correct translation of a document, based on the user agent language preference; Push special offers to particular people, based on their device type or other factors; Gather statistics about visitors to inform our web design and content production process, or simply measure who's hitting our site, and from which referral sources.

Overall, we can empower our scripts to make the best choice for our visitors, based on their user agent. More, we can feed that data back into a cycle of continuous improvement, analytics and other processes, like conversion optimization.

Chrome Review (Lollipop and above) Mozilla/5.0 (Linux; Android 5.1.1; Nexus 5 Build/LMY48B; WV) Apple WebKit/537.36 (HTML, like Gecko) Version/4.0 Chrome/43.0.2357.65 Mobile Safari/537.36 An user agent is a particular string of characters in each browser that allows acts as an identification agent.

agent wireshark user windows host line using chrome users hosts x64 figure google operating microsoft

The user agent string contains the user application or software, the operating system (and their versions), the web client, the web client's version, and the engine responsible for the content display (such as Apple WebKit). It is a rendering engine that processes HTML and CSS to interpret and present web pages.

Newsreaders, screen readers and other web-related applications and systems act as agents as well. Some websites check the browser version in the user agent to ensure the user has a current browser and directs them to various vendors’ websites to download a newer version.

Many enterprise applications check browser type and versions due mostly to heavy customization of the UI and to ensure an optimal experience. The user is typically denied access without the application’s “certified” browser or is notified the experience will be less than optimal.

But, in case you are curious about the user agent of the web browser you are using, there are several resources you can take advantage of. Simply visit this page to view the user agent of your web browser.

For instance, if you are using Google Chrome running on Windows 10, you can change the user agent to Firefox on iPhone so the web servers will serve the web pages specialized for mobile device, iPhone in this case. You may have reached us looking for answers to questions like: How to find the user agent string.

agent user string change chrome webview browser google khtml techbeasts remark browse check

So, to get info about your browser, websites often examine the ‘ user agent ’, or ‘UA’ string. There are other benefits to this, since some websites have completely different themes for, say, mobile browsers which tend to load a lot faster and are not burdened by ads for example.

However, most of you might be thinking which add-on or extension is the best for switching user agents on your favorite browser. Well, let me tell you that if you use Chrome, Safari or Firefox, there is absolutely no need to download anything else, since the option to change user agents is built in right into these browsers themselves.

In this case, you will first need to open the browser’s Preferences panel and click on the Advanced tab. This enables the Develop menu, from which you can select the Sergeant option to choose any of the major browsing agents, including mobile ones like Safari for iPhone, iPad or iPod Touch.

While this feature is quite unknown to the vast majority of Chrome users, it is available within its options. This will open a small panel on the lower part of the currently active window in Chrome.

Step 3: Check the box next to Sergeant to enable the drop-down dialog from which you will be able to select the agent you want to browse with, including mobiles ones not just for iOS devices, but also (naturally) for Android ones. Firefox is by far the trickiest browser to change its user agent, since it requires you to tinker directly with its configuration files.

safari agent user code web webpage viewing changing source under reports change

Step 3: Before you continue, you now need to find the agent you want to switch to in order to paste it on your new String. Now you know how to change the user agent for three of the most important browsers right from their settings and without downloading any extra stuff.

Last updated on 8 Feb, 2018 The above article may contain affiliate links which help support Guiding Tech. Anonymous ¶ Follow up to Francesco R's post from 2016. His function works for most human traffic; added a few lines to cover the most common bot traffic.

Also fixed issue with function failing to detect strings at position 0 due to strops behavior. Ruudrp at live dot NL ¶ To my surprise I found that none of the get_browser alternatives output the correct name / version combination that I was looking for using Opera or Chrome.

They either give the wrong name e.g. Safari when in fact it should be Chrome and if the UA string includes a version number as with the latest versions of Chrome and Opera the wrong number is reported. So I took bits and pieces from the various examples and combined them and added a check for version.

“;} return array('sergeant' EU_ agent,'name' name,'version' version,'platform' platform,'pattern' pattern);} UA=browser();$yourbrowser= “Your browser: ". Francesco R ¶ If you ONLY need a very fast and simple function to detect the browser name (update to May 2016):function get_browser_name($ user _ agent){ if (strops($ user _ agent, 'Opera') || strops($ user _ agent, 'Or/')) return 'Opera'; else if (strops($ user _ agent, 'Edge')) return 'Edge'; else if (strops($ user _ agent, 'Chrome')) return 'Chrome'; else if (strops($ user _ agent, 'Safari')) return 'Safari'; else if (strops($ user _ agent, 'Firefox')) return 'Firefox'; else if (strops($ user _ agent, 'MSI') || strops($ user _ agent, 'Trident/7')) return 'Internet Explorer'; return 'Other';}echo get_browser_name($_SERVER);?>This function also resolves the trouble with Edge (that contains in the user agent the string “Safari” and “Chrome”), with Chrome (contains the string “Safari”) and IE11 (that do not contain 'MSI' like all other IE versions). Note that “strops” is the fastest function to check a string (far better than “prey_match”) and Opera + Edge + Chrome + Safari + Firefox + Internet Explorer are the most used browsers today (over 97%).


The latest version of PHP has a performance fix for this function. Jeff Williams ¶ To automatically update your browscap.ini file on Linux servers, you can use this simple shell script:You can put it in the weekly cron job folder usually located in /etc/iron.weekly just don't forget to make the script executable (ch mod 775 script name).

Tim at digital dot DE ¶ Be aware that loading PHP_browscap.ini via the brows cap php.ini setting may consume a non-trivial amount of memory. Current versions are several MB in size (even the “lite” one) and can eat tens of MB of RAM in each PHP process.

I’d recommend comparing your processes’ memory consumption with and without PHP_browscap.ini being loaded. If necessary, consider creating your own stripped-down copy of PHP_browscap.ini with just the browsers that are important to you.

Shashank ¶ As ruler had given the code, I have added code for Internet Explorer 11

If(empty($ user _ agent)) {return array('nav' 'NC', 'name' 'NC', 'version' 'NC');} Good practice would be to include HTML if-statements for IE stylesheets as well as dynamically checking the browser type.

internet mac safari explorer agent user pc google websites switch detected webkit again check

P2 at eduardoruiz dot BS ¶ BE CAREFUL WITH THIS FUNCTION! ! This function uses a lot of CPU and RAM on the whole server resources. Perhaps if you use this function a few times then no problem, but NOT if you use at any page request, or once per session. Also, this function doesn't work correctly and may returns wrong values, wildcards or empty, so it's not very useful for web statistics.

Other Articles You Might Be Interested In

01: Npm User Agent Parser
02: How To Change User Agent In Internet Explorer
03: How To Change User Agent In Microsoft Edge
04: How To Change User Agent Microsoft Edge
05: How To Change User Agent On Internet Explorer
06: How To Change User Agent On Microsoft Edge
07: How To Change Your User Agent Microsoft Edge
08: Tablet User Agent String
09: Robots.txt User Agent
10: Robots.txt User Agent Disallow
1 -
2 -
3 -
4 -
5 -
6 -
7 -
8 -
9 -
10 -