The calendar integration allows you to integrate your calendars into Home Assistant. Calendars are shown on the calendar dashboard, and can be used with automations.

A calendar entity has state and attributes represent the next upcoming event (only). A calendar trigger is much more flexible, has fewer limitations, and is recommended for automations, instead of using the entity state.


Calendar Triggers enable automation based on an event start or end. Review the Automating Home Assistant getting started guide on automations or the Automation documentation for full details.

Screenshot Trigger

An example of a calendar trigger in yaml:

    - platform: calendar
      # Possible values: start, end
      event: start
      # The calendar entity_id
      entity_id: calendar.personal
      # Optional time offset to fire a set time before or after event start/end
      offset: -00:15:00

Calendar triggers should should generally not use automation mode single to ensure the trigger can fire when multiple events start at the same time (e.g., use queued or parallel instead). Note that calendars are read once every 15 minutes. When testing, make sure you do not plan events less than 15 minutes away from the current time, or your trigger might not fire.

See Automation Trigger Variables: Calendar for additional trigger data available for conditions or actions.

Automation Recipes

Below are a few example ways you can use Calendar triggers.