A counter for browser-received scrolling
This tool answers how many valid WheelEvent inputs reached its active card and how those events were distributed. It is deliberately different from a timed speed test: there is no required fixed window, and cumulative counts, net direction, goal progress, and uninterrupted direction streaks remain central throughout the session.
What the Scroll Wheel Counter Counts
The scroll wheel counter increments once for each valid browser-received wheel event while the session is running and the pointer is over the active capture card. It separates Scroll Up, Scroll Down, Horizontal Left, and Horizontal Right events. Total valid events includes all four directions. Net signed events is vertical only: Down adds one, Up subtracts one, and horizontal input leaves the vertical net unchanged.
The capture boundary is intentional. Moving the wheel over navigation, article text, or another part of the page does not change the mouse scroll counter. During a running session, the active card prevents its own default page movement so you can keep the pointer in place. Outside that card, normal page scrolling remains available; pausing or finishing also restores ordinary behavior inside it.
Browser Events vs Physical Wheel Steps
A WheelEvent is a browser interface, not a direct readout from a mouse encoder. One physical action may be coalesced, accelerated, transformed, or represented by several events. A touchpad can produce the same interface without physical notches at all. For that reason, the visible event count is not labeled as hardware ticks, detents, wheel rotations, or actual notches.
The event also carries delta values and a deltaMode. Those values may be expressed in pixels, lines, or pages. This counter uses the dominant axis and sign to classify an event, but it does not pretend that the delta magnitude reveals physical travel. It excludes ctrlKey-associated zoom input, near-zero noise, and events where both axes are too substantial to choose one direction honestly.
Up, Down, Left, and Right Counts
Vertical input with a negative deltaY enters the Up count and positive deltaY enters Down. Horizontal input follows deltaX in the same way for Left and Right. These names describe the event signs received by the page; application settings, browser behavior, or natural-scroll preferences can affect how an input feels elsewhere. Use the direction test when you need a controlled calibration rather than a running total.
Mixed-axis gestures are common on touchpads and some free-scrolling devices. The counter declines to force a strongly diagonal event into one bucket. That choice keeps the four direction totals explainable, while a quality flag shows that mixed input occurred. The raw-event inspector is a better companion when you need to see both deltaX and deltaY fields together.
How Goal Mode Works
Choose Count Up, Count Down, Both Directions, or Total Events before starting. Both Directions counts only Up plus Down, while Total Events includes horizontal activity. Presets provide goals of 100, 500, and 1,000; a custom whole-number target can range from 1 to 100,000. Invalid input blocks the start control instead of silently changing the goal.
Reaching a goal displays an accessible status message and does not reset or stop the session. You may continue counting, pause, or end the session and save its summary. An optional short sound is off by default and plays only after you enable it. No sound is necessary to understand completion, so muted devices and users who prefer quiet feedback receive the same result information.
How Direction Streaks Are Calculated
A direction streak is a sequence of adjacent valid events with the same dominant direction. The current streak increases while that direction continues; changing from Up to Down, Down to Left, or any other valid direction begins a new streak and increments Direction changes. The longest value retains the largest streak observed during the session.
Separate gestures should not be fused into one impressive-looking run. A gap longer than 1.2 seconds ends the current streak. Pausing, page hiding, or window focus loss also ends it. Neutral, zoom-related, and mixed-axis events are rejected rather than changing direction. These centralized rules make the result repeatable and prevent excluded input from masquerading as a new valid streak.
Why Counts Vary Across Devices and Browsers
Wheel firmware, operating-system settings, browser coalescing, acceleration, free-spin modes, touchpad gesture processing, and application handlers can all change the stream a web page receives. Even two runs with the same hand motion can contain different event totals. Compare repeated sessions in the same browser and setup before treating a difference as meaningful.
A scroll speed test adds timing-rate summaries; the counter instead lets a session last as long as needed and preserves cumulative direction structure. Neither tool measures USB polling rate. When a program scrolls differently from this page, inspect its extensions, overflow container, zoom behavior, and input mapping rather than assuming the wheel is defective from one count.
Practical Uses
Use an online scroll counter to practice a steady one-direction gesture, verify that both vertical directions reach the browser, count activity during a repeatable workflow, or observe whether a horizontal tilt action is received. A custom target can make accessibility exercises or input demonstrations easier to repeat, provided the count is described as browser events.
For diagnosis, pair this page with the direction test and raw WheelEvent log. For performance comparisons, use the dedicated speed test under a fixed duration. For a recreational task, the virtual 100-meter challenge applies a separate normalized progress protocol rather than treating a raw event count as distance.
Privacy and Local Processing
Counting, goal checks, and score summaries run in this browser. The tool does not send raw wheel events or the saved summary to a site API. Saving is opt-in: enable the local-save control after ending the session, then explicitly save. The shared V2 history keeps at most 20 counter summaries and no unbounded raw log.
Saved records remain in this browser profile and can be viewed, exported as JSON or CSV, or deleted on Test Results. They do not sync across devices. Other people who use the same browser profile may see them, so clear saved history on a shared machine. If localStorage is blocked, the page explains that persistence is unavailable.
Related tests
Choose a companion page based on the question you want to answer.
- Compare your scroll speed runs under a fixed timer.
- Calibrate scroll direction with controlled Up and Down phases.
- Inspect every WheelEvent field in the local raw-event tester.
- Manage saved counter summaries on Test Results.
Online Scroll Wheel Counter questions
Does this count physical wheel notches?
No. It counts valid WheelEvent inputs received by the active browser card. Browser event counts cannot establish physical detents, rotations, or hardware ticks.
Why is an event excluded?
Near-zero input, ctrlKey zoom input, and strongly mixed-axis input are excluded because they cannot be classified as one ordinary direction honestly.
Does the page count while I scroll the article?
No. Counting occurs only while the session is running and the pointer is inside the active capture card. The rest of the page retains normal scrolling.
What ends a direction streak?
A valid direction change, a gap longer than 1.2 seconds, pause, page hiding, or window focus loss ends the current streak.
Where is my counter history stored?
Only an opted-in summary is stored in this browser's localStorage through the shared V2 history. Test Results can export or delete it.