How to structure your flows

How to structure flows: keep flows simple

After working a lot with flows I currently have the habit of splitting up my flows.

My personal motto is: more flows is not bad!

I use A few “types” of flows and try not mix these types in one flow (explained in more detail below)

I also use a “tag” in the naming of the flow, so I can easily recognize the type (inspired by @AcE_Krystal a few years ago)
Update: or use icons as described by @Ploegske in the responses below

My flow types:

  • Trigger flow: a flow triggered by a time event (tag: @ or :clock1:) or a sensor (tag: **!**or :vibration_mode:)

Examples for naming: @ 06:50 get out of bed, :stopwatch: dinertime, ! Lux kitchen, :vibration_mode: PIR kitchen

WHEN typically contains a trigger like time or sensors like motion, temp, etc.

THEN typically contains a card from the flow section: “start flow” / “enable flow” / “disable flow” or change the status of a virtual devices.

THEN typically does not contain cards for actual devices (lights, plugs etc).

Time triggered flows (tag: @/:stopwatch:) will often have multiple cards in the THEN

  • Action flow: flow that starts an action (Tag: > or :rocket:)

Examples for naming: > Radio ON, :rocket: lights living OFF

WHEN typically contains a card “when this flow is started” or a virtual device status change

THEN contains an action: switching devices or starting a scene flow (explained below)

  • Scene flow: flow that defines a “scene” or “mode” (tag: # or :bulb:)

Examples of naming: :bulb: kitchen bright, # movie time light living, # Alarm armed modus, # Holiday modus

WHEN contains a “when this flow is started” or a virtual device button (not a switch!)

THEN contains settings for a group of devices, lights etc in a specific zone

Keep scene flows specific to one zone that makes it easier to use them in multiple flows.

8 Likes