Keep parent and subitem status in sync

Keep parent and subitem status in sync

TL;DR: Two complementary patterns for keeping parent and subitem statuses in lockstep — push parent status changes down to all subitems, AND roll up to the parent automatically when every subitem reaches a target status. Together they enable hands-off project status workflows.

What this does

Two recipes work together — pick one or both depending on whether you want top-down, bottom-up, or both directions.

Top-down: parent status → all subitems

Recipe: "When item's status changes to something, change all subitems status to something."
When the parent's status flips to your trigger value, every subitem's status updates to your target value. Example: parent → On Hold, all subitems automatically become On Hold.

Bottom-up: all subitems done → parent done

Recipe: "When the status of all subitems is something, change the parent item's status column to something."
The moment every subitem reaches your trigger status, the parent's status updates. Example: when ALL subitems hit Done, the parent flips to Done too. The parent stays in its previous state until the last subitem completes.

When to use these

  • Top-down: project-level decisions (cancel, hold, archive) should propagate to every task
  • Bottom-up: parent should never need manual status updates — it reflects the rollup of subitem completion
  • Both: full hands-off status management — leadership controls top-down, completion rolls up bottom-up

Before you start

  • A Status column on the parent item
  • A Status column on the subitem (can be the same labels or different)
  • Decide trigger values (parent state that triggers the sync) and target values (state to set)

Set it up — top-down

    Open Automate → Create on your board.
    Copy this recipe and find it in your board's automation center: "When item's status changes to something, change all subitems status to something." Click Use Template.
    Configure: parent trigger status, subitem target status.
    Click Create automation.

Set it up — bottom-up

    Open Automate → Create on your board.
    Copy this recipe and find it in your board's automation center: "When the status of all subitems is something, change the parent item's status column to something." Click Use Template.
    Configure: subitem required status (when all match), parent target status.
    Click Create automation.

Test that it works

Top-down:
    Change the parent's status to your trigger value.
    Confirm every subitem's status updated to the target value.
Bottom-up:
    Set every subitem's status to the trigger value (e.g. all to Done).
    Confirm the parent's status flipped to the target value automatically.

Common gotchas

  • Status values are case-sensitive. "Done" ≠ "done".
  • Bottom-up requires ALL subitems to match. One subitem in a different state blocks the sync. Subitems can be a different label group as long as the trigger value exists in the subitem column.
  • Loops are possible. If you set up both directions with conflicting logic (parent → subitems → parent), automations can fire in unexpected sequences. Test before deploying.
  • Empty subitems break bottom-up. A subitem with no status set won't satisfy "all subitems are X" — fill missing values or remove stale subitems.
  • For two-condition triggers (parent moves to X AND another condition is true), see the related smart-rule recipes — there's a variant "When item's status changes to something and this status is something, change its subitems status to something."

Next up

 Smart rules & by-name automations  (browse other smart-rule patterns)

Related

  •  Smart rules & by-name automations  (parent landing)
  •  Sync subitem dates with the parent (only matching status)  (status-filtered date sync)
  •  Sync values between parent & subitem 

Still stuck?

Email  hello@fantasymedia.io  and we'll help you wire status flows in either direction.