How can I test whether my webcam works?
Click Check on this page and allow camera access when your browser asks. If the camera can be opened, you'll see "Camera access: granted" along with its device name, the resolution it opened at and its frame rate. If something blocks it, you get the browser's error message instead, which usually points straight at the cause.
What the test reports
A successful check prints four lines, for example:
Camera access: granted
Device: Integrated Webcam (0bda:5521)
Resolution: 640x480
Frame rate: 30 fps
| Line | Where it comes from |
|---|---|
| Camera access | Whether getUserMedia() returned a video stream |
| Device | The video track's label, the name your operating system gives the camera |
| Resolution | Width × height from the track's getSettings() |
| Frame rate | The reported frame rate, rounded to a whole number |
If the browser doesn't report a value, a ? appears in its place. The device name above is only illustrative; yours will read differently.
Your video stays on your device
The page asks for a video stream, reads the track's settings, and immediately calls stop() on every track. That's the whole test. The video is never attached to anything on the page, never recorded, and never sent over the network. You may see your camera's indicator light flash on for a moment; that's the brief opening, and it turns off as soon as the settings are read.
Your browser may remember that you granted permission. You can revoke it at any time from the site settings behind the padlock icon in the address bar.
Common errors and fixes
The text after "Could not access the camera:" is the browser's own message, so the exact wording varies between Chrome, Firefox and Safari. The underlying error types are standard, and MDN's getUserMedia page lists them:
| Error type | Typical message | What to do |
|---|---|---|
NotAllowedError |
Permission denied | Allow the camera in the address bar's site settings and reload. On macOS and Windows, also check the operating system's camera privacy settings for the browser. |
NotFoundError |
Requested device not found | No camera detected. Check the USB cable, try another port, or open the laptop lid if an external monitor is used with it closed. |
NotReadableError |
Could not start video source | Another app (Zoom, Teams, OBS) is holding the camera. Close it and try again. A driver problem can cause this too. |
| Browser lacks the API | "Your browser does not support camera access." | Update the browser. Camera access also requires a secure (HTTPS) page. |
A physical privacy shutter won't cause an error. The camera opens normally and the test passes, but a video call would show black, so check the shutter if you're troubleshooting a blank picture.
Reading the resolution
| Reported | Common name |
|---|---|
| 640x480 | VGA |
| 1280x720 | 720p HD |
| 1920x1080 | 1080p Full HD |
| 3840x2160 | 4K UHD |
Because this test doesn't request a size, the browser chooses a default mode, and a lower figure doesn't mean your camera is faulty. Video-call apps ask for higher resolutions and get them if the camera supports them. A frame rate well below 30 fps can be a sign of poor lighting, since many webcams slow down to expose each frame longer in the dark.
Which camera gets tested
The browser opens its default camera. With several cameras (a laptop's built-in one plus a USB webcam, say), the test reports whichever the browser picked. To test another, change the camera choice in your browser's site settings for this page, or temporarily unplug the one you don't want, then click Check again.
Step-by-step troubleshooting
- Close every other app that might use the camera.
- Reload this page and click Check.
- If prompted, choose Allow.
- If you get a permission error, fix it in the browser's site settings, then in your OS privacy settings.
- If you get "device not found", reconnect the camera and try a different port.
- Still failing? Try a different browser. If it works there, the problem is the first browser's settings, not the hardware.
To see what else your browser reports about your system, including screen size and pixel ratio, try What is my browser. To check how a website responds at different screen widths, there's the screen resolution tester. Developers curious about the media APIs used here will find the language basics in the JavaScript lessons.
Last updated