Skip to main content
The Timer trigger fires a workflow at fixed intervals. It’s backed by Temporal’s durable timers, so executions are reliable and don’t drift over time.

Use cases

  • Nightly reconciliation between two systems
  • Hourly health check that alerts on failure
  • Weekly summary report
  • Daily cleanup of stale records
  • Recurring outbound campaign batch

Inspector

Conversation trigger types
  • The schedule is defined using a CRON expression that specifies exactly when the workflow should run (e.g., “every day at 9:00 am”, “every 15 minutes”).
  • You can use the built-in AI assistant in the inspector to help you generate a valid CRON expression from plain English (e.g., “every Monday at 9am” → 0 9 * * 1).

Cron syntax

Standard 5-field cron:
Examples:

Timezone behavior

The schedule’s timezone determines when “9am” means locally. Across DST transitions:
  • If your timezone observes DST, “9am” follows the local clock
  • UTC schedules ignore DST entirely — useful for consistent system-to-system syncs

What’s in ctx

When the Timer trigger fires, the workflow context includes:
Use {{ trigger.scheduled_at }} for time-bucketed queries — for example, “fetch records modified since the last tick.”

Execution mode

Timer triggers run asynchronously — the workflow runs in the background and can include Wait steps or long-running operations.

Considerations

  • Minimum interval: 1 minute. For sub-minute frequency, use an external scheduler or a workflow with internal Wait steps.
  • Only one execution at a time. If the previous run is still in progress when the next tick fires, the new tick is queued.
  • Deploy to activate. The Timer trigger only fires on a deployed workflow. A draft workflow does not run on the schedule.