Choose pair and start
Choose A/D, W/S or an opposing arrow pair. Release both keys, then Start Test. The large keys show browser-reported state, not hidden physical sensor readings.
Follow both physical hold sequences. Compare browser-received events and possible opposing-input behaviors.
Physical keyboard required. Changing this test does not change your keyboard settings. Browser-held state is not a direct reading of physically held keys.
Release both keys before starting. Complete each physical step and mark it with the button or Enter. Only real direction-key events enter the event log.
Not Observed
Not Observed
Checkpoints are your declarations, stored separately from browser key events. They are not inferred from a hidden or suppressed key.
D = keydown, U = keyup. Shading shows browser-observed overlap between arrivals. The horizontal axis is received event order, not elapsed-time spacing or physical press order; exact relative times are in the event list.
Times are rounded to 0.1 ms for display; this does not guarantee 0.1 ms timer resolution. Equal or close times cannot identify a shared USB report.
No direction events yet.
| Sequence | Physical Code | Type | Relative Time | Browser Held After Event |
|---|
Each attempt retains at most 200 events. Overflow invalidates classification instead of reconstructing missing history.
Physical keyboard required. Do not type passwords or sensitive information. Events stay in page memory. Fn, media keys, and OS-reserved shortcuts may not reach your browser.
These descriptions are informed by Razer’s Snap Tap explanation and Wooting’s SOCD explanation. These references explain possible behaviors, not an identification method for your device.
Choose A/D, W/S or an opposing arrow pair. Release both keys, then Start Test. The large keys show browser-reported state, not hidden physical sensor readings.
Hold the first key, add the second, release the second, then release the first. Mark each completed physical step with the checkpoint button or Enter. Checkpoints are separate from actual browser events.
Finish and confirm that you followed the hold instructions. Reverse Order and repeat. Only two confirmed, coherent attempts can produce a candidate behavior. Download local CSV/JSON or copy a summary.
Both Inputs Observed means both codes were present in the browser-held set at the declared both-held checkpoint in both orders. It does not prove that a game uses both directions. A transient overlap during a switching event is shown in the timeline but does not establish this classification.
Possible Last Input Priority requires first-only, second-only during the declared overlap, and first-only again after the second is released, with matching release/restore events in both orders. Switching and restoration pairs must be within a conservative 50 ms association window; this is a grouping heuristic, not USB-report identification. Possible Neutral Mode instead observes Neither at both-held checkpoints and restoration afterwards.
Possible First Input Priority follows the first direction in both orders. Possible Absolute Priority follows the same fixed direction in both orders. These candidates describe observed patterns; the same events can be explained by interception, dropped input or other software. A website cannot identify a brand, firmware, actuation depth or depth-priority algorithm.
Missing checkpoints, unconfirmed actions, incomplete releases, conflicting orders, interruption, overflow or ambiguous timing produce Inconclusive. Event and checkpoint times use the same performance.now() origin for each attempt. Equal timestamps cannot prove physical order; close events cannot prove one USB report. Timeline spacing represents arrival order, with actual relative times in the list.
Check your game's current rules before enabling SOCD or Snap Tap features. Rules can differ by game, server and competition. This tool provides no current allow/ban list.
Simultaneous Opposing Cardinal Directions describes opposite direction inputs such as left and right. A device or software may resolve them with neutral, last, first or fixed priority; both inputs may also reach the browser.
Snap Tap is a name used by Razer for last-input-priority behavior between selected keys. Similar observed sequences may have other causes; this test does not identify that brand or firmware.
When opposing inputs overlap physically, the later input may replace the earlier one. Releasing it may restore the still-held first input. This tool compares both user-confirmed orders and reports only a possible pattern.
No. Browser events do not expose firmware, raw USB reports, physical actuation depth or hidden suppressed keys. This cannot distinguish a particular vendor or depth-based algorithm such as Rappy Snappy.
There may be insufficient events, missing or unconfirmed checkpoints, contradictory orders, unreleased keys, quantized timestamps, overflow, IME or focus interruption. Repeat both orders carefully; a missing event does not prove failure.
Check your game's current rules before enabling SOCD or Snap Tap features. Policies vary by game, server and competition, and may change. This tool does not maintain an allow/ban list.