The first time you fire up Home Assistant, you get an auto-generated dashboard that looks like a spreadsheet designed in the nineties. Walls of switches, sensor values in tiny font, zero personality. I spent weeks looking at my dashboard before I realized I could actually make it look good.

Here's the thing: Home Assistant's dashboard system is incredibly powerful. It just doesn't know what you want until you tell it. This guide walks you through building something that looks like it belongs on a wall tablet, not a tech support ticket.

Step 1: Plan Your Layout Before You Build

Before you touch any YAML or card configurations, think about what you're actually looking at every day. Are you checking weather? Lights? Door locks? Thermostat? Temperature sensors?

There are three main approaches:

Rooms-based: Organize each room as a separate view. Kitchen lights, thermostat, coffee maker on one tab. Living room lights and TV on another. This is intuitive if you think of your home by location.

Categories-based: Group by function instead. "Lighting," "Climate," "Security," "Entertainment." This works if you control devices across multiple rooms together.

Floors-based: If you have a multi-story house, some people do one dashboard per floor. Less common, but clean if your home is already organized that way.

I use a hybrid: a main overview dashboard with top-level controls and status, then separate tabs for rooms where I dive deeper. Pick what feels natural for how you move through your house.

Step 2: Sections vs. Masonry—What's the Difference?

Home Assistant defaults to Sections view now (2025 and later). It works fine. Cards stack in sections, it's responsive on mobile, and it looks clean.

But there's also Masonry layout, which some people prefer. It arranges cards in columns and fills spaces more dynamically. Try both. Sections feels more organized to me, but Masonry looks slightly more polished.

To switch, edit your dashboard YAML:

views:
  - title: Home
    path: home
    layout:
      type: masonry

For Sections, just use:

views:
  - title: Home
    path: home
    layout:
      type: sections

Step 3: Install Custom Cards via HACS

Stock Home Assistant cards work, but they're vanilla. The magic happens when you install custom cards from HACS (Home Assistant Community Store). If you haven't set up HACS yet, do that first—it's essential.

Three cards I use in almost every dashboard:

Mushroom Cards

This is the most popular custom card set. Mushroom gives you modern, clean buttons for lights, switches, thermostats, and climate controls. They look intentional instead of generic.

Install via HACS (search "Mushroom"), then drop this into your dashboard:

type: custom:mushroom-light-card
entity: light.living_room
use_light_color: true
show_brightness_control: true
show_color_temp_control: true

That generates a clean button with brightness slider and color temperature adjustment. Way better than the default toggle.

Bubble Card

If you're viewing your dashboard on a tablet or phone, Bubble Card creates a floating navigation bar at the bottom. It's iOS-like and mobile-first. Some people find it unnecessary on desktop, but on a wall-mounted tablet it's perfect—thumb-accessible, clean hierarchy.

mini-graph-card

This one plots sensor history as a tiny sparkline graph. Temperature, humidity, power usage—anything numeric. Instead of a static number, you see the trend over the last 24 hours.

type: custom:mini-graph-card
entities:
  - sensor.living_room_temperature
hours_to_show: 24
show:
  extrema: true
  average: true

Step 4: Add a Floorplan View with Picture Elements

This is the showstopper. A picture-elements card with a simple house SVG or floor plan photo. You click on doors, lights, or zones and control them directly.

Create or find a simple SVG of your house layout. You can use Inkscape or draw one online. Then add this card:

type: picture-elements
image: /local/floorplan.svg
elements:
  - type: state-icon
    entity: light.living_room
    style:
      top: 45%
      left: 30%
      transform: scale(1.5)
  - type: state-badge
    entity: light.kitchen
    style:
      top: 45%
      left: 70%

Click on the living room lights right on the floor plan. It's intuitive, looks professional, and people actually want to use your dashboard.

Beautiful Home Assistant dashboard with floorplan

Step 5: Pick a Theme That Doesn't Look Like You Built It in a Basement

Default Home Assistant theme is functional but dull. HACS has dozens of community themes. I recommend:

Mushroom Theme: Matches the Mushroom cards perfectly. Clean, modern, works in light and dark mode. It's the safe choice because everything integrates.

Catppuccin: Beautiful minimal theme with warm colors. Feels thoughtful. Great if you want something that doesn't look corporate.

Install via HACS and set in your configuration.yaml:

frontend:
  themes: !include_dir_merge_named themes/

Then pick your theme in Settings > Appearance.

Step 6: Dashboard YAML Structure—Putting It Together

Here's a real dashboard structure that works:

views:
  - title: Home
    path: home
    layout:
      type: sections
    sections:
      - type: grid
        columns: 3
        cards:
          - type: custom:mushroom-light-card
            entity: light.living_room
            use_light_color: true
          - type: custom:mushroom-climate-card
            entity: climate.living_room
          - type: custom:mini-graph-card
            entities:
              - sensor.living_room_temperature

      - type: grid
        columns: 1
        cards:
          - type: picture-elements
            image: /local/floorplan.svg
            elements:
              - type: state-icon
                entity: light.living_room
                style:
                  top: 45%
                  left: 30%

This creates sections with a 3-column grid for quick controls and a full-width section for your floor plan.

Step 7: Tablet Mode—Mount It and Make It Shine

If you're wall-mounting a tablet as a home control panel, you need Fully Kiosk Browser (Android) or a similar solution for iPad. It keeps your dashboard running, auto-dims at night, and wakes the screen on motion.

Install a $15 mmWave sensor (like the Aqara Human Presence Sensor) and point it at the tablet. Create an automation:

automation:
  - alias: Wake Tablet on Motion
    trigger:
      - platform: state
        entity_id: binary_sensor.tablet_presence
        to: 'on'
    action:
      - service: shell_command.wake_tablet

That sends a wake signal when someone walks past. The tablet sits dark at night and comes to life when you approach.

Mushroom cards in action

Practical Tips I've Learned the Hard Way

Don't over-complicate your main view. You look at this every day. Keep the most-used controls on the home tab. Bury the guest bedroom light toggle in a separate room view.

Group related automations. If you're controlling morning routine (lights, coffee maker, thermostat), put those cards in a section together with a clear label.

Use icons thoughtfully. Custom icons exist for almost everything. mdi:lightbulb-on instead of generic icons makes scanning faster.

Mobile responsiveness matters. Test your dashboard on your phone. Cards that look good on desktop might stack weird on mobile. Use the grid layout and adjust columns for smaller screens.

Themes can break cards. If you install a new theme and suddenly a card looks broken, it's probably a CSS conflict. The Mushroom theme plays nicest with Mushroom cards, but this is generally true for all themes—stick with a coherent set.

What Not to Do

Don't try to cram every integration onto one dashboard. You'll end up with a confused mess that takes five minutes to load.

Don't use the auto-generated dashboard as your primary view. You'll get bored of it, and it wastes space.

Don't skip setting up HACS. Yes, it's an extra step. Yes, it's worth it.

Don't forget that YAML is whitespace-sensitive. Indentation matters. If your dashboard breaks after editing, check your spacing first.

The Final Dashboard

After a few hours of configuration, you'll have something you're actually proud to show off. A dashboard that reflects how you actually use your home. Not a spreadsheet, not a tech demo—something that looks intentional.

Browse HACS Custom Cards | Mushroom Card Documentation | Home Assistant Dashboard Docs


This is an investment that pays off every single day. Every time you walk into your living room and your presence sensor triggers the lights and your dashboard loads with one tap, you'll remember why you spent an evening setting this up. The out-of-the-box experience is terrible. The customized experience is excellent. Build it right, and you're done tweaking for months.