Home Assistant Floorplan: Control Your Smart Home from an Interactive Map

Imagine tapping a room on your tablet and the lights turn on. Glancing at your wall panel and seeing every sensor, camera, and device on a visual map of your actual home. That's what a floorplan dashboard gives you. This guide shows you how to build one, from simple image overlays to fully animated SVG plans.

Check Your Devices Dashboard Examples

What Is a Home Assistant Floorplan?

A floorplan dashboard replaces the standard list of entities with a visual, bird's-eye view of your home. Instead of scrolling through switches and sensors, you see your actual rooms with interactive controls placed exactly where devices are located.

Tap to Control

Tap a room to toggle lights. Tap a thermostat icon to adjust temperature. Tap a camera to see the live feed. Every entity becomes a clickable element on your map.

Real-Time Status

Rooms glow when lights are on. Temperature readings update live. Motion sensors flash when triggered. Door sensors show open or closed. Your entire home at a glance.

Wall Panel Ready

Mount a tablet on the wall, open your floorplan dashboard, and you've got a command center. Guests intuitively understand it because they can see which room is which.

Three Ways to Build a Floorplan Dashboard

Home Assistant offers multiple approaches depending on how much time you want to invest and how fancy you want the result to look.

MethodDifficultyVisual QualityAnimationsBest For
Picture Elements CardEasyGoodLimitedQuick setup, beginners
HA Floorplan (SVG)MediumExcellentFull CSS + SVGInteractive, animated plans
3D Rendered ImageAdvancedStunningLimited (image overlay)Show-off dashboards

Our recommendation: Start with Picture Elements. It takes 30 minutes to get a working floorplan. You can always upgrade to HA Floorplan or a 3D render later.

Step 1: Create Your Floorplan Image

Every method starts with an image of your home's layout. Here are the best tools for creating one.

Floorplanner.com

Free tier available | Web-based

The most popular choice for Home Assistant floorplans. Draw your rooms with exact dimensions, add furniture if you want, then export as a PNG. The 2D view works perfectly as a dashboard background. Clean lines, professional look, zero learning curve.

Sweet Home 3D

Free, open source | Windows/Mac/Linux

Desktop app that lets you model your home in 2D and 3D simultaneously. Draw walls, add doors and windows, furnish rooms, then export either a top-down 2D view or a rendered 3D perspective. Great for creating those eye-catching isometric views.

Inkscape / Figma (SVG)

Free | For HA Floorplan card

If you're going the HA Floorplan route, you need an SVG file with named layers and elements. Inkscape (desktop, free) or Figma (web, free tier) let you draw vector floorplans where each room, light, and sensor gets its own ID that Home Assistant can target with CSS.

Tips for a great floorplan image

  • Use a dark background if your Home Assistant theme is dark. White floorplans on dark dashboards look jarring.
  • Keep it simple. Skip furniture unless it helps orient people. You want clean room outlines.
  • Match your dashboard aspect ratio. If the tablet is landscape, make the image landscape.
  • Export at 2x resolution (e.g., 2560x1600 for a 1280x800 tablet) for crisp rendering on high-DPI screens.
  • Label rooms in the image itself. Saves you from adding text overlays later.

Method 1: Picture Elements Card (Easiest)

The Picture Elements card is built into Home Assistant. You set a background image (your floorplan), then position entity icons, state labels, and service call buttons on top of it using percentage-based coordinates.

How It Works

  1. Upload your floorplan image to /config/www/ (accessible via File Editor or Samba add-on)
  2. Create a new dashboard view and add a Picture Elements card
  3. Set the background image to /local/floorplan.png
  4. Add elements for each device: state icons, state labels, or service call buttons
  5. Position elements using percentage coordinates (top/left from 0% to 100%)

Example YAML Configuration

type: picture-elements
image: /local/floorplan.png
elements:
  # Living room light (tap to toggle)
  - type: state-icon
    entity: light.living_room
    style:
      top: 45%
      left: 30%
      "--paper-item-icon-color": >-
        {{ 'var(--leaf-400)' if is_state('light.living_room', 'on')
           else 'var(--sand-500)' }}

  # Kitchen temperature
  - type: state-label
    entity: sensor.kitchen_temperature
    style:
      top: 25%
      left: 65%
      color: white
      font-size: 14px

  # Front door lock
  - type: state-icon
    entity: lock.front_door
    style:
      top: 85%
      left: 50%
    tap_action:
      action: toggle

  # Camera feed (tap to show)
  - type: state-icon
    entity: camera.backyard
    icon: mdi:cctv
    style:
      top: 10%
      left: 80%
    tap_action:
      action: more-info

Conditional Styling

Make rooms visually change based on state. For example, add a colored overlay that appears when lights are on:

  # Room glow overlay
  - type: conditional
    conditions:
      - condition: state
        entity: light.living_room
        state: "on"
    elements:
      - type: custom:html-element
        tag: div
        style:
          top: 45%
          left: 30%
          width: 20%
          height: 25%
          background: "rgba(62, 99, 48, 0.15)"
          border-radius: 8px
          pointer-events: none

Method 2: HA Floorplan (Advanced, Beautiful)

The ha-floorplan custom card uses SVG files where each room, device, and sensor is a named element. Home Assistant targets these elements with CSS rules and JavaScript bindings, creating truly dynamic, animated floorplans.

What Makes It Special

CSS Animations

Rooms can smoothly change color based on temperature. Lights can glow, pulse, or dim to match their actual brightness. Door icons can rotate to show open/closed state.

Pixel-Perfect Placement

Since elements are part of the SVG itself, everything aligns perfectly. No guessing percentage coordinates. Your light icon sits exactly where the light fixture is drawn.

Dynamic Text

Bind entity states directly to SVG text elements. Temperature readings, humidity percentages, power consumption numbers all update in real time within the plan itself.

Getting Started with HA Floorplan

  1. Install via HACS: Search for "ha-floorplan" in the HACS frontend store
  2. Create your SVG in Inkscape or Figma. Give each room and device element a unique ID (e.g., id="light.living_room")
  3. Create a CSS file with rules for each state (on/off/temperature ranges)
  4. Configure the card with rules mapping entities to SVG elements and CSS classes
  5. Upload SVG + CSS to /config/www/floorplan/

Example CSS for Room Lighting

/* Room fills based on light state */
.light-on {
  fill: rgba(255, 220, 100, 0.2);
  transition: fill 0.5s ease;
}

.light-off {
  fill: rgba(0, 0, 0, 0);
  transition: fill 0.5s ease;
}

/* Temperature color scale */
.temp-cold { fill: rgba(66, 133, 244, 0.15); }
.temp-comfortable { fill: rgba(76, 175, 80, 0.1); }
.temp-warm { fill: rgba(255, 152, 0, 0.15); }
.temp-hot { fill: rgba(244, 67, 54, 0.15); }

/* Door open/closed */
.door-open { transform: rotate(-90deg); transform-origin: left center; }
.door-closed { transform: rotate(0deg); }

/* Motion detected pulse */
.motion-detected {
  animation: pulse 1s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 0.3; }
  50% { opacity: 0.8; }
}

Method 3: 3D Rendered Floorplans

For the ultimate visual impact, create a 3D model of your home and render it as a high-quality image. The rendered image becomes your dashboard background, with interactive elements layered on top using Picture Elements.

Popular 3D Tools

Sweet Home 3D

Free, open source

Draw walls in 2D, see the 3D model update in real time. Huge library of free furniture models. Export top-down or isometric views at any resolution. The community favorite for Home Assistant 3D floorplans.

Blender

Free, open source

Professional 3D modeling and rendering. Steeper learning curve, but produces photorealistic results. If you want your floorplan to look like an architectural visualization, Blender is the way to go.

Floorplanner 3D

Free tier, web-based

Same tool as the 2D version, but with a 3D view toggle. Less control than Sweet Home 3D, but you can go from zero to a decent 3D render in under an hour without installing anything.

Isometric vs. Top-Down

Top-down views are easier to work with for placing interactive elements (straight grid, simple coordinates). Isometric/3D perspective views look more impressive but make element positioning trickier because of the angle distortion. For a first build, go top-down. Add the isometric view later as a "wow" upgrade.

Floorplans on Wall-Mounted Tablets

A floorplan dashboard reaches its full potential when it's always visible. Wall-mounted tablets turn your floorplan into a smart home command center that anyone in the house can use.

Recommended Tablet Setup

Budget: Amazon Fire HD 10

~$100 / 10.1" display

Install Fully Kiosk Browser (via ADB sideload) for kiosk mode with screen wake on motion. Good enough display, great price. The most popular choice in the HA community.

Mid-Range: Samsung Galaxy Tab A

~$180 / 10.4" display

Better display quality, runs the official Home Assistant Companion app natively. Smoother animations and faster response for complex floorplans with many elements.

Premium: iPad (10th gen)

~$350 / 10.9" display

Best display quality and smoothest performance. The Home Assistant Companion iOS app is excellent. Use Guided Access for kiosk mode. Overkill for most, but gorgeous.

Mounting Tips

  • Power: Route a USB cable through the wall to a hidden outlet, or use a PoE-to-USB adapter if you have Ethernet nearby
  • Mount: 3D-printed mounts (Thingiverse has dozens), VidaMount, or a simple picture frame with the tablet behind it
  • Screen burn-in: Use screen dimming on a schedule. Fully Kiosk Browser can dim to near-black at night and wake on motion via the front camera
  • Battery health: Some tablets support "battery saver" charging modes that stop at 80%. Use this to extend battery life for always-on use
  • Placement: Hallway or kitchen entrance works best. Somewhere you naturally pass multiple times a day

Pro Tips for Better Floorplans

Use Multiple Floors

Create separate floorplan views for each floor of your home. Add navigation buttons (or swipe gestures) to switch between them. This keeps each view clean and focused instead of cramming everything into one image.

Combine with Cards

Put your floorplan on the left (or top), and regular cards on the right (or bottom). Temperature graphs, weather, energy usage, or a camera grid. The floorplan provides the overview, cards provide the detail.

Tap vs. Hold Actions

Use tap for the most common action (toggle light) and hold for secondary actions (open brightness slider, show more-info). This keeps the interface clean while still giving you full control.

Theme Your Image to Match

If you use a dark HA theme, make your floorplan image dark too. Match the wall colors to your theme's card background. Match text colors. Consistent theming makes the whole thing feel like a real product, not a DIY hack.

Start Small, Iterate

Don't try to add every device on day one. Start with lights in the main rooms. Once that works and looks good, add temperature sensors. Then cameras. Then door sensors. Building it up gradually means each addition gets placed thoughtfully.

Custom Cards That Help

Install card-mod for custom CSS styling on any card. Use browser-mod for popup dialogs when tapping floorplan elements. Layout-card helps position the floorplan alongside other cards exactly how you want.

Weekend Project: Your First Floorplan

Here's a realistic timeline for building a great floorplan dashboard from scratch.

Saturday AM

Draw your floorplan

Use Floorplanner or Sweet Home 3D. Measure your rooms (roughly is fine). Export a clean PNG. 1-2 hours.

Saturday PM

Build the Picture Elements card

Upload image, add entity icons for your main lights and sensors. Get the positioning right. 2-3 hours.

Sunday

Polish and expand

Add conditional styling, room glow effects, more devices. Set up a dedicated dashboard view. Optionally mount a tablet. 2-4 hours.

Not Sure Which Devices Work with Home Assistant?

Before building your floorplan, check which of your current smart home devices are compatible. Our free scan tells you exactly what works, what needs a bridge, and what you might want to replace.

Scan Your Devices Free

Frequently Asked Questions

What is the best floorplan tool for Home Assistant?

For most people, Floorplanner.com (free web tool) combined with the built-in Picture Elements card is the best starting point. It takes the least effort and produces clean results. If you want animations and dynamic styling, upgrade to HA Floorplan with an SVG created in Inkscape or Figma.

Can I use a photo of my actual floor plan?

Yes, if you have architectural drawings or a builder's plan, you can use that as your background image. Scan or photograph it, clean it up in an image editor if needed, and use it directly in a Picture Elements card. Some people also trace over their real plans in Inkscape to create a cleaner SVG version.

Does the floorplan update in real time?

Yes. All entity states update via Home Assistant's WebSocket connection. When a light turns on, the icon changes immediately. When a temperature sensor reports a new value, the label updates. There's typically less than a second of delay.

How many devices can I show on a floorplan?

There's no hard limit, but more than 30-40 visible elements on a single view starts to feel cluttered. Use multiple views (one per floor), conditional visibility (only show details when you tap a room), or a combination layout with the floorplan alongside regular cards for detailed info.

Can I have multiple floorplans for different floors?

Absolutely. Create a separate dashboard view for each floor, each with its own Picture Elements card and floorplan image. Add navigation buttons or use swipe navigation to switch between floors. Some people also use a small overview image with clickable zones that link to each floor's detailed view.