User-Agent
Ein User-Agent ist ein Programm, das Anfragen an einen Webserver stellt, etwa ein Browser, eine App oder der Crawler einer Suchmaschine. Im gleichnamigen HTTP-Header nennt er Name, Version und System, im Deutschen heißt diese Angabe auch Browserkennung.
Was ist ein User-Agent?
Ein User-Agent ist nach der Definition im HTTP-Standard RFC 9110 jedes Client-Programm, das eine Anfrage an einen Server startet. Der Webbrowser ist die bekannteste Form, macht nach dem Standard aber nur einen kleinen Teil der User-Agents aus. Dazu zählen ebenso Crawler von Suchmaschinen und KI-Anbietern, Kommandozeilenwerkzeuge, mobile Apps, Update-Skripte und vernetzte Haushaltsgeräte.
Im Deutschen heißt die Angabe, mit der sich ein Browser beim Server ausweist, auch Browserkennung. Gemeint ist der User-Agent-String, eine Zeichenkette mit Programmname, Version und System. Geschrieben wird der Begriff auch User Agent oder Useragent, der Plural lautet User-Agents. Im E-Mail-System gibt es zudem den Mail-User-Agent, ein E-Mail-Programm, das mit dem HTTP-Header nur den Wortteil User-Agent teilt.
Der HTTP-Header User-Agent
Der HTTP-Header User-Agent ist das Feld einer Anfrage, in dem der User-Agent sich selbst beschreibt. RFC 9110 sieht vor, dass er bei jeder Anfrage mitgeschickt wird, solange das Programm nicht ausdrücklich anders eingestellt ist. Server nutzen die Angabe, um Fehler einzelner Browser einzugrenzen, Antworten anzupassen und Browser oder Betriebssysteme in der Webanalyse auszuwerten. So sieht der Header in der Anfrage eines Browsers aus.
GET /ratgeber/tagesgeld HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36
Accept-Language: de-DE,de;q=0.9
Prüfen kann der Server den Inhalt nicht. Was im Header steht, legt allein der Absender fest, deshalb können sich Browser, Bots und Skripte als etwas anderes ausgeben. Wie sich echte Crawler trotzdem erkennen lassen, zeigt der Abschnitt zum User-Agent-Spoofing.
Aufbau des User-Agent-Strings
Ein User-Agent-String besteht aus Produktangaben der Form Name/Version, denen Kommentare in Klammern folgen können. Laut RFC 9110 stehen sie nach Bedeutung geordnet, das wichtigste Produkt vorn. Das Beispiel im Standard lautet CERN-LineMode/2.15 libwww/2.17b3, also ein Browser und die Programmbibliothek, auf der er aufbaut. Browser-Strings folgen einem gemeinsamen Muster aus Kompatibilitätsangabe, System in Klammern, Engine und Browser mit Version. Die Figur zerlegt den String von Chrome unter Windows in diese Teile.
- 1Mozilla/5.0. Signalisiert einen Mozilla-kompatiblen Browser, fast jeder Browser sendet es.
- 2Plattform. Fester Wert, auch unter Windows 11 steht hier Windows NT 10.0.
- 3AppleWebKit/537.36. Verweist auf WebKit, aus dem Chromes Engine Blink hervorging, Wert festgeschrieben.
- 4KHTML, like Gecko. WebKit stammt von KHTML ab, das Wort Gecko bedient alte Browserweichen.
- 5Chrome/155.0.0.0. Browser und Hauptversion, die Nebenversion steht seit 2022 auf 0.0.0.
- 6Safari/537.36. Weist Chrome als Safari-ähnlich aus, ebenfalls ein fester Wert.
Dass fast jeder Browser-String mit Mozilla/5.0 beginnt und „like Gecko“ enthält, ist ein Erbe der Browserweichen, also von Website-Code, der je nach Browser andere Inhalte ausliefert. In den 1990er-Jahren prüften Websites, ob sich ein Browser wie Netscape als Mozilla meldete, und forderten Nutzer anderer Browser zum Wechsel auf. Andere Hersteller übernahmen die Kennung Mozilla deshalb. WebKit, die Engine von Safari, entstand 2001 aus KHTML, der Engine des KDE-Browsers Konqueror. Der Zusatz „(KHTML, like Gecko)“ nennt diese Herkunft und bringt das Wort Gecko in den String, nach dem Weichen für moderne Browser wie Firefox suchten. Chrome startete 2008 auf WebKit und hängte zusätzlich Safari an. Seit 2013 entwickelt Chrome mit Blink eine eigene Engine, die Angaben zu WebKit und Safari blieben als feste Werte stehen. RFC 9110 rät ausdrücklich davon ab, Produktnamen anderer Programme zu übernehmen, um Kompatibilität zu behaupten.
Beispiele für User-Agent-Strings
Die User-Agent-Strings der großen Browser folgen alle diesem Muster und unterscheiden sich vor allem in Engine und Versionsangabe. Chrome, Edge und Opera nutzen dieselbe Engine und damit fast denselben String, Edge hängt Edg/ an, Opera OPR/. Firefox nennt seine Engine Gecko mit dem festen Wert 20100101 auf dem Desktop, Safari setzt die Browserversion hinter Version/. Mobile Browser ergänzen das Wort Mobile. Auf dem iPhone basieren laut den MDN Web Docs (Mozilla Developer Network) auch Chrome, Firefox und Edge auf WebKit, ihre Strings ähneln deshalb dem von Safari. Weitere Beispiele führt die User-Agent-Referenz von MDN.
| Browser und System | User-Agent-String |
|---|---|
| Chrome 155, Windows | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Safari/537.36 |
| Chrome 155, Android | Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/155.0.0.0 Mobile Safari/537.36 |
| Firefox 157, Windows | Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:157.0) Gecko/20100101 Firefox/157.0 |
| Safari 26, macOS | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Safari/605.1.15 |
| Safari 26, iPhone | Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Mobile/15E148 Safari/604.1 |
User-Agent von Chrome
Der User-Agent von Chrome ist reduziert und verrät seit Mai 2023 auf dem Desktop und unter Android nur noch Browser, Hauptversion und eine feste Plattformangabe. Google hat den String schrittweise eingefroren, um passives Fingerprinting zu erschweren, also das Wiedererkennen eines Geräts an seinen Merkmalen. Ab Chrome 101 stehen hinter der Hauptversion nur noch Nullen, für alle Nutzer seit 13.06.2022. Ab Chrome 107 ist die Plattform auf dem Desktop ein fester Wert (vollständig seit 07.02.2023), ab Chrome 110 auch unter Android (vollständig seit 11.05.2023). Jedes Android-Smartphone meldet sich deshalb als Android 10 mit dem Gerätemodell K. Für Chrome unter iOS und für Android WebView plant Google die Reduktion laut Chromium-Dokumentation nicht.
Genauere Angaben liefern seit Chrome 89 die User-Agent Client Hints. Ohne Anfrage sendet Chrome über HTTPS nur drei dieser Header, Sec-CH-UA mit Browsername und Hauptversion, Sec-CH-UA-Mobile und Sec-CH-UA-Platform. Die vollständige Version oder das Gerätemodell schickt der Browser erst, wenn der Server sie mit dem Header Accept-CH anfordert. Auch Windows 11 lässt sich erst über den Client Hint Sec-CH-UA-Platform-Version von Windows 10 unterscheiden, im String stehen beide unabhängig von der Reduktion als Windows NT 10.0. Firefox und Safari unterstützen Client Hints laut den Kompatibilitätsdaten von MDN nicht, dort bleibt der String die einzige Quelle.
Sec-CH-UA, ohne AnfrageSec-CH-UA-Full-Version-List, auf AnfrageSec-CH-UA-Platform, ohne AnfrageSec-CH-UA-Platform-Version, auf AnfrageSec-CH-UA-Model, auf AnfrageSec-CH-UA-Mobile, ohne AnfrageUser-Agents von Crawlern und Bots
Crawler und andere Bots melden sich mit einem eigenen User-Agent, der den Namen des Bots, eine Version und meist eine Adresse mit Informationen enthält. In der Regel stehen diese Angaben hinter dem Wort compatible. Googlebot und Bingbot verpacken sie in einen vollständigen Browser-String mit ihrer Chrome- oder Edge-Version, weil sie Seiten wie ein Browser darstellen. Der User-Agent von Bing folgt diesem Muster seit 2022, der Bingbot meldet sich mit dem Zusatz compatible; bingbot/2.0 und der Versionsnummer der jeweils aktuellen Edge-Version. Wie Suchmaschinen beim Crawling Seiten finden, abrufen und darstellen, erklärt ein eigener Artikel.
Googlebot und andere Google-Crawler
Der User-Agent von Google für die Websuche heißt Googlebot und kommt in zwei Varianten, für Smartphones und für Computer. Google dokumentiert beide Strings.
# Googlebot Smartphone
Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/W.X.Y.Z Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
# Googlebot Desktop
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Googlebot/2.1; +http://www.google.com/bot.html) Chrome/W.X.Y.Z Safari/537.36
W.X.Y.Z ist ein Platzhalter für die Chrome-Version, mit der der Googlebot gerade arbeitet. Laut Google wird sie im Lauf der Zeit hochgezählt, weil sie der jeweils neuesten Chromium-Version entspricht, die der Googlebot verwendet. Wer Logs nach dem Googlebot durchsucht, filtert deshalb auf Googlebot/2.1 und setzt für die Version einen Platzhalter. Selten erscheinen auch kurze Varianten ohne Chrome-Angabe. Weil Google bei den meisten Websites in erster Linie die mobile Version indexiert, kommt die Mehrheit der Anfragen vom Googlebot Smartphone. Daneben betreibt Google weitere Crawler mit eigenem String, etwa Storebot-Google für Shopping.
KI-Bots: Training, Suche, Nutzerabruf
KI-Anbieter trennen ihre Bots nach Zweck und geben jedem einen eigenen User-Agent. Trainings-Crawler sammeln Inhalte für künftige Modelle, Such-Crawler füllen den Suchindex eines KI-Assistenten, und Nutzerabrufe holen eine Seite live, wenn jemand eine Frage stellt. OpenAI nutzt dafür GPTBot, OAI-SearchBot und ChatGPT-User, Anthropic ClaudeBot, Claude-SearchBot und Claude-User, Perplexity den PerplexityBot und Perplexity-User. Die Strings folgen dem Muster der Suchmaschinen. GPTBot etwa meldet sich laut OpenAI als Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot.
Für Regeln in der robots.txt zählt nicht der vollständige String, sondern ein kurzes Token, meist der Botname. Beide Varianten des Googlebots teilen sich das Token Googlebot und lassen sich nicht getrennt ansprechen. Google-Extended, das Token für Training und Fundierung von Gemini, hat gar keinen eigenen String, Google ruft dafür mit seinen bestehenden Crawlern ab. Welche Tokens die KI-Anbieter vergeben und was eine Sperre bewirkt, listet der verlinkte Abschnitt.
Wie sich die Zwecke verteilen, zeigt eine KKP-Messung auf kkp.agency. Peec AI Agent Analytics ordnete vom 23.07. bis 05.08.2026 insgesamt 2.216 Abrufe von KI-Bots anhand ihres User-Agents einem Zweck zu. Der Nenner umfasst alle Abrufe der Domain, also auch robots.txt, sitemap.xml und Assets.
Zweck-Klassen laut Peec. ClaudeBot führt Peec unter Sonstige, Anthropic beschreibt ihn als Trainings-Crawler. Balken relativ zum größten Wert.
Trainings-Crawler lagen vorn, der stärkste Einzelbot war Bytespider von ByteDance mit 628 Abrufen. Nutzerabrufe machten 16,3 Prozent aus. Auf reinen Content-Seiten ist ihr Anteil höher, wie die KKP-Messung im Artikel zum Retrieval zeigt. Nach demselben Prinzip hat Ahrefs ausgewertet, welche Bots eine llms.txt abrufen. Seiten, die ChatGPT im Thinking-Modus selbst öffnet, hinterlassen keinen UTM-Parameter, sondern nur den User-Agent ChatGPT-User im Server-Log, wie die KKP-Analyse zum Suchindex von ChatGPT beschreibt.
User-Agent-Spoofing und Googlebot-Verifizierung
User-Agent-Spoofing heißt, dass ein Programm einen fremden User-Agent sendet. Das ist einfach, weil der Server den Header nicht prüfen kann. Entwickler nutzen es in den Entwicklertools des Browsers, um etwa zu testen, welche Fassung eine Seite an ein Smartphone ausliefert. Browser-Erweiterungen, oft User-Agent-Switcher oder Useragent-Faker genannt, tun dasselbe. Auch Bots geben sich als jemand anderes aus. Laut Google fälschen andere Crawler den User-Agent des Googlebots häufig.
Ob ein Zugriff wirklich vom Googlebot stammt, zeigt deshalb nur die IP-Adresse. Google beschreibt zwei Wege. Für einzelne Zugriffe genügen ein Reverse-DNS-Lookup und ein anschließender Forward-DNS-Lookup mit dem Befehl host. Für große Logdateien gleicht ein Skript die IP mit den IP-Bereichen ab, die Google als JSON-Dateien veröffentlicht, getrennt nach gewöhnlichen Crawlern wie dem Googlebot, Spezial-Crawlern und Abrufen, die Nutzer auslösen.
- 01IP aus dem LogZugriff mit Googlebot im User-Agent, etwa von 66.249.66.1
- 02Reverse DNSDie IP liefert einen Hostnamen, beim Googlebot endet er auf googlebot.com.
- 03Forward DNSDer Hostname muss wieder auf dieselbe IP zeigen.
-
beides passtEchter GooglebotsonstGefälschter User-Agent
Die Domains google.com und googleusercontent.com gehören zu Spezial-Crawlern und von Nutzern ausgelösten Abrufen, nicht zum Googlebot.
host 66.249.66.1
1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com.
host crawl-66-249-66-1.googlebot.com
crawl-66-249-66-1.googlebot.com has address 66.249.66.1
OpenAI, Perplexity, Anthropic und Microsoft für den Bingbot veröffentlichen ebenfalls Listen ihrer IP-Adressen. In der KKP-Messung auf kkp.agency (23.07.–05.08.2026) hat Peec AI Agent Analytics die Abrufe gegen solche Listen geprüft. Von 2.311 Abrufen mit der Kennung eines KI-Bots waren 95 gefälscht, also 4,1 Prozent, die meisten gaben sich als ChatGPT-User oder Claude-User aus. 955 Abrufe konnte Peec nicht prüfen, darunter alle 628 von Bytespider.
Aus Sicht von KKP sind Bot-Anteile, die nur auf dem User-Agent beruhen, deshalb Näherungswerte. Wer Bots nach Zweck auswertet oder aussperren will, prüft vorher die IP-Adressen, sonst zählen gefälschte Zugriffe mit.
User-Agent in der SEO
In der SEO zählt der User-Agent, weil Google die meisten Anfragen mit dem Googlebot Smartphone stellt und Server ihre Antworten nach dem User-Agent ausrichten können. Für die Indexierung wertet Google bei den meisten Websites in erster Linie die mobile Version aus. Inhalte, Überschriften, Metadaten und strukturierte Daten müssen deshalb auch in der Fassung stehen, die ein Smartphone-User-Agent erhält.
Liefert ein Server unter derselben URL je nach User-Agent unterschiedliches HTML aus, nennt Google das dynamische Bereitstellung (Dynamic Serving). Die Konfiguration nutzt laut Google den Antwort-Header Vary: User-Agent, der anzeigt, dass die Antwort vom User-Agent abhängt. Die Fassungen müssen inhaltlich gleichwertig sein. Bekommen Suchmaschinen andere Inhalte als Menschen, um Rankings zu beeinflussen, ist das Cloaking und ein Verstoß gegen Googles Spam-Richtlinien. Das Dynamic Rendering, bei dem Crawler eine vorgerenderte Fassung erhalten, bezeichnet Google nur noch als Behelfslösung.
Im Server-Log zeigt der User-Agent, welcher Crawler wann welche URL abgerufen hat. Damit ist er die Grundlage jeder Logfile-Auswertung, sofern der Server ihn protokolliert. Das Common Log Format, ein Standardformat vieler Webserver, enthält ihn nicht, erst das Combined Log Format ergänzt Referrer und User-Agent. In der KKP-Praxis ist ein Log ohne User-Agent der häufigste Grund, warum eine Auswertung von Bot-Zugriffen nicht sofort starten kann.
Häufige Fragen zum User-Agent
Was ist mein User-Agent?
Den eigenen User-Agent zeigt die Konsole der Entwicklertools jedes Browsers, wenn dort navigator.userAgent eingegeben wird. Dieselbe Zeichenkette sendet der Browser bei jedem Seitenaufruf im HTTP-Header User-Agent. In Chrome steht darin seit der User-Agent-Reduktion nur die Hauptversion, etwa Chrome/155.0.0.0.
Kann man den User-Agent ändern?
Ja, die Browserkennung lässt sich ändern, weil der Browser sie selbst sendet. In Chrome geht das in den Entwicklertools im Bereich Network conditions, sobald das Häkchen bei Use browser default entfernt ist. Browser-Erweiterungen wie User-Agent-Switcher und Kommandozeilenwerkzeuge wie curl mit der Option -A setzen ebenfalls einen eigenen User-Agent.
Verrät der User-Agent, wer eine Website besucht?
Nein, der User-Agent nennt keine Person, sondern Browser, Version und Betriebssystem. Zusammen mit anderen Merkmalen kann er aber helfen, ein Gerät wiederzuerkennen, was Fingerprinting heißt. Deshalb hat Chrome den User-Agent zwischen 2022 und 2023 reduziert und nennt seitdem weder Nebenversion noch Systemversion oder Gerätemodell.
Was ist ein Mail-User-Agent?
Ein Mail-User-Agent (MUA) ist ein E-Mail-Programm, mit dem Menschen Nachrichten schreiben, versenden, lesen und ablegen, als Anwendung oder im Browser. RFC 5598 beschreibt ihn unter dem Namen Message User Agent als Vertreter des Nutzers im E-Mail-System. Mit dem HTTP-Header User-Agent hat der Mail-User-Agent nur den Namen gemeinsam.
Wie erkennt man den echten Googlebot?
Den echten Googlebot erkennt man an seiner IP-Adresse, nicht am User-Agent, der sich fälschen lässt. Der Hostname aus einem Reverse-DNS-Lookup der IP muss auf googlebot.com enden, und ein Forward-DNS-Lookup dieses Hostnamens muss wieder dieselbe IP liefern. Alternativ wird die IP mit den IP-Bereichen abgeglichen, die Google als JSON-Dateien veröffentlicht.
Weiterführende Ressourcen und Quellen
Einsatz von künstlicher Intelligenz
Dieser Beitrag wurde mithilfe künstlicher Intelligenz erstellt und von unseren Fachexperten sorgfältig überprüft, um sicherzustellen, dass die Informationen korrekt, verständlich und nützlich sind.
AI Search Guide: Sichtbar in ChatGPT & Co.
Der Praxis-Guide zeigt auf 164 Seiten, wie eine Brand in ChatGPT, Google AI Overviews, Gemini und Perplexity sichtbar wird, von den Grundlagen über Messung und KPIs bis zu konkreten Maßnahmen.
Kostenlos herunterladen →