What is a user agent?
A user agent is software used to communicate with the Internet. The user agent software submits requests for Web content on behalf of the user, and receives and displays the content on the user’s device. The most familiar form of user agent is a Web browser like Brave, Chrome, or Safari. User agents also supply the website provider some details on what software and hardware is being used to display content to the user.
While the most common user agents are browsers, other kinds of user agents include standalone apps that serve up Web content (like media players and reading apps), Internet of Things (IoT) interfaces, and search engine Web crawlers. User agents are designed to navigate Web protocols, and can interpret the content received from a server. This eliminates the need for an Internet user to be a programmer—user agents are what allow the Web to “just work” for a large number of people.
User agent—friend or foe?
When you’re browsing the Web, you’re most likely not interacting with it directly. Instead, you interact with your browser (like Brave, Chrome, or Safari), which then acts as your agent and communicates with the Web on your behalf. You tell your agent what you want from the Web, and your agent does the work. Generally speaking, a browser user agent is designed to operate in the best interests of its user.
The same is not necessarily true of many other interfaces considered user agents, such as an app on your mobile phone that contacts the Web for data and displays the resulting content. These non-browser user agents often play a dual role of serving users as a portal to content, while simultaneously collecting data about the user and their usage habits for use by the app owner or third-parties.
What is a user agent string?
One responsibility of a user agent is to provide the website server with some information about where the content will be used (such as the browser and operating system), which is contained in a bit of coding called a “user agent string.” For example, a user agent string for Brave might look like “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.96.36.199 Safari/537.36”.
User agent strings originated in the early days of the Internet when different browsers had different capabilities for display. A website server needed to know what browser (and version) was being used so it could provide the correct set of content for successful display. Today, as a general rule all browsers can display all content, so the user agent string has been repurposed to provide different information.
What information does a user agent string contain?
The user agent string tells a website about the user agent. The string will disclose if the user agent is a browser or another application. The user agent can also declare what operating system is running on the device (e.g. Android or iOS, macOS or Windows), and sometimes the type of device (for example, the user agent string might include “iPhone”).
Although not required, Web crawler bots should identify themselves in the user agent string so that the Web server has the opportunity to block the crawler from accessing nonpublic (Deep Web) content, or any other content that the website owner doesn’t want indexed. Bots should also provide the bot owner’s URL or other contact info.
A user agent string is initially created by the browser or app, but can be modified by a user with a bit of programming know-how.
Can a user agent string reveal my identity?
Browsers create user agent strings to contribute to a better browsing experience for the user. However, the information provided in the user agent string can be exploited for other purposes. Website owners can save the details provided in the user agent string. By themselves, these pieces of data may not seem like identification concerns. However, when combined with other information such as your IP address, data about your browser, device, preferred language, screen size, or screen resolution, this saved user agent string could add to your overall digital fingerprint. And this, in turn, may create a digital profile that’s unique to you, and degrade your online privacy.
The Brave browser generates user agent strings that set nonessential data elements to more general values. For example, instead of declaring the browser is Brave, the user agent string will claim the browser is Chrome. Similarly, it will say the browser on your iPhone is Safari instead of Brave. This circumvents fingerprinting efforts by making you appear less unique, and more like any other user.
Ready for a better Internet?
Brave’s easy-to-use browser blocks ads by default, making the Web cleaner, faster, and safer for people all over the world.Get Brave