Webhooks and schedules: how workflows start
Two common starts: something calls a URL (webhook), or the clock says it is time (schedule).
Read on 14 November 2026. Products change quickly: check the sources.
Webhook
The Webhook node is a trigger that creates webhooks, so apps and services can send data and start a workflow when something happens. It can also return the data produced at the end of a workflow, which makes it usable like an API endpoint. The documentation says it lets you trigger workflows from services that do not have a dedicated app trigger node.
Two URLs. n8n gives a test URL and a production URL:
| URL | When it is registered | What you see |
|---|---|---|
| Test | When you select Listen for Test Event or Execute workflow, if the workflow is not active | The data appears in the workflow |
| Production | When you publish the workflow | The data does not appear in the workflow; open the Executions tab to see a production run |
Methods: DELETE, GET, HEAD, PATCH, POST and PUT. Payload: the maximum is 16MB; self-hosters can change it with the environment variable N8N_PAYLOAD_SIZE_MAX. Path: a random path by default, to avoid conflicts, or your own, including route parameters in the formats /:variable, /path/:variable, /:variable/path, /:variable1/path/:variable2 and /:variable1/:variable2.
Schedule Trigger
The Schedule Trigger runs a workflow at fixed intervals and times, similar to Cron on Unix-like systems. Points from the page:
- You must save and publish the workflow for the schedule to run.
- The node uses the workflow timezone if set, otherwise the instance timezone. The documented defaults: America/New York for self-hosted instances; n8n Cloud tries to detect the owner's timezone at sign-up and falls back to GMT.
- Trigger intervals: seconds, minutes, hours, days, weeks, months, or a custom Cron expression. You can add several rules to one node.
- From n8n 2.45.0, the durable scheduler is the default (while
N8N_USE_WORKFLOW_PUBLICATION_SERVICEstays on). Seconds and Minutes intervals then run at uniform intervals from the time of publication, not on clock boundaries; custom Cron keeps its timing.
If you need to write a Cron expression, our Cron page on this site builds and explains one.
My webhook works in testing but nothing shows when live. Why?
By the documentation, production runs are not displayed in the workflow: look in the Executions tab.
Why did my schedule run at an odd hour?
Check the timezone setting first (workflow, then instance), as described above.
Sources
- n8n docs: Webhook node (docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/)
- n8n docs: Schedule Trigger node (docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/)
Read on 14 November 2026.
This is an independent guide. It is not connected with n8n. Products change quickly: statements were read on 14 November 2026 from the n8n documentation pages named under Sources, and limits, defaults and version numbers may have changed since. We do not give prices or compare products.