---
title: "User agent"
url: https://proxy.wiki/glossary/user-agent/
type: Glossary Term
author: "proxy.wiki editorial"
published: 2026-08-19
updated: 2026-08-19
site: proxy.wiki
topics: ["Proxy fundamentals"]
license: CC BY 4.0 — quote freely with attribution to https://proxy.wiki/
---

# User agent

> The header a client uses to identify itself. Trivially changed, and therefore weak evidence on its own.

**The `User-Agent` header is a string by which a client describes itself.** It is set by the client, so it is a claim rather than a fact.

## Why changing it is not a disguise

Because anyone can set any value, servers treat it as weak evidence and cross-check it against things that are harder to control: the [TLS fingerprint](/glossary/tls-fingerprinting/), HTTP/2 settings, header ordering and, where JavaScript runs, the [browser fingerprint](/glossary/browser-fingerprinting/).

An inconsistent claim is worse than an honest one. A string announcing Chrome on Windows, sent with a Python TLS handshake and header order, is a clearer automation signal than leaving the library’s default in place.

## Practical guidance

- Keep it consistent with everything else your client actually does.

- Use current, real strings — versions long out of support are conspicuous.

- Randomising it per request is a strong bot signal; real clients are stable.

- If you are identifying yourself honestly as a crawler, say so and publish contact details.

## Sources

1. [RFC 9110: HTTP Semantics (User-Agent)](https://www.rfc-editor.org/rfc/rfc9110.html)
