Use one shared state, then add one exception only if you need it
The simplest reliable Home Assistant house-mode setup is one Dropdown helper with Home, Away, Sleep, and Vacation. Home Assistant calls a saved virtual control like this a helper. It is not a physical device. It is one named item in Home Assistant that stores a choice your dashboard and automatic rules can both read or change.
Add a separate Guest mode Toggle only if guests can overlap another state. A visitor may be staying while the house is in Sleep mode, for example. One dropdown can hold only one choice, so forcing Guest into that list would erase useful context. If your household treats Guest as a completely separate, exclusive state, keeping it in the dropdown is also reasonable—just do not build five toggles that can contradict one another.
An automation is a rule that reacts when something happens. Use the selected mode as a condition inside lighting, heating, notification, and presence automations. A condition lets a rule trigger but prevents the wrong actions from running. That keeps the logic visible in one place and avoids turning whole automations off. The crucial design rule is priority: a routine Home or Away update must not undo a deliberate Vacation or Guest choice.
The small model that works for most homes
Start with fewer states than you think you need. A state deserves to exist only when at least two automations should behave differently because of it. “Movie” is often a room scene. “Cleaning” may be a temporary override. Home, Away, Sleep, and Vacation are broad enough to change behavior across the home.
A house mode is not a scene. A scene applies a saved device state, such as dimming several lights. A house mode describes the household context that many rules can check for hours or days. A mode change may call a scene, but the two jobs are different.
A Person entity is Home Assistant's home-or-away record for one household member, usually based on a phone or another tracker. Automatic Away works only when every regular occupant has reliable tracking. If Home Assistant cannot confidently tell when the last person leaves, keep Away manual until that presence signal is fixed.
| State | Who changes it | Useful behavior | What should remain independent |
|---|---|---|---|
| Home | Automatically when any trusted Person entity returns, or manually from the household dashboard | Normal occupied lighting, heating, announcements, and reminders | Manual switches, smoke and leak alarms, door operation, and safe equipment limits |
| Away | Automatically only after everyone has been away for a short confirmation period and Guest is off | Reduce comfort heating, stop routine announcements, and send selected entry or appliance alerts | Security arming and locks unless their own verified rule and recovery path exist |
| Sleep | A bedside control, a deliberate Good night action, or a tested bedtime rule | Use dim night lighting, reduce non-urgent announcements, and change overnight comfort settings | Emergency alerts, bedside physical controls, and safe temperature limits |
| Vacation | Deliberately by a household member; normal presence rules should not overwrite it | Suspend ordinary schedules, use a safe lower heating target for the trip, and send selected entry, leak, or equipment alerts | Smoke, carbon-monoxide, and leak alarms, trusted access for a sitter, and manufacturer-supported recovery |
| Guest toggle | Manually when a visitor stays, with a visible reminder to turn it off | Prevent false Away behavior, preserve shared-room comfort, and protect guest privacy | The current Home or Sleep state; Guest should add context rather than replace it |
Choose a dropdown for exclusive states and toggles for overlap
A Dropdown helper can store exactly one option. That is useful when the choices cannot be true at the same time: the whole home is Home, Away, Sleep, or Vacation. Home Assistant records the selected option as the helper's current state, and both a person and an automation can change it.
A Toggle helper stores on or off. Use it for a fact that can overlap the main state, such as Guest mode. You might later add a separate “Manual hold” toggle if automatic changes repeatedly cause trouble, but do not start there. Every extra switch creates another combination the household must understand and you must test.
- Use the dropdown when only one answer should be true.
- Use a toggle when the answer can be true alongside another state.
- Use a scene when you want to apply saved device settings now.
- Use an ordinary sensor or Person entity when the value should be observed rather than manually chosen.
This separation also keeps privacy honest. A guest toggle can stop automatic indoor announcements or room-level presence behavior without pretending that a visitor has a tracked phone. Tara's Person tracking troubleshooting guide is the right place to fix unreliable home and away data; house mode should not hide a broken tracker.
Create the two helpers in the Home Assistant interface
- Open Settings > Devices & services > Helpers.
- Select Create helper, then choose Dropdown.
- Name it House mode. Add the options Home, Away, Sleep, and Vacation in that order.
- Create a second helper of type Toggle and name it Guest mode.
- Add both helpers to the household's main dashboard. Someone should be able to see the current state and correct it without opening an automation editor.
Home Assistant's official helper documentation says Dropdown and Toggle helpers restore their previous values after a restart unless you set a fixed starting value in its advanced text configuration, called YAML. For a household choice, restoring the last value is usually preferable. A fixed starting value could turn Vacation back into Home merely because Home Assistant restarted.
Restored does not mean newly verified. After a server or router restart, Person trackers may need time to update. Keep automatic presence changes conservative until the household state is current. Tara's guide to what still works when Home Assistant is down helps separate convenience behavior from essential fallback.
Give the modes a clear priority
Most house-mode failures are not helper failures. Two automations simply make different choices within seconds of each other. Write the priority in plain language before building any rule:
- Vacation is a deliberate hold. Ordinary arrival, departure, sunrise, and schedule rules leave it alone until a person ends the trip mode.
- Guest prevents automatic Away. It can coexist with Home or Sleep and stays visible until someone turns it off.
- Sleep beats routine Home behavior while someone is still home. A phone briefly reconnecting or a late schedule should not make the house bright and noisy. If everyone actually leaves and Guest is off, the confirmed departure may replace a forgotten Sleep state with Away.
- Away needs confirmation. Wait several minutes after every trusted person leaves so one delayed tracker does not flip the house immediately.
- Home is the safe everyday default. A confirmed arrival can select Home unless Vacation is still deliberately held.
Create one automation whose job is to update the main dropdown. Give it a name such as Update house mode from presence. It can react when the household changes between occupied and unoccupied, but its conditions must preserve Vacation, Sleep when appropriate, and Guest. Keeping this decision in one automation is easier to trace than letting every thermostat, lamp, and alarm rule write to the dropdown.
Build only three mode-changing rules
Open Settings > Automations & scenes and create these as small, separately named rules. In each action, choose the House mode Dropdown and select the required option. You do not need to write YAML.
- Arrival: when any trusted Person changes to Home, select Home unless the dropdown is already Sleep or Vacation. An arrival during the night should not wake the rest of the house.
- Last departure: when every tracked household member has shown Away for about 10 minutes, select Away unless Guest is on or the dropdown is Vacation. If you cannot reliably confirm that everyone is away, leave this rule out and change Away manually.
- Good night and morning: let a bedside button or dashboard action select Sleep when the home is occupied and not in Vacation. In the morning, select Home if someone is home; otherwise select Away, unless Guest or Vacation should hold the current behavior.
Vacation stays a deliberate dashboard choice. End it manually when the household returns, or add a separate return confirmation only after the basic setup has been reliable for several trips. This makes it much harder for a delayed phone update to cancel the behavior that protects an empty home.
Do not let every device decide the mode. Presence, a bedside action, and a deliberate trip control may propose a change. Ordinary lights, thermostats, and notifications should read the result rather than writing it.
Use the mode as a condition, not a master off switch
Suppose a hall motion automation normally turns on a warm lamp. Keep the automation enabled. Add a condition that allows the ordinary daytime action in Home, uses a dim action in Sleep, and does nothing in Away or Vacation. The physical wall switch still works, and the automation remains visible in Home Assistant's run history, called traces.
The same pattern applies elsewhere:
- Heating: choose a comfort target for Home, a lower overnight target for Sleep, and a safe setback for Away or Vacation. Keep the thermostat's own equipment limits intact.
- Notifications: suppress routine spoken reminders during Sleep, but keep smoke, water, and urgent security alerts independent.
- Lighting: let motion use different brightness by mode without continuously forcing every lamp back to a preset.
- Privacy: use Guest to stop optional indoor camera processing, occupancy announcements, or personal reminders only after verifying what the exact devices still record or send.
- Manual control: do not have a mode rule immediately undo a person's wall-switch choice. Use Tara's manual-override pattern where a device needs a temporary hold.
Disabling an entire automation is tempting, but that automation may also contain a useful recovery path or notification. Conditions are more precise: Home Assistant checks the current state when the automation triggers and runs the actions only when the conditions are true.
Keep mode-change actions short and reversible
A change to Away or Sleep can trigger a small set of immediate actions. For example, turn off forgotten interior lights, adjust an ordinary comfort setting, and pause a non-essential announcement. Keep those actions short. The ongoing behavior should live in the automations that check the mode, not in one enormous script that tries to set every device in the home.
This prevents a common problem: Home Assistant applies an Away scene, someone changes a light manually, and a giant “keep Away active” loop changes it back. A house mode should describe policy, not fight the people in the house. If several platforms can run the same behavior, first decide where each smart-home automation should live so Home Assistant, Alexa, Apple Home, and a vendor app do not all react to the same event.
Test one mode at a time with another household member
- Start in Home. Confirm normal physical switches, heating controls, and important notifications behave as before.
- Turn on Guest. Simulate everyone leaving. The house should not choose Away or shut down occupied-room behavior.
- Select Sleep. Test one motion light and one routine announcement. Confirm urgent alerts and bedside controls are unchanged.
- Select Away manually. Check only the few actions you intentionally attached. Return to Home and confirm everything recovers.
- Select Vacation. Trigger an arrival and a time schedule. Neither should silently cancel the deliberate hold.
- Restart Home Assistant. Confirm both helpers restore correctly and wait for Person states to refresh before judging the presence rule.
Home Assistant records a trace each time an automation runs. Open Settings > Automations & scenes, choose the automation, and open Traces to see which path and condition it used. Be careful with Run actions: the official troubleshooting guide says that button skips triggers and conditions, so it can operate devices even when the real mode would have blocked them. Test non-critical lights first.
Ask someone who did not build the setup to change Guest and Vacation from the dashboard, then explain what they expect the home to do. If they cannot predict it in one sentence, simplify the state names or the rules. A professionally configured Home Assistant automation system should leave this household policy visible, documented, and recoverable rather than burying it in device-by-device logic.
Five designs to avoid
- One toggle for every mode: Home, Away, Sleep, Guest, and Vacation can all become on at once, so every automation must resolve the contradiction.
- Presence with no delay: one late or noisy tracker can make the house bounce between Home and Away.
- Automatic Vacation: a long absence is not always a trip, and a trip may include a sitter. Make this a deliberate state unless your return confirmation is separately tested.
- Mode-controlled life safety: never silence listed smoke or carbon-monoxide alarms, defeat safe heating limits, or make a helper the only control for locks, water shutoff, or emergency access.
- A giant mode automation: one rule that controls every device becomes hard to test and easy to break. Keep the mode updater, immediate transition actions, and device behavior understandable as separate jobs.
Tara's practical default
Use four exclusive dropdown choices: Home, Away, Sleep, and Vacation. Add one Guest toggle. Let a single presence updater choose only Home or Away, with a short departure delay. It must leave Vacation alone and must not choose Away while Guest is on. Let a bedside action choose Sleep, and make the current state visible on the main household dashboard.
Then add the mode as a condition only where behavior genuinely changes. Begin with one motion light, one comfort rule, and one routine notification. Preserve physical controls and important alerts. Once another household member can explain and correct the state, expand it room by room.
Frequently asked questions
Does Home Assistant have built-in house modes?
Home Assistant provides the building blocks rather than one universal House Mode control. Create a Dropdown helper for one shared state, such as Home, Away, Sleep, or Vacation, then use that state in automation conditions. Add a separate Guest toggle only if Guest needs to overlap another state.
Should Guest mode be in the dropdown or a separate toggle?
Use a separate Guest toggle when a guest can be present while the home is also in Home or Sleep mode. Put Guest in the dropdown only when it is truly exclusive and cannot overlap another household state.
Do Home Assistant house modes survive a restart?
Dropdown and Toggle helpers restore their previous state after Home Assistant restarts unless an initial value is configured in YAML. After a restart, confirm that presence data is current before allowing an automatic rule to replace that restored choice.
Should a house mode disable automations?
Usually no. Keep automations enabled and add mode conditions to the actions that should or should not run. Disabling a whole automation can also remove useful alerts, recovery steps, or physical-button behavior.
How should Vacation mode behave?
Treat Vacation as a deliberate hold that normal presence and schedule rules cannot overwrite. Keep it visible on a household dashboard, leave safety systems independent, and require a clear manual exit or a separately tested return-home confirmation.