User Agents of Visitors

This page demonstrates showing query result from database.

Below list of user agents are collected from the visitor's HTTP header.

stats ready

User AgentCount
Windows90,511
Bots22,375
curl16,975
MacOS8,570
Android7,112
Linux6,004
Other2,390
iPhone756
iPad154
SonyEricsson106
ChromeOS104
FreeBSD67
BlackBerry37
Links35
NetBSD34
OpenBSD28
Wget14
Lynx7
Bot AgentCount
ClaudeBot3,606
CensysInspect2,739
PythonBot2,133
OpenAIBot2,059
InternetMeasurement1,886
PaloBot1,716
GoBot1,050
BingBot860
AhrefsBot853
YandexBot851
Amazonbot707
FacebookBot685
SemrushBot678
GoogleBot666
MJ12Bot294
DuckDuckGoBot219
DotBot214
BaiduBot146
Hkfl-Bot137
TwitterBot86
MojeekBot84
CCBot72
NetcraftSurveyAgent70
BLEXBot65
wpbot56
NodeBot52
HackerNewsBot46
JavaBot39
SERankingBacklinksBot23
Scrapy18
HaloBot16
DataForSeoBot15
ImagesiftBot15
msnbot15
org_bot14
AdsBot-Google12
expo-research-bot12
Exabot11
Google-CloudVertexBot10
TechSpyBot9
DartBot8
Gaisbot8
HawaiiBot8
MizuRSSBot7
Nmap7
PerplexityBot7
GulperBot6
Claude-SearchBot6
xAI-SearchBot6
DeepSeekBot5
TurnitinBot4
Facebot4
YouBot4
CohereBot4
TelegramBot3
bot3
ZoomBot3
net-Robot3
MistralBot3
SlackBot2
MastodonBot2
Readybot2
AwarioBot2
Bravebot2
Aranet-SearchBot2
SleepBot2
DejaShipBot2
BarkrowlerBot2
NVBot2
WhatsAppBot1
YahooBot1
Discordbot1
EveryoneSocialBot1
LinkedInBot1
LivelapBot1
Pinterestbot1
Quora-Bot1
RepoLookoutBot1
Dub.co Bot1
VertexWP Bot1
Googlebot1
PulseGateBot1
Smallwebindexbot1
Applebot1
EveryTabBot1
TenMillionDomainsBot1
Other AgentCount
iaudit/0.1559
Mozilla/5.0348
Mozilla/5.0 (l9scan/2.0.934323e2631313e2430313e2237313; +https://leakix.net)245
Mozilla/5.0 zgrab/0.x143
Mozilla/5.0 (compatible)96
Mozilla/5.0 (compatible; ModatScanner/1.2; +https://modat.io/)80
Mozilla/5.0 (compatible; CMS-Checker/1.0; +https://example.com)50
Mozilla/5.0 (compatible; DomainExtractor/1.0)45
ct‑git‑scanner/0.436
Mozilla/5.0 (compatible; ModatScanner/1.1; +https://modat.io/)32
firefox19
got (https://github.com/sindresorhus/got)18
Apache/2.4.34 (Ubuntu) OpenSSL/1.1.1 (internal dummy connection)17
rest-client/2.1.0 (linux x86_64) ruby/3.2.2p5314
Mozilla/5.0 (compatible; CT-WP-Scanner/1.0; +https://example.com/bot)12
SEC-SGHE900/1.0 NetFront/3.2 Profile/MIDP-2.0 Configuration/CLDC-1.1 Opera/8.01 (J2ME/MIDP; Opera Mini/2.0.4509/1378; nl; U; ssr)11
Mozilla/5.0 (compatible; SecurityScanner/1.0)11
facebookscraper/1.0( http://www.facebook.com/sharescraper_help.php)10
MOT-V177/0.1.75 UP.Browser/6.2.3.9.c.12 (GUI) MMP/2.0 UP.Link/6.3.1.13.010
Mozilla/5.0 (compatible; startup-research/1.0)10
Jigsaw/2.2.5 W3C_CSS_Validator_JFouffa/2.09
Mozilla/5.0 (compatible; ModatScanner/1.0; +https://modat.io/)9
RootEvidence/1.09
Download Demon/3.5.0.118
MOTORIZR-Z8/46.00.00 Mozilla/4.0 (compatible; MSIE 6.0; Symbian OS; 356) Opera 8.65 [it] UP.Link/6.3.0.0.08
CSSCheck/1.2.28
Mozilla/5.0 (OS/2; Warp 4.5; rv:31.0) Gecko/20100101 Firefox/31.0 SeaMonkey/2.288
LG-GC900/V10a Obigo/WAP2.0 Profile/MIDP-2.1 Configuration/CLDC-1.18
Mozilla/5.0 (Unknown; UNIX BSD/SYSV system) AppleWebKit/538.1 (KHTML, like Gecko) QupZilla/1.7.0 Safari/538.18
portalmmm/2.0 N410i(c20;TB)8
Opera/9.80 (J2ME/MIDP; Opera Mini/8.0.35626/37.8918; U; en) Presto/2.12.423 Version/12.168
Mozilla/3.01Gold (Win95; I)8
Mozilla/5.0 (X11; U; SunOS sun4m; en-US; rv:1.4b) Gecko/20030517 Mozilla Firebird/0.68
Mozilla/4.0 (PSP (PlayStation Portable); 2.00)7
Mozilla/2.0 (compatible; Ask Jeeves/Teoma)7
Opera/9.80 (J2ME/MIDP; Opera Mini/5.0.16823/1428; U; en) Presto/2.2.07
Adobe Application Manager 2.07
Microsoft URL Control - 6.00.88627
grub-client-1.5.3; (grub-client-1.5.3; Crawl your own stuff with http://grub.org)7
Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.9a1) Gecko/20060702 SeaMonkey/1.5a7
Mozilla/3.0 (compatible; NetPositive/2.1.1; BeOS)6
Mozilla/5.0 (compatible; Yahoo! Slurp China; http://misc.yahoo.com.cn/help.html)6
Mozilla/5.0 (OS/2; Warp 4.5; rv:24.0) Gecko/20100101 Firefox/24.0 SeaMonkey/2.216
HTMLParser/1.66
Peach/1.01 (Ubuntu 8.04 LTS; U; en)6
POLARIS/6.01(BREW 3.1.5;U;en-us;LG;LX265;POLARIS/6.01/WAP;)MMP/2.0 profile/MIDP-201 Configuration /CLDC-1.16
MobileSafari/600.1.4 CFNetwork/711.1.12 Darwin/14.0.06
Mozilla/5.0 (PLAYSTATION 3; 2.00)6
Mozilla/5.0 (OS/2; U; OS/2; en-US) AppleWebKit/533.3 (KHTML, like Gecko) Arora/0.11.0 Safari/533.36
Vodafone/1.0/V802SE/SEJ001 Browser/SEMC-Browser/4.16
Mozilla/5.0 (SymbianOS/9.1; U; en-us) AppleWebKit/413 (KHTML, like Gecko) Safari/413 es506
SearchExpress6
Mediapartners-Google6
Avant Browser/1.2.789rel1 (http://www.avantbrowser.com)6
Mozilla/5.0 (compatible; Yeti/1.1; +https://naver.me/spd)5
Ruby5
SEC-SGHX820/1.0 NetFront/3.2 Profile/MIDP-2.0 Configuration/CLDC-1.15
WebZIP/3.5 (http://www.spidersoft.com)5
Mozilla/5.0 (SymbianOS/9.1; U; en-us) AppleWebKit/413 (KHTML, like Gecko) Safari/413 es705
LG-LX550 AU-MIC-LX550/2.0 MMP/2.0 Profile/MIDP-2.0 Configuration/CLDC-1.15
Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.115
P3P Validator5
FeedFetcher-Google; ( http://www.google.com/feedfetcher.html)5
Mozilla/5.0 (compatible; alexa site audit/1.0; +http://www.alexa.com/help/webmasters; )5
Mozilla/5.0 (SymbianOS/9.1; U; de) AppleWebKit/413 (KHTML, like Gecko) Safari/4135
Mozilla/4.0 (compatible; MSIE 5.15; Mac_PowerPC)5
Mozilla/5.0 (OS/2; Warp 4.5; rv:10.0.12) Gecko/20100101 Firefox/10.0.125
Mozilla/5.0 (OS/2; Warp 4.5; rv:38.0) Gecko/20100101 Firefox/38.05
Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML like Gecko) Version/7.2.1.0 Safari/536.2+5
SEC-SGHX210/1.0 UP.Link/6.3.1.13.05
Opera/9.60 (J2ME/MIDP; Opera Mini/4.2.14320/554; U; cs) Presto/2.2.05
Opera/9.60 (J2ME/MIDP; Opera Mini/4.1.11320/608; U; en) Presto/2.2.05
Mozilla/1.22 (compatible; MSIE 5.01; PalmOS 3.0) EudoraWeb 2.15
POLARIS/6.01 (BREW 3.1.5; U; en-us; LG; LX265; POLARIS/6.01/WAP) MMP/2.0 profile/MIDP-2.1 Configuration/CLDC-1.15
nook browser/1.05
Opera/9.80 (S60; SymbOS; Opera Mobi/499; U; ru) Presto/2.4.18 Version/10.005
Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:1.8.1.12) Gecko/20080303 SeaMonkey/1.1.85
Mozilla/4.0 (compatible; Dillo 3.0)5
w3m/0.5.15
Xenu Link Sleuth/1.3.85
RecordedFuture Global Inventory Crawler5
MizuCrawler/3.05
Mozilla/5.0 (compatible; GoogleOther; +https://developers.google.com/search/docs/crawling-indexing/overview-google-crawlers)5
W3C_Validator/1.305.2.12 libwww-perl/5.644
Mozilla/5.0 (OS/2; Warp 4.5; rv:45.0) Gecko/20100101 Firefox/45.04
Mozilla/5.0 (X11; CrOS aarch64 14526.89.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.133 Safari/537.364
Mozilla/5.0 (webOS/1.3; U; en-US) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/1.0 Safari/525.27.1 Desktop/1.04
Mozilla/2.02E (Win95; U)4
Mozilla/4.0 (compatible; MSIE 6.0; j2me) ReqwirelessWeb/3.54
libwww-perl/5.8204
Mozilla/4.77 [en] (X11; I; IRIX;64 6.5 IP30)4
Screaming Frog SEO Spider/8.14
Mozilla/5.0 (compatible; Konqueror/3.5; SunOS) KHTML/3.5.1 (like Gecko)4
Mozilla/5.0 (SymbianOS/9.1; U; en-us) AppleWebKit/413 (KHTML, like Gecko) Safari/413 es654
Mozilla/5.0 (OS/2; U; OS/2; en-US) AppleWebKit/533.3 (KHTML, like Gecko) QupZilla/1.3.1 Safari/533.34
wii libnup/1.04
W3C_Validator/1.6544
MOT-L7v/08.B7.5DR MIB/2.2.1 Profile/MIDP-2.0 Configuration/CLDC-1.1 UP.Link/6.3.0.0.04
MOT-V9mm/00.62 UP.Browser/6.2.3.4.c.1.123 (GUI) MMP/2.04
Mozilla/5.0 (OS/2; Warp 4.5; rv:10.0.12) Gecko/20130108 Firefox/10.0.12 SeaMonkey/2.7.24
Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:1.9.1b3) Gecko/20090429 Firefox/3.1b34
Mozilla/5.0 (compatible; Konqueror/4.1; DragonFly) KHTML/4.1.4 (like Gecko)4
SAMSUNG-SGH-A867/A867UCHJ3 SHP/VPP/R5 NetFront/35 SMM-MMS/1.2.0 profile/MIDP-2.0 configuration/CLDC-1.1 UP.Link/6.3.0.0.04
Mozilla/5.0 (compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user)4
FindFiles.net/1.0 (compatible; +https://findfiles.net/bot)4
Embed PHP library3
Mozilla/4.8 [en] (X11; U; SunOS; 5.7 sun4u)3
Mozilla/5.0 (OS/2; Warp 4.5; rv:31.0) Gecko/20100101 Firefox/31.03
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible3
Roku/DVP-4.1 (024.01E01250A)3
WebCopier v4.63
Mozilla/5.0 (Unknown; U; UNIX BSD/SYSV system; C -) AppleWebKit/527 (KHTML, like Gecko, Safari/419.3) Arora/0.10.23
Opera/10.61 (J2ME/MIDP; Opera Mini/5.1.21219/19.999; en-US; rv:1.9.3a5) WebKit/534.5 Presto/2.6.303
DoCoMo/2.0 SH901iC(c100;TB;W24H12)3
WDG_Validator/1.6.23
FAST-WebCrawler/3.8 (crawler at trd dot overture dot com; http://www.alltheweb.com/help/webmaster/crawler)3
Web Downloader/6.93
Mozilla/5.0 (en-us) AppleWebKit/525.13 (KHTML, like Gecko; Google Web Preview) Version/3.1 Safari/525.133
CVE-2025-55182-Checker3
DejaShip/1.0 (survival-checker)3
Mozilla/5.0 (X11; CrOS aarch64 12239.67.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.102 Safari/537.363
Mozilla/5.0 (compatible; YaK/1.0; http://linkfluence.com/; bot@linkfluence.com)2
Lemmy/0.18.3; +https://zerobytes.monster2
newspaperjs2
MetadataScraper2
Mozilla/5.0 (compatible; Miniflux/2.0.44; +https://miniflux.app)2
Iframely/1.3.1 (+https://iframely.com/docs/about)2
News%20Explorer/247 CFNetwork/1410.0.3 Darwin/22.6.02
Mozilla/5.0 (compatible; Feedspot/1.0 (+https://www.feedspot.com/fs/fetcher; like FeedFetcher-Google)2
trafilatura/1.6.1 (+https://github.com/adbar/trafilatura)2
Mozilla/5.0 (compatible; FlipboardProxy/1.2; +http://flipboard.com/browserproxy)2
newspaper/0.3.02
undici2
node-fetch/1.0 (+https://github.com/bitinn/node-fetch)2
Gregarius/0.5.2 ( http://devlog.gregarius.net/docs/ua)2
colly - https://github.com/gocolly/colly/v22
Mozilla/5.0 (OS/2; Warp 4.5; rv:45.0) Gecko/20100101 Firefox/45.0 SeaMonkey/2.42.9esr2
trafilatura/1.12.2 (+https://github.com/adbar/trafilatura)2
Java/1.6.0_132
EmailWolf 1.002
Mozilla/5.0 (BB10; Touch) AppleWebKit/537.10+ (KHTML, like Gecko) Version/10.1.0.2342 Mobile Safari/537.10+2
SAMSUNG-S8000/S8000XXIF3 SHP/VPP/R5 Jasmine/1.0 Nextreaming SMM-MMS/1.2.0 profile/MIDP-2.1 configuration/CLDC-1.1 FirePHP/0.32
Mozilla/5.0 (Mac OS X 13_2) AppleWebKit/537.36 (KHTML, like Gecko) Safari/102.0 Safari/537.362
Mozilla/5.0 (SymbianOS/9.1; U; en-us) AppleWebKit/413 (KHTML, like Gecko) Safari/4132
Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)2
fasthttp2
MizuCrawler/1.02
Terra Cotta 0.1 https://www.github.com/ceramicTeam/CeramicTerracotta2
NetAPI v12
Mozilla/5.0 (compatible; VelenPublicWebCrawler/1.0; +https://velen.io)2
Racket/6.8 (net/http-client)1
topicaxis1
Mozilla/5.0 (compatible; Embedly/0.2; +http://support.embed.ly/)1
Mozilla/5.0 (compatible; Embedly/0.2; snap; +http://support.embed.ly/)1
Hacky/1 CFNetwork/1390 Darwin/22.0.01
rss/4.5.61
MetaInspector/5.7.0 (+https://github.com/jaimeiniesta/metainspector)1
newspaper/0.2.81
Mozilla/5.0 (compatible; Miniflux/2.0.31; +https://miniflux.app)1
Mozilla/5.0 (compatible; Miniflux/2.0.36; +https://miniflux.app)1
Mozilla/5.0 (compatible; RSSClients/1.0)1
`Mozilla/5.01
shadowforce.io - sslshed/0.11
cc1
Mozilla/5.0 (X11; CrOS aarch64 14388.61.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.107 Safari/537.361
Offline Explorer/2.51
Opera/9.30 (Nintendo Wii; U; ; 2047-7; en)1
everyfeed-spider/2.0 (http://www.everyfeed.com)1
Mozilla/4.0 (PDA; PalmOS/sony/model prmr/Revision:1.1.54 (en)) NetFront/3.01
Fuzz Faster U Fool v2.1.01
Mozilla/5.0 (Mac OS X 13_2) AppleWebKit/537.36 (KHTML, like Gecko) Safari/129.0 Safari/537.361
Mozilla/5.0 (Mac OS X 13_2) AppleWebKit/537.36 (KHTML, like Gecko) Safari/111.0 Safari/537.361
Mozilla/5.0 (Mac OS X 13_2) AppleWebKit/537.36 (KHTML, like Gecko) Safari/120.0 Safari/537.361
Mozilla/5.0 (Mac OS X 13_2) AppleWebKit/537.36 (KHTML, like Gecko) Edge/126.0 Safari/537.361
Fuzz Faster U Fool v2.1.0-dev1
dubox;4.3.9;SM-M145F;android-android;15;JSbridge1.0.10;jointbridge;1.1.39;1
Java/1.8.0_3221
dubox;4.4.2;SM-A556E;android-android;15;JSbridge1.0.10;jointbridge;1.1.39;1
Mozilla/5.0 (compatible; UGAResearchAgent/1.0; Please visit: NISLabUGA.github.io)1
GoogleOther1
Mozilla/5.0 (compatible; showhn-cleaner/1.0)1
Mozilla/5.0 (compatible; showhn-cleaner/1.0; +https://news.ycombinator.com)1
Mozilla/5.0 AppleWebKit/605.1.15 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/605.1.151
subjs1
Mozilla/5.0 (compatible; KeyScanner/1.0)1
Mozilla/5.0 (compatible; Bytespider; spider-feedback@bytedance.com)1
pilot/1.0 (+https://github.com/ryan-king/pilot)1
Goosee-Audit/1.0 (+internal-security-audit)1
Mozilla/5.0 (compatible; Scanner/1.0)1
Mozilla/5.0 (compatible; pre-filter)1
Mozilla/5.0 (compatible; sitecheck/1.0)1
Mozilla/5.0 (compatible; myjob/1.0)1
LinkChecker/3.0 (async; +https://github.com/example)1
Bloglines/3.1 (http://www.bloglines.com)1
Mozilla/5.0 (compatible; SecurityResearch/1.0; )1
Source Code of user-agents.tsx
(import statements omitted for simplicity, click to expand)
import { proxy } from '../../../db/proxy.js'
import { pick } from 'better-sqlite3-proxy'
import {
  getOtherUserAgents,
  getUAStatsProgress,
} from '../../../db/user-agent.js'
import { Locale, Title } from '../components/locale.js'
import SourceCode from '../components/source-code.js'
import Style from '../components/style.js'
import { Context, getContextLanguage } from '../context.js'
import { o } from '../jsx/jsx.js'
import { Routes } from '../routes.js'
function agentTable(
  title: string,
  rows: [name: string, count: number][],
  locales: string,
) {
  // skip rows with zero count
  rows = rows.filter(row => row[1] > 0)

  // skip empty table
  if (rows.length === 0) return

  // sort by count descending
  rows.sort((a, b) => b[1] - a[1])

  return (
    <table>
      <thead>
        <tr>
          <th>{title}</th>
          <th style="word-break: normal;">Count</th>
        </tr>
      </thead>
      <tbody>
        {[
          rows.map(([name, count]) => (
            <tr>
              <td>{name}</td>
              <td>{count.toLocaleString(locales)}</td>
            </tr>
          )),
        ]}
      </tbody>
    </table>
  )
}

function Tables(attrs: {}, context: Context) {
  let locales = getContextLanguage(context) || 'en-US'
  return (
    <>
      <p>{getUAStatsProgress()}</p>
      {agentTable(
        'User Agent',
        pick(proxy.ua_type, ['name', 'count']).map(row => [
          row.name,
          row.count,
        ]),
        locales,
      )}
      {agentTable(
        'Bot Agent',
        pick(proxy.ua_bot, ['name', 'count']).map(row => [row.name, row.count]),
        locales,
      )}
      {agentTable(
        'Other Agent',
        getOtherUserAgents().map(row => [row.user_agent, row.count]),
        locales,
      )}
    </>
  )
}

let UserAgents = (
  <div id="user-agents">
    <h1>User Agents of Visitors</h1>
    {Style(/* css */ `
#user-agents table {
  border-collapse: collapse;
  margin: 1rem;
  display: inline;
}
#user-agents th,
#user-agents td {
  border: 1px solid var(--text-color, black);
  padding: 0.25rem 0.5rem;
  max-width: calc(90vw - 8rem);
  word-break: break-word;
}
`)}
    <p>This page demonstrates showing query result from database.</p>
    <p>
      Below list of user agents are collected from the visitor's HTTP header.
    </p>
    <Tables />
    <SourceCode page="user-agents.tsx" />
  </div>
)

let routes = {
  '/user-agents': {
    menuText: <Locale en="Visitor Stats" zh_hk="訪客統計" zh_cn="访客统计" />,
    title: (
      <Title
        t={
          <Locale
            en="User Agents of Visitors"
            zh_hk="訪客的用戶代理"
            zh_cn="访客的用戶代理"
          />
        }
      />
    ),
    description: (
      <Locale
        en="User agents of this site's visitors"
        zh_hk="此網站訪客的用戶代理資訊"
        zh_cn="此网站访客的用户代理资讯"
      />
    ),
    node: UserAgents,
  },
} satisfies Routes

export default { routes }