The glossary covers terms which are used around Home Assistant.

Actions are used in several places in Home Assistant. As part of a script or automation, actions define what is going to happen once a trigger is activated. In scripts, an action is called sequence.

Actions use service calls and/or scenes to interact with entities and cause these entities to do something. Actions can also include conditions and a delay. An action can call multiple services at the same time. For example, if your presence is detected in a room, an action may call one service to turn on a light and call another service to start playing music after a delay.

Actions are also used on the dashboard, for example as tap or hold action on a UI element. When triggered, the action calls a service.

Read more about: Action

Add-ons are additional standalone third-party software packages that can be installed on Home Assistant OS. Most of these, add-on provided, applications can be integrated into Home Assistant using integrations. Examples of add-ons are: an MQTT broker, database service or a file server.


Locations within your home such as living room, dance floor, etc. Devices can be associated to an area for easier sorting and automatically generated cards, such as the Area card.


Automations connect one or more triggers to one or more actions in a ‘when trigger then do action’ fashion with additional optional conditions. For example, an automation might connect the trigger ‘sunset’ to the action ‘turn the lights on’ but only if the condition ‘someone is home’ is met. Pre-made automations for common use-cases are available via the blueprints feature.

Read more about: Automation

Home Assistant has built-in functionality to create files containing a copy of your configuration. This can be used to restore your Home Assistant as well as migrate to a new system. The backup feature is available on some installation types.

Read more about: Backup
Binary sensor

A binary sensor returns information about things that only have two states - such as on or off.

Read more about: Binary sensor

A blueprint is a script or automation configuration with certain parts marked as configurable. This allows users to create multiple scripts or automations based on the same blueprint, with each having its own configuration-specific settings. Blueprints are shared by the community on the blueprints exchange in the forum.

Read more about: Blueprint

Better known as: Integrations. Integrations used to be known as components.


Conditions are an optional part of an automation that will prevent an action from firing if they are not met.

Read more about: Condition

Covers are devices such as blinds, garage doors, etc that can be opened and closed and optionally set to a specific position.

Read more about: Cover

Customization allows you to overwrite the default parameters of your devices in the configuration.


A device is a model representing a physical or logical unit that contains entities.

Example for a device as a physical unit
A smart plug named ‘Coffee machine’ which provides 2 entities: a switch entity to turn power on or off (‘Coffee machine power switch’) and a sensor entity for power monitoring (‘Coffee machine power sensor’).

Example for a device as a logical unit
An ecobee thermostat with 4 room sensors. This thermostat is seen as 5 devices in Home Assistant: 1 device for the thermostat with 4 sensors, and 1 device for each room sensor. Each device can be in a different area and may have more than one input or output within that area.

Devices have properties such as ID, manufacturer, name, model, hardware version, firmware version, connections, etc.

Device tracker

Device trackers are used to track the presence, or location, of a device.

Read more about: Device tracker

Discovery is the automatic setup of zeroconf/mDNS and uPnP devices after they are discovered.


Each integration in Home Assistant has a unique identifier: a domain. All of the entities and services available in Home Assistant are provided by integrations and thus belong to such a domain. The first part of the entity or service, before the . shows the domain they belong to. For example is an entity in the light domain from the light integration, while hue.activate_scene is the activate_scene service for the hue domain which belongs to the Hue integration.


An entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. Entities have states.

Example for entities as part of a device
A combined temperature and humidity sensor device provides two sensor entities. One for temperature (e.g. sensor.temperature with state 21.0 and unit °C) and one for humidity
(e.g. sensor.humidity with state 65.4 and unit %).

Example for entities as part of a service
A weather service that provides 3 entities: wind speed, air pressure, and ozon level.

Example of an entity used for control
A fan that is turned on when the temperature exceeds 30 °C.

There are standardized types of entities for common integrations such as light, switch, camera, sensor, fan, or vacuum.

Some entities are not part of a device or service. Examples of standalone entities are automation, script, scene entities, and helper entities (e.g. input helpers).

Most properties of entities are related to the state. Entities have optional attributes such as friendly name, unit of measurement, and an icon or picture that can be displayed in the frontend.

Read more about: Entity

An event is when something happens.

Read more about: Event

The frontend is a necessary component for the UI, it is also where you can define your themes.

Read more about: Frontend

Groups are a way to organize your entities into a single unit.

Read more about: Group

HASS or hass is often used as an abbreviation for Home Assistant. It is also the command-line tool.


Another name for Home Assistant Operating System

Read more about: HassOS
Home Assistant Core

Home Assistant Core is a Python program. It can be run on various operating systems and is the basis for Home Assistant. When people are talking about Home Assistant Core they usually refer to a standalone installation method that can be installed using a Virtual Environment or Docker. Home Assistant Core does not use the Home Assistant Supervisor.

Home Assistant Operating System

Home Assistant OS, the Home Assistant Operating System, is an embedded, minimalistic, operating system designed to run the Home Assistant ecosystem on single board computers (like the Raspberry Pi) or Virtual Machines. The Home Assistant Supervisor can keep it up to date, removing the need for you to manage an operating system.

Home Assistant Supervised

Home Assistant Supervised is a full UI managed home automation ecosystem that runs Home Assistant, the Home Assistant Supervisor and add-ons. It comes pre-installed on Home Assistant OS, but can be installed on any Linux system. It leverages Docker, which is managed by the Home Assistant Supervisor.

Home Assistant Supervisor

The Home Assistant Supervisor is a program that manages a Home Assistant installation, taking care of installing and updating Home Assistant, add-ons, itself and, if used, updating the Home Assistant Operating System.


Integrations connect and integrates Home Assistant with devices, services, and more. Such an integration contains all the logic that takes care of vendor- and device-specific implementations such as authentication or special protocols and brings those into Home Assistant in a standardized way. For example, the Hue integration integrates the Philips Hue bridge and its connected bulbs into Home Assistant, making them available as Home Assistant light entities you can control.

Read more about: Integration

Intent is a term used with voice assistants. The intent is what Home Assistant thinks you want it to do when it extracts a command from your voice or text utterance. Currently, the following intents are supported out of the box: HassTurnOn, HassTurnOff, HassGetState, and HassLightSet.
These intents allow you to turn things on or off, inquire about a state, or change the brightness or color of a light.

Read more about: Intent

A light has a brightness you can control, and optionally color temperature or RGB color control.

Read more about: Light

Lovelace is the original code name of the UI that is now known as Home Assistant dashboards.


Matter is an open-source standard that defines how to control smart home devices on a Wi-Fi or Thread network. The aim of the standard is to improve security and to make devices interoperable across vendors, replacing proprietary protocols for smart home ecosystems. Unlike other standards, Matter allows joining the same device to multiple controllers. For example, you can add a light to Google Home, Apple Home, and Home Assistant at the same time. A bridge device can be used to connect devices running on other smart home technologies such as Zigbee or Z-Wave.

Read more about: Matter

You can use notifications to send messages, pictures, and more, to devices.

Read more about: Notification

Packages allow you to bundle different component configurations together.

Read more about: Packages

Platforms are building blocks provided by some integrations to be used by other integrations. For example, the Light integration provides the light platform that is utilized by all integrations providing light entities such as e.g. Hue.

Read more about: Platform

Applies the changes made to the Home Assistant configuration files. Changes are normally automatically updated. However, changes made outside of the front end will not be reflected in Home Assistant and require a reload. To perform a manual reload, go to Settings > System > Restart Home Assistant (top right) > Quick reload. More granular reload options are available in YAML configuration reloading section in Developer tools > YAML.


Scenes capture the states you want certain entities to be. For example, a scene can specify that light A should be turned on and light B should be bright red.

Read more about: Scene

Scripts are components that allow users to specify a sequence of actions to be executed by Home Assistant when turned on.

Read more about: Script

Selectors are components for the user interface. Some selectors can, for example, show a toggle button to turn something on or off, while another select can filter a list of devices to show only devices that have motion-sensing capabilities.

Read more about: Selectors

Sensors return information about a thing, for instance the level of water in a tank.

Read more about: Sensor

The term service has 2 meanings in Home Assistant:

The information service
For example, the municipal waste management service that provides entities for organic, paper, and packaging waste. In terms of functionality, the information service is like a device. It is called service to avoid confusion, as it does not come with a piece of hardware.

The software function that interacts with targets to make something happen
A service carries out one specific task, for example: turning on the light in the living room or sending a notification to a mobile phone.

A service has targets and data. Service targets are: areas, devices, and entities. Service data carries the information required to define the desired state change in the target. For example, the target, together with brightness 150 and RGB color [255,0,0], or the message “Your coffee is ready”.

Services can be used in, for example, automation, scripts, dashboards, or voice commands to control your home.

Home Assistant provides a series of predefined services, such as homeassistant.turn_on, homeassistant.toggle, or homeassistant.reload.

Read more about: Service

The state holds the information of interest of an entity. For example, if a light is on or off, the current temperature, or the amount of energy used. The data type of state is string (a textual value). Entities store 2 timestamps related to the state: last_updated and last_changed. Each entity has exactly one state and the state only holds one value at a time. However, entities can store attributes related to that state. For example, the state of a light is on, and the related state attributes could be its current brightness and color values.

State changes can be used as the source of triggers. The current state can be used in conditions.

Read more about: State

Switches are things that have two states you can select between, such as turning on or off a socket.

Read more about: Switch

TTS (text-to-speech) allows Home Assistant to talk to you.

Read more about: TTS

A template is an automation definition that can include variables for the service or data from the trigger values. This allows automations to generate dynamic actions.

Read more about: Template

Thread is a low-power mesh networking standard that is specifically designed for smart home applications. It is a protocol that defines how devices communicate. Mesh topology means that the devices can communicate with each other directly, without going through a central controller first. Thread uses the same radio frequency (RF) technology as Zigbee, but provides IP connectivity similar to Wi-Fi. Unlike Zigbee, Thread does not specify how to control devices. How Thread-enabled devices are controlled is specified in a higher level protocol such as HomeKit or Matter.

Read more about: Thread

A trigger is a set of values or conditions of a platform that are defined to cause an automation to run.

Read more about: Trigger

Variables are used to store values in memory that can be processed for example, in a script.

Read more about: Variables

Zones are areas that can be used for presence detection.

Read more about: Zone