Camera Resolution & FPS Test

See your webcam's real active resolution and a genuinely measured frame rate, counted live from actual delivered video frames.

LIVE VIDEO FRAME DIAGNOSTICS · LOCAL-ONLY

Camera Resolution & FPS Pro

● CAMERA OFF

Compare the camera's reported frame-rate setting with frames actually delivered to this browser. All processing stays on your device.

How accurate? “Measured FPS” comes only from requestVideoFrameCallback, not an animation loop or a guessed driver rate. It reflects browser-delivered preview frames; it is not a sensor-level hardware certification. No images or video are saved or uploaded.
Ready. Choose optional preferences, then start the camera. Browser permission and HTTPS are required.

Private live preview

Camera is off · Preview starts only after you allow access.
No active camera00:00 session

Observed frame intervals

Each plotted point is an interval between consecutive observed video-frame callbacks. A slow interval may come from lighting, browser scheduling or device load—not necessarily a camera defect.

Live readings

Active stream resolution—Browser track settings
Measured delivery FPS—5-second sample
Camera-reported FPS—Not a measured FPS
Frames observed0Frame callbacks in sample
Median interval—Milliseconds
P95 interval—Milliseconds
Slow intervals—> 1.5× sample median
Measuring progress0%Runs 5 seconds

The selected resolution and FPS are preferences; actual negotiated settings can differ. Media-track frame rate is reported, not the requested value.

Session measurements (latest 8)

RunMeasured FPSReported FPSResolutionMedian / P95 (ms)Slow intervals
No completed measurements yet.

CSV includes timing statistics only; no camera device IDs, images or video. Backgrounding the tab, video interruption or device disconnect cancels the measurement instead of reporting an unreliable FPS.

★ ★ ★ ★ ★
No ratings yet — be the first

What Is a Camera Resolution & FPS Test?

This tool reports your webcam's actual active resolution the instant it starts streaming, and - where your browser supports it - counts real delivered video frames over a 5-second window to calculate a genuine measured frame rate. This is different from simply reading a "requested" frame rate value your camera driver reports, since a camera can be asked for 30fps and still deliver less in poor lighting or under system load; this test counts what's actually arriving, not just what was requested.

How to Use the Camera Resolution & FPS Test

  1. Use an HTTPS connection (or localhost). Choose your camera if multiple cameras appear. You may optionally select an ideal resolution (480p, 720p or 1080p) and target FPS; Auto lets your browser negotiate the defaults.
  2. Click Start Camera & Measure and grant camera permission. The live preview opens locally. Nothing is recorded or uploaded.
  3. Keep the tab visible and let the fixed 5-second measurement finish. Avoid switching tabs or disconnecting the webcam while it runs.
  4. Read Active Stream Resolution and the camera's Reported FPS from its browser-exposed settings. These are different from the Measured Delivery FPS, which comes from real video-frame callbacks.
  5. Use Median / P95 Frame Interval, the frame-interval chart, and the Slow Intervals count to inspect preview timing. These values describe observed browser delivery rather than physical camera-sensor timing.
  6. Change the room lighting or close demanding apps, then click Measure Again to compare the next five-second run. Changing camera or requested quality requires Start Camera & Measure again.
  7. Use Export CSV for a local timing-only report, or Reset Results to clear the session history. Click Stop & Release to turn the camera off and release its stream; leaving the tab also stops it.
  8. If your browser does not support requestVideoFrameCallback, you will see Unsupported for measured FPS—not an invented reading. Try a compatible browser for frame timing measurements.

How It Works

Resolution comes from the active video track's getSettings() data, which reports the real width and height currently being streamed. Frame rate measurement uses the requestVideoFrameCallback API, which - where supported - fires a callback exactly once for every actual video frame delivered to the page, letting this tool count real frames over a fixed 5-second window and calculate a true average frames-per-second figure. Where that API isn't available, this test reports only the resolution and the driver-requested frame rate honestly, rather than guessing at a measured number it cannot actually calculate.

Understanding Your Results

  • Measured FPS closely matches Requested FPS - your camera is delivering its full expected frame rate under current conditions.
  • Measured FPS noticeably lower than Requested FPS - commonly caused by low lighting, since many cameras automatically reduce frame rate to gather more light per frame, or by high system CPU load competing for processing time.
  • "Not supported" for Measured FPS - your browser doesn't implement requestVideoFrameCallback yet; resolution and requested FPS are still accurate, just not the real measured count.
  • Resolution lower than your camera's advertised maximum - some cameras default to a lower resolution unless a specific higher resolution is explicitly requested by the application using them.

Browser Limitations

Frame rate measurement via requestVideoFrameCallback is currently best supported in Chromium-based browsers like Chrome and Edge; Firefox and Safari support varies and may not expose this API. Where it's unavailable, honest reporting of that limitation is more useful than a fabricated number this tool has no way to actually calculate.

Common Mistakes to Avoid

  • Testing in low light and expecting full frame rate - many cameras automatically drop frame rate in dim conditions to improve exposure; this is a driver decision, not a bug in this test.
  • Running other camera-heavy apps at the same time - video calls or recording software running simultaneously can compete for camera bandwidth and processing.
  • Expecting measured FPS in an unsupported browser - switch to a Chromium-based browser if you specifically need the measured frame-count reading.

Frequently Asked Questions

What's the difference between "Requested FPS" and "Measured FPS"?

Requested FPS is what your camera driver reports as its configured target frame rate; Measured FPS is the actual number of frames counted arriving at the browser over the test window, which can differ from the request under real-world conditions like low light.

Why does my measured FPS drop in a dark room?

Many cameras automatically lower their frame rate in low light to increase exposure time per frame, producing a brighter but slower video feed - this is expected camera behavior, not a fault.

Why does my browser show "Not supported" for measured FPS?

The requestVideoFrameCallback API needed for real per-frame counting currently has limited support outside Chromium-based browsers.

Is any of my video recorded during this test?

No. Video is only displayed live and analyzed for frame timing; it is never recorded, saved, or transmitted anywhere.

Can I change which resolution my camera streams at?

This tool reports whatever resolution your camera and browser negotiate by default; changing that typically requires adjusting settings within the specific application requesting the camera, since this test is a diagnostic reader rather than a camera configuration tool.

Conclusion

Seeing your camera's real measured frame rate next to what it was asked to deliver gives you a genuine read on how it's performing right now, not just what the spec sheet claims. For a broader look at your camera feed and overall quality, pair this with the Webcam Tester.