Runs and testing
Every automation enrollment creates a run. Track states, debug failures, and use the Tests tab to dry-run flows safely.
Last updated: May 2026
The Runs tab
Every time a trigger fires for a contact, a run is recorded. The Runs tab on each workflow shows every enrollment, its current state, the node it's parked at, and how long ago it last moved. Filter by state, search by contact email, and click any row to see the full node trail.
Run states
queued: just enrolled, waiting for the first scheduler tick (usually under a second).running: executing a node right now.waiting: parked inside a Wait node untilwakeAt.completed: reached an Exit node. Counted in your conversion metrics.failed: a node failed after 4 retry attempts. Last error is attached.cancelled: workflow was archived while the run was in-flight, or the run was cancelled manually.
Inspecting a run
Click any row to expand the node trail: every node the contact passed through, with timestamps and the result. Failed nodes include the error message and the request/response (for webhooks). You can Jump to node on the canvas to see exactly where the run was when it stalled.
Retries and backoff
Transient failures (network timeout, 5xx from webhook target, rate limit) retry with quadratic backoff capped at 30 minutes. Total: up to 4 attempts. The schedule looks like 1 minute, 4 minutes, 9 minutes, 30 minutes (cap). If the 4th attempt fails, the run transitions to failed and stops.
Permanent failures (HTTP 4xx other than 429, validation errors, missing campaign) do not retry. The run fails immediately. Fix the config and either re-run manually from the dashboard or wait for the next trigger event.
The Tests tab
The Tests tab lets you trigger a workflow manually against any contact (yourself, a co-worker, a test address) without affecting your production metrics. Test runs:
- Skip frequency caps. Same workflow can run unlimited times against test contacts.
- Send real emails to real addresses. Use throwaway addresses if you don't want them in your inbox.
- Don't count toward conversion metrics. The
isTestflag stays attached to the run forever. - Use the latest published version. Edits to a Draft don't affect test runs of the current Active version.
Debugging a failed run
- Open the Runs tab and filter by state
failed. - Click the row to expand the node trail and find the failing node.
- Read the error. Common causes:
- Webhook returned 401: missing or expired auth header. Update the action and re-publish.
- Campaign not found: the campaign was deleted. Re-pick a campaign in Send email.
- List not found: same as above for Add to list / Remove from list.
- Frequency cap hit: not actually a failure. The action was skipped and the run advanced.
- Click Jump to node to open the inspector and fix the config.
- Re-trigger from the Tests tab to confirm the fix before unpausing production.