Learn › n8n Foundations: From Zero to First Automation › Triggers Deep Dive: Webhook, Schedule, and App Events

Triggers Deep Dive: Webhook, Schedule, and App Events

Beginner 🕐 12 min Lesson 6 of 15
What you'll learn
  • Explain the four trigger types in n8n and when to use each
  • Configure a Webhook Trigger and understand the difference between test and production URLs
  • Choose the right trigger for common automation scenarios

Triggers Are How Workflows Start

Every n8n workflow begins with a trigger node. The trigger defines the event that wakes your workflow up. Get the trigger right and the rest of the workflow runs when it should, with the data it needs. The four main trigger types are: Schedule, Webhook, App Event, and Manual.

Schedule Trigger

The Schedule Trigger runs your workflow on a time-based cadence. It supports several interval modes:

  • Minutes/Hours/Days — simple intervals: "every 15 minutes", "every day at 9am"
  • Week — specific days and times: "every Monday at 8am"
  • Month — on a particular day each month: "1st of every month at 6am"
  • Custom (cron expression) — full cron syntax for precise schedules: 0 9 * * 1-5 runs at 9am on weekdays

When using Schedule Trigger, n8n generates a single trigger item with timestamp metadata. Your workflow then fetches its own data (from a database, API, or file) — the trigger itself carries no application data, just timing.

Webhook Trigger

The Webhook Trigger gives your workflow a unique URL. When anything sends an HTTP POST (or GET) request to that URL, the workflow fires immediately, with the request body available as input data. This is how other apps push data to your n8n workflows in real time.

n8n generates two webhook URLs: a test URL (only active when you have the workflow open in the editor and click "Listen for Test Event") and a production URL (active whenever the workflow is activated). Always use the production URL in external services — the test URL stops working when you close the editor.

You can configure the webhook to accept GET or POST, require header authentication, and set the response mode (immediately vs. after all nodes run).

App Event Triggers

Many n8n nodes have their own trigger version. A Gmail Trigger polls your inbox and fires when a new email matching your filter arrives. A Slack Trigger fires on new messages or reactions. A GitHub Trigger fires on pull requests, pushes, or issues.

App triggers use polling (n8n checks the service every minute or so) or webhooks registered with the app (the app pushes notifications to n8n instantly). The node description tells you which method it uses. Polling has a slight delay (up to 60 seconds); webhook-based triggers are near-instant.

Manual Trigger

The Manual Trigger has no automatic condition — it only fires when you click "Run" inside the editor. It is primarily useful for testing workflows during development and for one-off workflows you want to run on demand. In production, switch to a real trigger before activating.

Choosing the Right Trigger

Use Schedule when your workflow should run at fixed times (reports, digests, batch jobs). Use Webhook when another system needs to push data into your workflow (form submissions, payment events, API calls from your own app). Use App Event triggers when you want to react to something that happened in a specific tool (new email, new row, new message). Use Manual only during development or for true on-demand runs.

Key takeaways
  • Schedule Trigger runs on time-based cadences — use cron expressions for precise schedules like "9am on weekdays"
  • Webhook Trigger gives your workflow a unique URL; production URL is active when the workflow is activated, test URL only works in the editor
  • App event triggers use either polling (up to ~60 second delay) or registered webhooks (near-instant) — check the node description to know which