About // Gamepad Viewer

We built the controller check we couldn't find

One stubborn stick, a match slipping away, and no fast way to know if the game or the hardware was at fault. Gamepad Viewer is the answer we wished had existed. Open a page, press a button, and watch your controller respond the instant it happens.

Reading input in real time
8
Controller families supported
60 Hz
Live refresh, no perceptible lag
0
Ads, trackers, and signups
2022
Building this since day one
Origin

Why we built it

It started with an aim that kept drifting to the left during a ranked match. The stick sat at rest, untouched, yet the character on screen kept walking. The real frustration was not the drift itself. It was having no quick way to know whether the fault lived in the game, the settings, or the worn hardware under the thumb.

The tools that promised to settle the question were rough to use. Pop ups covered the screen. Some asked for an account before showing a single button press. Others pushed a download that led nowhere useful. So we made the page we wished had existed that night. Open it, press any button, and see the controller respond at once.

What began as a quick personal fix turned into something a lot of people seemed to need. Streamers wanted it on screen for their viewers. People returning faulty pads wanted proof for a warranty claim. We kept refining it, and that is the tool you use today.

The tool

What it actually does

At heart it is a live mirror of your gamepad. It reads input through the Gamepad API already built into modern browsers, so there is nothing to install and no driver to chase down.

See every input as it happens

Press a button and it lights up. Move a stick and the position updates instantly. Squeeze a trigger and watch the pressure climb from rest to full. It works with Xbox, PlayStation DualSense, Switch Pro, 8BitDo, and almost any standard controller over USB or Bluetooth.

Catch faults before they cost you

The viewer goes past a simple display. It flags stick drift the moment a resting stick reports movement it should not. It lets you tune a deadzone and feel the difference. It tests both rumble motors so you can tell a dead one from a healthy one, and it reports your polling rate so you know how often the controller is really talking to your computer.

Drop it straight into your stream

The background stays transparent, so you can paste the page address into OBS or Streamlabs as a browser source and your audience sees every input alongside the game. When you are done, export a timestamped log as a text file, which is useful evidence if you ever file a hardware claim.

Our rules

What we stand for

A tool that touches your hardware should earn your trust on the first visit. These are the rules we hold ourselves to, and they are not going to change.

Stays on your device

Every reading is processed locally. Nothing about your controller or your inputs is sent to a server, and even the exported log is built on your own machine.

Free, nothing hidden

No paywall, no premium tier, no feature behind a price, and not a single advertisement. Every diagnostic is open from the first click.

No accounts

No signup and no email handed over. There is no onboarding to sit through. You open the page and you are already testing.

Who it's for

Built for people who trust their gear

Plenty of different people land here for the same reason. A player checks a new pad before a competitive session. A streamer wants viewers to follow every move during a fast paced game. A speedrunner proves a clean run with no missed inputs. And anyone holding a controller that feels slightly off can find out, in under a minute, whether it is worth keeping, repairing, or returning.

What's next

Where we are headed

We treat this as a living project rather than a finished one. The plan is steady and unglamorous. Support more controllers as they arrive, sharpen the diagnostics so faults are even easier to spot, and add focused companion tools for the people who asked for them, all while keeping the core promise intact. Free to use, private by default, and clean enough that it stays out of your way.

Say hello

Found a bug, want a controller supported, or have an idea worth sharing? We read everything that comes in.

info.gpadviewer@gmail.com