Historical Performance Data aggregated from 52 community runs

Desktop Results:
Chrome 31 runs
String literally
173.8M/s
String based (return struct)
4.2M/s
clsx
4.2M/s
String based (if-else struct)
4.2M/s
Entries, filter, map, join
3.6M/s
Array based
3.2M/s
classnames
3.0M/s

Fastest: String literally (57.6x faster)

View exact numbers
  • String literally: 173,777,504 ops/sec
  • String based (return struct): 4,217,782 ops/sec
  • clsx: 4,207,108 ops/sec
  • String based (if-else struct): 4,193,002 ops/sec
  • Entries, filter, map, join: 3,641,877 ops/sec
  • Array based: 3,169,924 ops/sec
  • classnames: 3,017,030 ops/sec
Firefox 9 runs
String literally
1439.5M/s
String based (return struct)
5.7M/s
String based (if-else struct)
5.6M/s
Entries, filter, map, join
4.5M/s
clsx
3.7M/s
Array based
2.7M/s
classnames
2.5M/s

Fastest: String literally (576.0x faster)

View exact numbers
  • String literally: 1,439,539,328 ops/sec
  • String based (return struct): 5,686,046 ops/sec
  • String based (if-else struct): 5,626,920 ops/sec
  • Entries, filter, map, join: 4,482,966 ops/sec
  • clsx: 3,716,539 ops/sec
  • Array based: 2,747,777 ops/sec
  • classnames: 2,499,201 ops/sec
Safari 6 runs
String literally
386.7M/s
clsx
8.0M/s
classnames
6.0M/s
String based (return struct)
5.2M/s
String based (if-else struct)
5.0M/s
Entries, filter, map, join
4.6M/s
Array based
3.5M/s

Fastest: String literally (110.9x faster)

View exact numbers
  • String literally: 386,672,672 ops/sec
  • clsx: 7,966,980 ops/sec
  • classnames: 6,002,528 ops/sec
  • String based (return struct): 5,223,249 ops/sec
  • String based (if-else struct): 5,001,527 ops/sec
  • Entries, filter, map, join: 4,585,162 ops/sec
  • Array based: 3,486,184 ops/sec
Mobile Results:
Chrome 6 runs
String literally
471.4M/s
clsx
3.3M/s
classnames
2.9M/s
String based (return struct)
2.8M/s
String based (if-else struct)
2.7M/s
Entries, filter, map, join
2.6M/s
Array based
2.1M/s

Fastest: String literally (224.6x faster)

View exact numbers
  • String literally: 471,409,856 ops/sec
  • clsx: 3,320,676 ops/sec
  • classnames: 2,888,866 ops/sec
  • String based (return struct): 2,788,992 ops/sec
  • String based (if-else struct): 2,704,028 ops/sec
  • Entries, filter, map, join: 2,551,548 ops/sec
  • Array based: 2,099,014 ops/sec

Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.

Browser OS User Agent When Created
Chrome 142 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36 9 months ago
Chrome 141 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 9 months ago
Chrome 141 Linux Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 one year ago
Chrome 135 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 one year ago
Firefox 137 Linux Mozilla/5.0 (X11; Linux x86_64; rv:137.0) Gecko/20100101 Firefox/137.0 one year ago
Safari 18 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3.1 Safari/605.1.15 one year ago
Safari 16 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Safari/605.1.15 one year ago
Firefox 137 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:137.0) Gecko/20100101 Firefox/137.0 one year ago
Safari 18 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15 one year ago
Chrome Mobile 107 Android Mozilla/5.0 (Linux; Android 10; SM-G970F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Mobile Safari/537.36 one year ago
Firefox 137 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:137.0) Gecko/20100101 Firefox/137.0 one year ago
Chrome 133 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 one year ago
Chrome 133 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 one year ago
Firefox 134 Ubuntu Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:134.0) Gecko/20100101 Firefox/134.0 one year ago
Safari 18 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Safari/605.1.15 one year ago
Firefox 135 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:135.0) Gecko/20100101 Firefox/135.0 one year ago
Chrome 132 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36 one year ago
Chrome 132 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36 one year ago
Chrome 132 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36 one year ago
Safari 18 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15 one year ago
Chrome 132 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36 one year ago
Chrome Mobile 131 Android Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Mobile Safari/537.36 one year ago
Firefox 132 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:132.0) Gecko/20100101 Firefox/132.0 one year ago
Chrome 131 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 one year ago
Chrome 129 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 one year ago
Safari 17 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.6 Safari/605.1.15 one year ago
Chrome 128 Linux Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 one year ago
Chrome 128 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 one year ago
Chrome 127 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 one year ago
Chrome 126 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 2 years ago
Chrome 124 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 2 years ago
Chrome Mobile iOS 124 iOS 17.4 Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/124.0.6367.111 Mobile/15E148 Safari/604.1 2 years ago
Chrome 123 Linux Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 2 years ago
Chrome 124 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 2 years ago
Chrome 124 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 2 years ago
Chrome 124 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 2 years ago
Chrome 122 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 2 years ago
Chrome 122 Linux Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 2 years ago
Firefox 123 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0 2 years ago
Chrome 121 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 2 years ago
Chrome 121 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 2 years ago
Chrome 121 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 2 years ago
Chrome 120 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 2 years ago
Firefox 121 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0 2 years ago
Chrome 120 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 2 years ago
Chrome 120 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 2 years ago
Firefox 121 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0 2 years ago
Chrome Mobile 120 Android Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Mobile Safari/537.36 2 years ago
Chrome Mobile iOS 120 iOS 17.1 Mozilla/5.0 (iPhone; CPU iPhone OS 17_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/120.0.6099.101 Mobile/15E148 Safari/604.1 2 years ago
Chrome Mobile iOS 120 iOS 17.1 Mozilla/5.0 (iPhone; CPU iPhone OS 17_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/120.0.6099.101 Mobile/15E148 Safari/604.1 2 years ago
Chrome 119 Mac OS X 10.15.7 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 2 years ago
Chrome 119 Windows Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 Edg/119.0.0.0 2 years ago