惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Microsoft Azure Blog
Microsoft Azure Blog
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
博客园_首页
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
小众软件
小众软件
F
Fortinet All Blogs
Microsoft Security Blog
Microsoft Security Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
Google DeepMind News
Google DeepMind News
Jina AI
Jina AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
aimingoo的专栏
aimingoo的专栏
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
宝玉的分享
宝玉的分享
有赞技术团队
有赞技术团队
J
Java Code Geeks
WordPress大学
WordPress大学
The Cloudflare Blog

Lobsters

Lunacy | Red Vice CIFSwitch: a non-universal Linux local root vulnerability RIPE NCC session fixation: poaching logins with an Atlas probe GNOME 2.20 but its Web Components Agentic Search for Context Engineering – Leonie Monigatti Garnix is shutting down [not OC] akashina.tngl.sh/jjc Concerning Emacs (and Jazz) Nitpicking the shell history scene in ‘Tron: Legacy’ What's cooking on SourceHut? Q2 2026 The tenth OpenPGP email summit Package managers that package package managers Clojure on Fennel part three: parsing WordPress at 23 Finding Miscompiles for Fun, Not Profit GitHub - creusot-rs/creusot: Creusot helps you prove your Rust code is correct. Announcing Rust 1.96.0 | Rust Blog A Love Letter to Neovim sqlite AGENTS.md Am I a Bad Friend? CSS vs. JavaScript • Josh W. Comeau Erlang Ecosystem Foundation - Supporting the BEAM community A brief note about slot access cost in Common Lisp Rethinking the GNOME clipboard issues Back to the Building Blocks’ Building Blocks Tech Notes: Theseus: translating win32 to wasm Fast is better than slow Content-addressed Rust builds (or, what kache actually caches) Intent to Prototype: Embedding API Canada’s Bill C-22 and the security cost of collecting more data
Keyboard latency probe
xkqr.org by · 2026-05-27 · via Lobsters

This web page is meant to test two aspects of your keyboard:

  1. Its latency (through a reaction time test), and
  2. Its tap duration distribution (through a paced tapping test).

The two types of test (reaction time and paced tapping) are intermixed during the test. When starting the test, you will first have a reaction time block, then a tapping block, then a reaction time block again, until you've had seven blocks of each. Each block takes about 30 seconds to finish, meaning the total test time is 3.5 minutes.

When the test is done, please describe your keyboard setup and then press Send to submit your results.

Multiple keyboards

If you have multiple keyboards (e.g. both external keyboard and built-in laptop keyboard), or multiple ways of connecting your keyboard (e.g. both USB and Bluetooth) I would greatly appreciate if you run the test one time for each keyboard and way to connect it. Do not mix keyboards within a test.

Reaction time test

The first test that runs is a reaction time test. When it starts, the big rectangle will say "wait..." and then after a random amount of time switch colour to green. When it does, you are supposed to tap any key as quickly as possible.

Paced tapping test

The second test that runs is a paced tapping test. When it starts, you will see a blinking yellow dot. Tap any key as briefly as possible when the dot lights up. It is important that you don't hold the key down, but just briefly tap it.

Technical issues

If you experience technical issues, or the instructions were vague, feel free to restart the test. Send only the data from the most successful run. I'm looking to test the abilities of your keyboard, not you as a person.


Look at the rectangular area below and click start.



Reaction time (stimulus → keydown), ms

Tap duration (keydown → keyup), ms