🇪🇸 Español 🇬🇧 English 🇧🇷 Português

Trigger: Scheduled (Time / Cron)

Run a workflow on a recurring schedule using a cron expression — perfect for reports and periodic tasks.

Jul 11, 2026

The Scheduled trigger runs a workflow according to a cron expression you define — it doesn't depend on any inbox event or contact, it just runs on the schedule you set.

When to use it

This is the trigger for anything recurring: a daily digest of pending conversations, a weekly report to the team, a periodic check of stale deals, or any automation that needs to run "on its own" at a fixed interval.

Configuration

In the Trigger node pick "Scheduled" and fill in:

  • Cron expression (required): e.g. 0 9 * * 1 for "every Monday at 9am", or 0 8 * * * for "every day at 8am". ⚠️ This time is evaluated in the server's UTC, not your workspace's timezone (see Tips).

Available variables

  • $scheduled.execution_time (timestamp of the run)
  • $scheduled.iteration — ⚠️ today this always equals 0: the system doesn't keep a real per-workflow run counter, so don't use it for "once every N runs" logic the way its name might suggest.

Example

Workflow "Weekly Team digest": Trigger = Scheduled, cron = 0 9 * * 1. Action: query the week's open conversations and post a summary message to the "Management" Space in Team.

Tips

  • The cron runs in the server's UTC, not your workspace's configured timezone — manually convert the time you want (e.g. if your workspace is UTC-5 and you want it to run at 9am local time, set 0 14 * * 1, not 0 9 * * 1).
  • If you want more modern vocabulary for CRM/Projects recipes, there's an equivalent "Scheduled (time)" trigger under the Time category — it behaves identically.
  • Don't use $scheduled.iteration for "every N runs" logic: it always comes back as 0 today. If you need that counter, track it yourself another way (e.g. a persistent field you update on every run).

Troubleshooting

  • If the workflow doesn't run at the expected time, check the cron syntax (5 fields: minute hour day-of-month month day-of-week), confirm the workflow is active (not draft), and remember the time is evaluated in UTC, not your workspace's timezone.
  • If logic based on {{$scheduled.iteration}} doesn't behave as expected (e.g. trying to run "every 3rd execution"): that's a known issue, the variable never increments, it's always 0.
Was this helpful?

Related articles