Configuration.yaml
While you can configure most of Home Assistant from the user interface, for some integrations, you need to edit the configuration.yaml
file.
This file contains integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] to be loaded along with their configurations. Throughout the documentation, you will find snippets that you can add to your configuration file to enable specific functionality.
Example of a configuration.yaml file, accessed using the File editor add-on on a Home Assistant Operating System installation.
Editing configuration.yaml
How you edit your configuration.yaml
file depends on your editor preferences and the installation method you used to set up Home Assistant. Follow these steps:
- Set up file access.
- Locate the config directory.
- Edit your
configuration.yaml
file. - Save your changes and reload the configuration to apply the changes.
To set up access to the files and prepare an editor
Before you can edit a file, you need to know how to access files in Home Assistant and setup an editor.
File access depends on your installation method. If you use Home Assistant Operating SystemHome Assistant OS, the Home Assistant Operating System, is an embedded, minimalistic, operating system designed to run the Home Assistant ecosystem. It is the recommended installation method for most users. [Learn more] or Home Assistant SupervisedHome Assistant Supervised is the full Home Assistant ecosystem, without the Home Assistant Operating System. [Learn more], you can use editor add-ons, for example, but not if you use Home Assistant CoreHome Assistant Core is the heart of Home Assistant itself. It is a Python program that powers every installation type, but can be installed standalone. [Learn more] or Home Assistant ContainerHome Assistant Container is a standalone container-based installation of Home Assistant Core. Any OCI
To set up file access, follow the steps for your installation method:
-
Configure file access on the Operating System:
- If you are unsure which option to choose, install the file editor add-on.
- Alternatively, use the Studio Code Server add-on. This editor offers live syntax checking and auto-fill of various Home Assistant entities. But it looks more complex than the file editor.
- If you prefer to use a file editor on your computer, use the Samba add-on.
-
Configure file access on Supervised:
- Using the File editor add-on.
- Using the Studio Code Server add-on.
- Using the Samba add-on.
To find the configuration directory
-
To look up the path to your configuration directory, go to Settings > System > Repairs.
- Select the three dots menu and select System information.
-
Find out the location of the Configuration directory.
- Unless you changed the file structure, the default is as follows: -
-
Home Assistant Operating SystemHome Assistant OS, the Home Assistant Operating System, is an embedded, minimalistic, operating system designed to run the Home Assistant ecosystem. It is the recommended installation method for most users. [Learn more]: the
configuration.yaml
is in the/config
folder of the installation. -
Home Assistant ContainerHome Assistant Container is a standalone container-based installation of Home Assistant Core. Any OCI
compatible runtime can be used, but the documentation focus is on Docker. [Learn more]: the configuration.yaml
is in the config folder that you mounted in your container. -
Home Assistant CoreHome Assistant Core is the heart of Home Assistant itself. It is a Python program that powers every installation type, but can be installed standalone. [Learn more]: the
configuration.yaml
is in the config folder passed to thehass
command (default is~/.homeassistant
).
-
Home Assistant Operating SystemHome Assistant OS, the Home Assistant Operating System, is an embedded, minimalistic, operating system designed to run the Home Assistant ecosystem. It is the recommended installation method for most users. [Learn more]: the
- Unless you changed the file structure, the default is as follows: -
-
Once you located the config folder, you can edit your
configuration.yaml
file.
If you have watched any videos about setting up Home Assistant using configuration.yaml
(particularly ones that are old), you might notice your default configuration file is much smaller than what the videos show. Don’t be concerned, you haven’t done anything wrong. Many items in the default configuration files shown in those old videos are now included in the default_config:
line that you see in your configuration file. Refer to the default config integration for more information on what’s included in that line.
Validating the configuration
After changing configuration or automation files, you can check if the configuration is valid. A configuration check is also applied automatically when you reload the configuration or when you restart Home Assistant.
The method for running a configuration check depends on your installation type. Check the common tasks for your installation type:
- Configuration check on Operating System
- Configuration check on Supervised
- Configuration check on Container
- Configuration check on Core
Reloading the configuration to apply changes
For configuration changes to become effective, the configuration must be reloaded. Most integrations in Home Assistant (that do not interact with devicesA device is a model representing a physical or logical unit that contains entities. or servicesThe term “service” in Home Assistant is used in the sense of an 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. [Learn more]) can reload changes made to their configuration in configuration.yaml
without needing to restart Home Assistant.
-
Under Settings, select the three dots menu (top right)
, select Restart Home Assistant > Quick reload. -
If you find that your changes were not applied, you need to restart.
- Select Restart Home Assistant.
- Note: This interrupts automations and scripts.
Troubleshooting the configuration
If you run into trouble while configuring Home Assistant, refer to the configuration troubleshooting page.