Table of Contents

  1. Why People Get Confused
  2. What Are Scenes?
  3. What Are Scripts?
  4. Key Differences at a Glance
  5. When to Use Scenes
  6. When to Use Scripts
  7. Combining Scenes, Scripts & Automations
  8. Practical Examples

Why People Get Confused

When you're new to Home Assistant, the distinction between Scenes and Scripts can feel arbitrary. Both seem to "do stuff" — turn on lights, set thermostats, lock doors. So why does HA have two separate concepts? And when should you use which?

The confusion is understandable, but once you understand the mental model behind each, the distinction becomes clear and you'll naturally reach for the right tool. Let's break it down.

What Are Scenes?

A Scene in Home Assistant is a snapshot of desired device states. Think of it as a "preset" — you tell HA what state you want multiple entities to be in, and activating the scene puts them all in those states simultaneously.

Scenes are about state, not actions. A scene doesn't "turn on a light" — it says "I want this light to be ON, at 50% brightness, with color temperature 3000K." The scene stores the desired end state, not the process of getting there.

Creating a Scene

Go to Settings → Automations & Scenes → Scenes → Add Scene. Give it a name, then use the "Add entities" button to select which devices to include. For each entity, set its desired state. Save, and your scene is ready to activate from the dashboard, voice assistant, or an automation.

Example Scene: "Movie Time"

Activating this scene instantly applies all these states at once. It's perfect for setting a "mood" across multiple devices.

What Are Scripts?

A Script is a reusable sequence of actions. Where scenes capture state, scripts define behavior — a series of steps that execute in order. Scripts support delays, conditions, loops, variables, and calling other scripts or services.

Scripts are about process. A script can say: "Turn on the hallway light, wait 30 seconds, then turn it off again." That kind of timed, sequential behavior is impossible to express in a scene.

Creating a Script

Go to Settings → Automations & Scenes → Scripts → Add Script. The script editor uses the same action editor as automations — you can add service calls, delays, conditions, device actions, and more. Scripts appear as entities you can call from automations, dashboards, or voice assistants.

Example Script: "Good Morning Routine"

  1. Turn bedroom light on at 10% brightness
  2. Wait 5 minutes
  3. Gradually increase bedroom light to 80%
  4. Turn on kitchen lights at 100%
  5. Start the coffee maker switch
  6. Send a notification: "Good morning! Coffee is brewing."

This sequence with delays and multiple steps is exactly what scripts are designed for. A scene cannot express timing, transitions, or conditional logic.

Key Differences at a Glance

FeatureScenesScripts
PurposeDesired end stateSequence of actions
Supports delaysNoYes
Supports conditionsNoYes
Supports loopsNoYes
Multi-entity controlYesYes
Can pass variablesNoYes
Activated as entityYes (scene.turn_on)Yes (script.run)
Appears in dashboardYesYes
Works with voice assistantsYesYes
Best forLight moods, presetsRoutines, sequences

When to Use Scenes

Reach for a scene when you want to:

Scenes are also great because they're human-friendly. Non-technical family members can activate "Dinner Scene" or "Night Scene" from a dashboard button without needing to understand the underlying entities.

When to Use Scripts

Reach for a script when you want to:

Pro tip: Scripts are excellent for creating reusable building blocks. Instead of duplicating the same 5 actions in 3 different automations, create one script and call it from each automation. This makes maintenance much easier.

Combining Scenes, Scripts & Automations

The real power comes from combining all three. Here's the conceptual model that works well:

For example: An automation triggered at sunset calls a script. The script checks if anyone is home, and if so, activates a "Evening Lights" scene. The automation handles the when, the script handles the logic, and the scene handles the device states. Each tool does what it's best at.

Practical Examples

Scene: "Bedtime"

All lights off. Bedroom nightlight at 5%. Thermostat set to 19°C. Alarm panel armed. Activate with a dashboard button or voice command before bed.

Script: "Leave Home"

Turn off all lights → turn off all switches → lock front door → set thermostat to eco mode → send notification "Home secured and eco mode activated." Triggered by an automation when last person leaves, or manually via a "Leaving" dashboard button.

Scene + Script: "Movie Night"

Script: Check if it's after 6 PM (condition). If yes, activate "Movie Time" scene. Turn on the TV. Dim the hallway light. Send a notification "Movie mode on 🍿". The scene handles the lighting preset; the script handles the logic and additional actions.

Summary

Use Scenes for device state presets — lighting moods, climate settings, multi-device configurations you want to recall with a single tap. Use Scripts for action sequences — anything with timing, conditions, or multiple steps. And use Automations to trigger both automatically based on time, presence, sensor readings, or any other event in your home.

SmartWired participates in the Amazon Associates Programme. We may earn a commission from qualifying purchases at no extra cost to you.