The short answer
A webhook is a web address (a URL) that an app calls on its own as soon as an event happens on its side: a form is submitted, a payment comes in, an order is placed. The app sends the event’s data to that address, and the tool listening there starts right away. Nobody has to ask whether anything is new. The app tells you.
One example: the lead form
You have a lead form on your website. For every submission you want two things: a new row in a spreadsheet and an email alert. In an automation tool, that is three steps: one trigger (the lead arrives) and two actions. Say you get 300 leads a month.
The tool has two ways to learn that a lead came in.
- A webhook, also called an instant trigger. The automation tool gives you a URL. You paste it into the form’s settings. On every submission, the form calls that URL and attaches the answers. The automation starts as soon as the call arrives.
- Polling. The automation tool goes and checks, every 15 minutes for instance, whether the form has new entries. Most of the time there is nothing. When there is something, the automation starts, with a delay of up to the interval you picked.
The simplest picture: a webhook is a doorbell. Polling is opening the front door every 15 minutes to see if anyone is standing there.
Over a 30-day month, polling every 15 minutes means 2,880 checks, and polling every minute means 43,200. For 300 leads. The whole question is whether the empty checks are billed.
Why the bill differs from tool to tool
Each tool counts a different unit, and the trigger does not hold the same place in each. The rules below come from the unit definition recorded for each vendor. The guide to billing units covers them in full.
| Criterion | MakeAutomation tool | ZapierAutomation tool | n8nAutomation tool |
|---|---|---|---|
| Billing unit | creditssource | taskssource | executionssource |
| Minimum interval | 15 minutes (Free); 1 minute (Core, Pro, Teams, Enterprise)source | 15 minutes (Free); 2 minutes (Professional); 1 minute (Team, Enterprise)source | not recorded |
| Free plan | 1,000 credits per monthsource | 100 tasks per monthsource | Nosource |
| Vendor | Visit Make (opens in a new tab) | Visit Zapier (opens in a new tab) | Visit n8n (opens in a new tab) |
Data recorded from the official pages: Make (), Zapier (), n8n ().
Make: an empty check uses a credit
On Make, a trigger uses 1 credit per run, even when there is no new data, and each action module uses 1 credit per bundle processed.
- With a webhook: 300 runs × 3 modules, or 900 credits a month.
- With polling every 15 minutes: 2,880 trigger credits plus 600 action credits, or 3,480 credits.
- With polling every minute: 43,200 trigger credits plus 600 action credits, or 43,800 credits.
The Free plan includes 1,000 credits a month and requires at least 15 minutes between scheduled runs. Counted in credits, the webhook version of the example fits that quota and the polling version does not. The Core plan starts at 10,000 credits a month: polling every 15 minutes fits, polling every minute does not. Make’s documentation separates these two kinds of triggers and states that each webhook has its own queue (Make Help Center, “Webhooks” (accessed )).
Zapier: the trigger does not count
On Zapier, only successful actions count. Triggers, polling checks included, use no tasks. Webhook or polling, the example uses the same amount: 300 × 2 actions, or 600 tasks a month.
Two things still change. First, the delay: polling runs every 15 minutes on Free, every 2 minutes on Professional and every minute on Team. Second, access: the vendor’s plan grid lists webhooks among the features left out of the Free plan, which is also limited to two-step Zaps. The three-step example therefore needs Professional, which starts at 750 tasks a month. Zapier describes both trigger types in its help center (Zapier Help Center, “How Zap triggers work” (accessed )).
The vendor’s pages contradict each other on one point: the “Task usage rates” page puts trigger and action steps together in the standard 1-task step, while the pricing FAQ and the help article say triggers never use tasks.
n8n: it depends on the first node
n8n counts one execution per complete run of the workflow, however many steps it has. There are three cases.
- Webhook. One execution per incoming request, even with an empty body: 300 executions.
- Polling trigger (an app node that checks on an interval). According to the documentation, a poll that returns nothing is not counted: 300 executions at most (n8n documentation, “Understand executions” (accessed )).
- Schedule Trigger (a schedule followed by a step that fetches new leads). One execution every time it fires, whether or not anything is new: 2,880 executions at 15 minutes, 43,200 at one minute.
The Starter plan includes 2,500 executions a month: the webhook fits, and the 15-minute schedule exceeds it on its own.
Pabbly Connect and Latenode
Pabbly Connect counts neither triggers nor polling checks: only action steps are tasks, and the instant webhook is part of the Free plan. Latenode bills the compute time of each run, not the number of steps. Its 10-minute minimum interval applies only to schedules and polling; webhooks are instant there.
The example in one table
| Tool | With a webhook | With polling every 15 minutes | What is counted |
|---|---|---|---|
| Make | 900 credits | 3,480 credits | every module, trigger included, even when empty |
| Zapier | 600 tasks | 600 tasks | successful actions |
| n8n | 300 executions | 300 at most with a polling trigger, 2,880 with a Schedule Trigger | each run of the workflow |
| Pabbly Connect | 600 tasks | 600 tasks | action steps |
These volumes hold for 300 leads a month and two actions. To redo the math with your own numbers, the cost calculator has a trigger setting: instant, or polling every 15, 5 or 1 minutes.
What this changes when you pick a tool
- If your source app can send a webhook (the setting is often labeled “webhook”, “notification” or “callback URL”), use it. On Make it means fewer credits. Everywhere it means less waiting.
- If it cannot, look first at how the tool counts the trigger. On Zapier and Pabbly Connect, polling costs nothing extra. On Make, every check costs a credit, so a longer interval lowers the bill. On n8n, an app’s polling trigger uses less than a schedule you build yourself.
- If you need a reaction within a minute and have no webhook, the minimum interval depends on the plan. It is in the table above and in the automation tools comparison.
- If you are torn between two tools, the n8n vs Make and Make vs Zapier pages apply these rules to one shared scenario.
The Make, Zapier and n8n pages give the full definition of each unit, with its source. If automation itself is new to you, start with the guide to no-code automation.
Data recorded from the official pages: Make (), Zapier (), n8n (), Pabbly Connect (), Latenode ().
CalculatorAutomation cost calculator: Make, Zapier, n8n and moreFrequently asked questions
What is the difference between a webhook and an API?
An API is a counter you walk up to: your tool asks a question and gets an answer. A webhook runs the other way: the app calls your tool when an event happens. Polling uses the API; an instant trigger uses a webhook.
Are webhooks free?
Receiving a webhook is not billed on its own, but the automation it starts uses the tool's units: credits on Make, tasks on Zapier, executions on n8n. On Zapier, the plan grid lists webhooks among the features left out of the Free plan. Quotas are in the plan tables, with the date they were recorded.
How do Zapier webhooks count toward tasks?
According to Zapier's help center, triggers never use tasks, whether they poll or receive a webhook. Only successful action steps count. Webhooks are listed as a paid-plan feature in the plan grid.
Webhook or polling: which should I use?
Use the webhook whenever the source app offers one: the automation starts right away and no empty checks happen. Polling is the fallback when the app cannot send webhooks. What it costs then depends on the tool: nothing extra on Zapier and Pabbly Connect, one credit per check on Make.
Do I need to code to use a webhook?
Usually not: the automation tool generates the address, and the source app has a field made to receive it. You do need to look at which data the app sends, so you can map it to the next steps.