Camera Not Working in Your Browser? 6 Fixes

A black rectangle where the camera should be. Almost every case is one of six causes, and five of them take under a minute to fix.

6 min read
Illustration of a browser window with a camera permission prompt

You open a photo booth, the page loads, and then nothing. A black rectangle, a spinning icon, or a permission box that appears for half a second and vanishes. It is a frustrating failure because everything looks fine - the site works, the camera light is off, and there is no obvious error to search for.

Almost every case comes down to one of six causes, and five of them take under a minute to fix. This guide works through them in the order that resolves the most cases fastest, so you can stop at the first one that applies.

It applies to any browser-based camera tool, not only ours.

First: are you inside another app's browser?

This is the most common cause by a wide margin, and the least obvious. If you tapped a link inside Instagram, TikTok, Facebook, Snapchat, LinkedIn or a messaging app, the page did not open in Safari or Chrome. It opened in that app's built-in browser - an embedded web view that looks like a browser but is not one.

These in-app browsers frequently restrict camera access entirely, or hold the camera for the host app and refuse to release it. There is no setting you can change from inside them.

How to tell

  • There is no address bar, or the address bar is not editable.
  • There is an ✕ or "Done" in the top corner instead of tabs.
  • The app's name or logo appears somewhere in the browser chrome.

The fix

Open the page in a real browser. Tap the ⋯ or ⋮ menu, then "Open in Safari", "Open in Chrome" or "Open in browser". If there is no such option, copy the link and paste it into your browser manually.

Second: is the page on HTTPS?

Browsers only allow camera access in what the specification calls a secure context. In practice that means the address must begin with https:// - or be localhost, for developers.

On plain http://, the camera request is refused silently by the browser before the page ever sees it. No permission prompt appears, which is exactly what makes this one confusing: it does not look like a permission problem because you were never asked for permission.

Check the address bar. If you see "Not secure" or a crossed-out padlock, that is the cause. Retype the address with https:// at the front.

Third: permission was denied and remembered

If you tapped "Block" or "Don't Allow" once - even accidentally, even months ago - the browser remembers that decision for that site and will not ask again. It simply refuses.

Chrome, Edge and other Chromium browsers

  1. Click the padlock (or the sliders icon) at the left of the address bar.
  2. Find Camera in the list.
  3. Set it to Allow.
  4. Reload the page.

Safari on macOS

  1. Safari menu → Settings → Websites → Camera.
  2. Find the site in the list and set it to Allow.
  3. Reload.

Safari on iPhone and iPad

  1. Tap the ᴀA icon at the left of the address bar.
  2. Tap "Website Settings".
  3. Set Camera to Allow.
  4. Reload.

Firefox

Click the padlock → Connection secure → More information → Permissions, then clear the "Use the Camera" block. Firefox also has a "Remember this decision" checkbox on the original prompt which is easy to tick by accident.

Fourth: another app is holding the camera

On Windows and on many Linux setups, only one application can use the camera at a time. If Zoom, Teams, Slack, Discord, OBS, Skype or FaceTime has the camera open - even minimised, even in a meeting you already left - the browser cannot get it. This usually produces a black preview rather than an error.

Quit those applications entirely rather than closing their windows. Several of them keep running in the system tray or menu bar and keep the camera claimed.

Where to check for apps still holding the camera
SystemWhere to look
WindowsTask Manager → Processes, and the system tray at the bottom right
macOSThe menu bar, plus Force Quit (⌘⌥Esc). A green dot near the camera means it is in use
AndroidRecent apps - swipe them all away
iPhone / iPadAn orange or green dot in the status bar shows the camera or mic is active

macOS and recent Windows versions do allow some sharing, but drivers vary and virtual-camera software such as OBS or Snap Camera very often breaks it. If you have a virtual camera installed, try selecting the physical camera explicitly.

Fifth: the operating system is blocking it

Separately from the browser's own permission, the operating system has a permission for whether that browser may use the camera at all. If this is off, the browser will show its prompt, you will grant it, and nothing will happen - which is a particularly maddening combination.

macOS

System Settings → Privacy & Security → Camera. Make sure your browser is listed and switched on. macOS requires the browser to be fully quit and reopened after changing this - a reload is not enough.

Windows

Settings → Privacy & security → Camera. Check that "Camera access" is on, that "Let apps access your camera" is on, and that "Let desktop apps access your camera" further down the page is also on. That last one is separate and is frequently the culprit.

Android

Settings → Apps → your browser → Permissions → Camera → Allow. Some manufacturer skins add a second battery-optimisation layer that can also interfere.

iOS

Settings → Safari (or Chrome) → Camera → Allow. Also check Settings → Screen Time → Content & Privacy Restrictions, which can disable the camera system-wide and is often left on from a parental-controls setup.

Sixth: hardware, drivers and the physical shutter

If none of the above applies, verify the camera works at all. Open your operating system's own camera app - Camera on Windows, Photo Booth on macOS, the stock camera app on a phone. If that also fails, the problem is not the browser.

  • Check for a privacy shutter. Many laptops have a physical sliding cover, and several have a keyboard shortcut (often F8 or F10 with a crossed-out camera icon) that disables the camera in firmware.
  • Reconnect a USB webcam and try a different port. Front-panel USB hubs are a common source of intermittent failures.
  • Update or reinstall the driver. On Windows: Device Manager → Cameras → right-click → Uninstall device, then reboot. Windows reinstalls it automatically and this fixes a surprising proportion of cases.
  • Restart. Genuinely. A stuck camera process that survives quitting the app will not survive a reboot.

The 60-second diagnostic

If you want to skip the reading, run through this in order and stop when it works:

  1. Did you arrive from a social app? Open the link in Safari or Chrome instead.
  2. Does the address start with https:// ? If not, fix that.
  3. Click the padlock in the address bar. Is Camera set to Allow?
  4. Quit Zoom, Teams, Discord and anything else that uses a camera. Completely.
  5. Check the OS privacy setting for your browser. Restart the browser afterwards.
  6. Open your system camera app. If that fails too, it is hardware or drivers.
  7. Restart the device.

A note on what browsers are actually doing

It is worth understanding why this is fiddly, because it is fiddly on purpose. Camera access is one of the most sensitive permissions a website can request, and browsers have deliberately made it awkward: the connection must be encrypted, the request must be triggered by something you did rather than firing on page load, the permission is per-site rather than global, and the operating system holds a veto on top.

The result is four separate gates that all have to be open. Most failures are one gate being shut, which is why working through them in order resolves things so much faster than trying random fixes.

It is also why a browser-based booth never asks you to install anything - the security model is already in the browser. That trade-off is discussed further in browser photo booth versus app.

Once the camera is running, the booth takes about thirty seconds to produce a strip. If lighting is your next problem, the lighting guide covers it.

Frequently Asked Questions

Why does my camera not work on a website opened from Instagram?

Links tapped inside Instagram, TikTok, Facebook and similar apps open in that app's embedded web view rather than a real browser, and those web views often restrict camera access entirely. Use the ⋯ menu to choose "Open in Safari" or "Open in Chrome", or copy the link into your browser manually.

Why is there no camera permission prompt at all?

Usually one of two things: the page is on http:// rather than https://, in which case browsers refuse the request before the page sees it, or you previously chose Block for that site and the browser remembered. Check the padlock icon in the address bar for both.

How do I re-enable camera access after blocking it?

Click the padlock at the left of the address bar, find Camera, set it to Allow and reload. On iPhone, tap the ᴀA icon then Website Settings. On macOS Safari, use Safari → Settings → Websites → Camera.

Why is my camera preview black even though permission is granted?

Another application is almost certainly holding the camera - Zoom, Teams, Discord, OBS and FaceTime are the usual causes, and closing their window is not enough because they often keep running in the tray or menu bar. Quit them fully, then reload.

I granted permission but nothing happens. What now?

The operating system has a separate camera permission from the browser. On macOS check System Settings → Privacy & Security → Camera and then fully quit and reopen the browser. On Windows check Settings → Privacy & security → Camera, including the "Let desktop apps access your camera" toggle further down the page.

Does an online photobooth work on iPhone and Android mobile browsers?

Yes. Safari on iOS and Chrome on Android fully support browser camera access through standard APIs. If you opened the booth link from inside an app like Instagram or TikTok, tap the options menu and choose 'Open in Browser' so the camera can initialize properly.

Sources and further reading

← Back to blog
Follow @app.lensbooth for photo strip ideas and virtual photo booth updates.
Share your photo strips and tag @app.lensbooth to get featured.