Skip to content
DeviceBench

Free online webcam test

Webcam test that shows what your camera really sends

Press Start, allow the camera once, and the live picture appears beside the resolution, frame rate and facing mode read back from the running track. A ladder then asks that same track for 640×480, 1280×720, 1920×1080, 2560×1440 and 3840×2160 in turn, so you learn what the camera will actually deliver instead of what the packaging claimed. What no browser can see is the hardware behind the driver — no sensor size, no lens, and no model number beyond the name your operating system prints.

  • 100% free
  • No signup
  • 5 resolutions probed
  • Measured frame rate
  • Nothing recorded

The preview stays dark until you press Start. Nothing is mirrored here, so a serial number you hold up comes out the way it is printed rather than reversed.

Nothing has been asked for yet

Press Start. Your browser asks once per address, and this page cannot open a camera without that answer.

Resolution
Negotiated rate
what the driver agreed to
Delivered rate
counted over 2 s
Frames presented
Device

Unnamed camera

Facing mode not reported. No video inputs visible to this page until you allow access once.

Resolution ladder

Not run yet. Each rung is offered to the running track one after another, and the camera is left on whichever one it accepted highest.

Everything above is read back from the live track, which is all a page is allowed to see: no sensor size, no lens, no model number beyond the name the operating system prints, and no way to tell a blurred picture from a camera that is simply out of focus.

How to test a webcam

Three passes: get the camera open, make sure it is the right one, then find out what it will do.

  1. Press Start and answer the one prompt

    The prompt appears under the address bar, and it only appears because you asked for it. A page that opens the camera as it loads gets refused by reflex, and the refusal is filed against the address rather than the moment, so the prompt never comes back. Allow it once and the indicator light beside the lens comes on within a second.

  2. Pick the camera you actually meant to test

    A laptop with a USB webcam plugged into it has two video inputs, and the browser hands out whichever one it used last rather than the better one. The picker appears as soon as a second input exists. Device names stay blank until the first grant — a page you have not trusted is not told what hardware is attached — so if the list reads Camera 1 and Camera 2, allow access and it fills in.

  3. Read the four numbers, then walk the ladder

    Resolution and the negotiated rate come from the driver's side of the agreement. The delivered rate is counted from frames the video pipeline really presented, and it sinks below the negotiated figure in a dim room while that figure sits unchanged. Then press Find the highest resolution: the page asks the open track for each size in turn and leaves the camera on the largest one that worked.

Technical specifications

Resolutions probed640×480, 1280×720, 1920×1080, 2560×1440 and 3840×2160, applied to the track that is already open
Frame rateTwo figures — the rate the driver negotiated, and the rate counted from frames actually presented over the last 2 seconds
Frame counterPresented frames since the preview opened, which is about 1,800 after a minute at 30 fps
Cameras listedEvery video input the system exposes; names are empty strings until the first grant and fill in afterwards
Permission states told apartSix — not asked, prompt open, granted, blocked, no camera attached, and page served over plain HTTP
PreviewLetterboxed rather than cropped and never flipped, so a 4:3 camera keeps its shape and a label held to the lens reads left to right
Data keptNone — no frame is recorded, copied to a canvas or sent, and the track ends when you press Stop
PriceFree, no signup, and no cap on how long the preview stays open

Frequently asked questions

Why does the preview say 640×480 when I bought a 1080p webcam?

Because nobody asked the camera for more. A plain request carries no size at all, and the default video mode in Chromium browsers is 640×480, so a perfectly good camera reports the smallest thing it can do. Press Find the highest resolution and the ladder asks the running track for each step up to 3840×2160, which is also what a meeting client does behind your back when it picks a quality level.

The camera light is on but the picture is black.

Something opaque is in front of the sensor. Most business laptops made since 2019 have a sliding privacy shutter on the bezel, a few millimeters wide and easy to leave closed for months, and external cameras often ship with a clip-on cover. If the shutter is open and the frame is still black, look at the delivered frame counter: if it is climbing, frames are arriving and the room is simply too dark for the exposure the camera chose.

It says another program is using the camera. Which one?

On Windows a camera is handed to one process at a time, and the program holding it is usually not the one you are looking at. Meeting clients keep running in the notification area after the window is closed, and streaming or virtual-camera software claims the device at login. Quit those first, then any vendor utility that shipped with the laptop, and press Start again — the error clears the moment the device is released.

I pressed Block by mistake. How do I get the prompt back?

The block is stored against this address, so no amount of reloading will bring the prompt back on its own. In Chrome and Edge the icon at the left of the address bar becomes a camera with a line through it; open it and set the camera to Ask or Allow. Firefox puts the same control behind the padlock, and Safari keeps it under Settings for This Website. Reload afterwards, because the page keeps the old answer until it does.

The browser says it is allowed, but Windows still gives nothing.

There is a second gate above the browser, and it is switched off on a fair number of machines. Open Settings, then Privacy and security, then Camera, and check both Camera access at the top and the entry for your browser in the list below it. macOS has the equivalent under System Settings, Privacy and Security, Camera — and there the browser must be quit and reopened after you tick it, because the permission is read when the application starts. Some laptops also have a hardware kill switch on a function key or a physical slider on the side.

Does it matter that this page is on https?

It matters completely: the capture API is restricted to secure contexts. Over plain http a browser does not merely refuse the camera, it removes the media-devices object from the page altogether, so a page loaded from an insecure address cannot tell the difference between that and a browser from 2011. The one address the rule forgives is localhost, which counts as secure so that developers can work.

Can this tell me my webcam's model or how many megapixels it has?

No — a web page sees the driver, never the hardware behind it. The only identity available is the label the operating system prints, which is often a generic string like Integrated Camera, and there is no field anywhere in the API for sensor size, aperture or megapixels. The resolution ladder is the closest thing to a spec sheet you can get from a browser, because it asks the camera what it will do rather than what it is.

About how a browser negotiates with a camera

Opening a camera is a negotiation, not a command. The page states what it would like — a size, a rate, a front or rear lens — and the driver answers with the closest mode its firmware advertises; reading the track back afterwards is the only way to find out what was agreed. The part almost every webcam page skips is that the agreement can be reopened on a track that is already running, which is how the ladder here walks five resolutions without a second prompt and without the indicator light blinking off between them. Pages that never reopen it show you whatever the default mode was and leave you to conclude your camera is poor.

The two frame-rate figures diverge for a physical reason, and it is exposure. A camera holds the shutter open longer as light falls, and once it needs longer than a thirtieth of a second it cannot produce thirty frames in that second, so it halves to 15 and then to 7.5 while still reporting 30 as the negotiated rate. Bandwidth sets the other ceiling: one uncompressed 1920×1080 frame is 4.1 MB, thirty of them a second is close to 1 Gbit/s, and USB 2.0 carries 480 Mbit/s at best — which is why nearly every webcam sends compressed MJPEG instead, and why a busy hub can quietly cost you frames. If you want the same numbers as milliseconds per frame, the hz to ms converter does that conversion for any rate.

When a camera does not open at all, four gates stand between the page and the sensor and they fail in a fixed order: the address must be secure, the browser must have a stored Allow for it, the operating system must have the camera switched on for that browser, and no other program may be holding the device. Most tools collapse all four into one sentence asking you to allow access, which is why so many people conclude their webcam is broken when a checkbox in system settings is off. If the picture here is fine and you only wanted to look at yourself, the webcam mirror drops the readouts and fills the screen; if the camera is only half of what you are about to need, the video call test runs it alongside the microphone and the line.

Where the picture from your camera goes

Every number on this page is worked out by JavaScript running in the tab you are reading it in. Nothing you type, paste or open is uploaded, logged or kept, which is also why the tools carry on working after you disconnect from the network.

The preview is a live track attached to a video element and nothing more. No frame is copied into a canvas, no recorder is created, and there is deliberately no Save button on this page — the ladder reads numbers off the track and never touches the pixels. Press Stop and the track ends; the light going out beside the lens is the hardware confirming it.