Home Assistant’s camera card options range from the built-in Picture Entity card to the Advanced Camera Card for multi-camera grids, PTZ, and clips.
Adding a live camera feed to your Home Assistant dashboard should be straightforward, but the number of card options and configuration details can turn a five-minute job into an afternoon of forum scrolling. The native Picture Entity card handles a single camera stream with minimal setup. For multi-camera views, PTZ control, clip browsing, or activity overlays, custom cards like the Advanced Camera Card and Picture Glance card bring the features a security-minded setup actually needs. Below is a direct comparison of every viable option — what each card does, how to install it, and where it falls short — so you can pick the one that matches your camera setup today.
Camera Card Options For Home Assistant: Which One Fits Your Setup?
Four cards cover nearly every dashboard camera need in Home Assistant: the built-in Picture Entity card, the community-developed Advanced Camera Card, the Picture Glance card, and the Camera Gallery card. The right choice depends on whether you need single-camera live view, multi-camera grids, PTZ control, or event clip browsing.
The table below maps each major feature to the cards that support it. If you are still picking a camera to feed these cards, our tested roundup of the best cameras for Home Assistant covers models that integrate cleanly with RTSP, WebRTC, and Frigate.
| Feature | Available On | Notes |
|---|---|---|
| Live streaming (native) | Picture Entity | Set camera_view to live (default is auto) |
| Live streaming (custom) | Advanced Camera, Picture Glance, Camera Gallery | Default behavior on all three cards |
| Multi-camera grid | Advanced Camera | YAML grid_columns parameter required |
| PTZ control | Advanced Camera, Picture Glance | Entity or tap_action configuration |
| Clip / snapshot browsing | Advanced Camera | Mini-gallery built into the card |
| Activity overlays | Advanced Camera | Binary sensor conditions in YAML |
| Event gallery | Camera Gallery | Requires WebRTC integration |
How The Native Picture Entity Card Works
The Picture Entity card is pre-installed in every Home Assistant instance and is the fastest way to show a single camera feed on a dashboard. By default it shows a still snapshot; to enable live video you must explicitly set the camera_view parameter to live in the card configuration.
To add it, open your dashboard, click Add Card, select the By card tab, and choose picture entity card. Set the entity to your camera (for example camera.front_door). Under card configuration, set camera_view to live if you want a continuous stream instead of periodic snapshots. The card accepts an optional aspect_ratio value — useful when mixing cameras of different resolutions so the dashboard stays visually uniform.
This card has no built-in PTZ support, no multi-camera grid mode, and no clip browsing. It is the right choice when you need a single straightforward live view and do not want to install HACS or manage YAML card definitions.
Setting Up The Advanced Camera Card For Multiple Cameras
The Advanced Camera Card by Dermot Duffy is the most capable third-party option. It supports live streams from multiple cameras arranged in a grid, PTZ control via on-screen buttons, clip and snapshot browsing through a mini-gallery, and activity overlays triggered by binary sensor states.
Installation requires the Home Assistant Community Store (HACS). Search for Advanced Camera Card in the HACS frontend store, install it, then add it to a dashboard by selecting Add Card and choosing Advanced Camera Card from the card list. The YAML configuration defines each camera under the cameras key — for example camera_entity: camera.front_door_live_view. To enable a grid layout, set live.display.mode to grid and define grid_columns with a number like 3 or 5.
For activity overlays, specify a binary_sensor entity and the state that triggers the overlay text — for instance showing MOTION DETECTED when a motion sensor turns on. The card’s GitHub page at dermotduffy/advanced-camera-card includes a full YAML reference and examples for every feature.
Why Won’t My Live Stream Display?
The most common reason a live stream stays black or shows only a snapshot is the camera_view setting. On the Picture Entity card, the default is auto, which refreshes snapshots rather than streaming video. Change it to live and the stream should appear.
When using RTSP streams, protocol selection is the next culprit. An rtsps:// URL with certificate validation issues will fail silently. Switching to rtspx:// or configuring go2rtc to handle the proxy often resolves the connection. Remember that the NVR, cameras, and Home Assistant server must all be on the same local network for RTSP streams to work on dashboards — remote access typically breaks without a go2rtc proxy.
For the Camera Gallery card, live viewing requires the WebRTC integration to be installed separately. Without it the card can display recorded clips but cannot show a live feed.
Configuring PTZ Control With Picture Glance
The Picture Glance card by Thomas Gunia combines an image display with entity state icons overlaid on top. It also supports PTZ control when configured with directional entity buttons.
Select your camera entity, then define separate entities for left, right, up, and down movement. Enable the Show code editor option. For each directional entity, set an icon and change the tap_action to button.press — the default tap_action opens a dialog, which does not trigger PTZ movement. After saving, the overlaid buttons appear on the camera image and each tap sends a press command to the corresponding PTZ entity.
| Issue | Likely Cause | Fix |
|---|---|---|
| Black screen on Picture Entity card | camera_view set to auto instead of live | Change to camera_view: live in card config |
| RTSP stream fails to load | rtsps:// certificate validation | Use rtspx:// or proxy through go2rtc |
| PTZ buttons open a dialog | tap_action default is show_dialog | Change to button.press per direction entity |
| Activity overlay not showing | Binary sensor condition syntax error | Verify state: “on” and entity ID in YAML |
| Grid layout defaults to vertical stack | Missing grid_columns parameter | Add live.display.mode: grid + grid_columns |
| Camera Gallery card shows no live view | WebRTC integration not installed | Install WebRTC integration via HACS |
| Local image path not found | File access not configured | Use Samba or Studio Code Server add-on |
Which Card Is Best For Multiple Cameras?
The Advanced Camera Card is the only option that natively supports a multi-camera grid. With live.display.mode set to grid and grid_columns defining how many cameras per row, you can tile four, six, or more camera feeds on a single dashboard card. The Picture Entity and Picture Glance cards each show one camera per card instance, so a multi-camera dashboard with those cards requires repeating the card for every feed — which works but consumes more screen space and lacks unified controls.
For a security-focused dashboard with four or more cameras, the Advanced Camera Card saves significant configuration time and provides consistent PTZ and overlay behavior across all feeds. Install it through HACS, define each camera entity, set your grid columns, and the layout renders automatically.
Final checklist for picking your camera card: count your cameras, decide whether you need PTZ or clip browsing, and confirm your camera feeds use RTSP or WebRTC. The Picture Entity card handles one camera with live video in under two minutes. The Advanced Camera Card handles multiple cameras with full controls in about fifteen minutes through HACS. The choice is straightforward once you match the card to the number of feeds you actually manage.
FAQs
Does the built-in Picture Entity card support live streaming?
Yes, but only after you change the camera_view parameter from auto to live in the card’s YAML configuration. The default auto setting refreshes still snapshots rather than displaying a continuous video stream.
Can I control PTZ cameras directly from a dashboard card?
Yes, using either the Advanced Camera Card or the Picture Glance card. Both support PTZ movement when you configure directional entities and set the tap_action to button.press for each direction.
Is HACS required to install third-party camera cards?
HACS is the recommended method for the Advanced Camera Card, Picture Glance card, and Camera Gallery card. Manual YAML installation is also possible by downloading the card files and referencing them in your configuration, but HACS handles updates automatically.
What causes a black screen when I add a camera card?
The most common causes are the camera_view defaulting to auto instead of live, an RTSP protocol mismatch (rtsps:// vs rtspx://), or the Home Assistant server and cameras being on different network segments.
How many cameras can I display on a single Advanced Camera Card?
There is no hard limit. The card supports grid layouts defined by the grid_columns parameter — setting it to 4 displays up to four cameras per row, and the grid scrolls vertically to accommodate additional feeds.
References & Sources
- Dermot Duffy. “Advanced Camera Card for Home Assistant.” GitHub repository with full YAML reference, installation guide, and feature examples.
- Home Assistant. “Picture Glance Card Documentation.” Official docs covering configuration, PTZ setup, and entity overlays.
- Home Assistant. “Picture Entity Card Documentation.” Official docs for the built-in camera card, including camera_view parameter and aspect ratio settings.
- card.camera. “Advanced Camera Card — Feature Overview.” Official project site with demo and configuration walkthrough.
