Zapier webhook setup: catch a lead in 30 minutes
Build a Zapier webhook setup that catches form leads, checks the incoming fields, and tests the handoff without messaging a real customer.

This sheet contains partner links. A purchase through one earns Runbook a commission at no additional cost to you. How we make money.
In about 30 minutes, you'll have a Zapier webhook setup that catches a new website inquiry and turns it into fields your other business software can use. You need Zapier and a form or app that can send webhooks. A webhook is a web address that catches data another system sends. Keep all customer messages off while you test.
What you'll build
Your form will send a sample lead to a private address created by Zapier. Zapier will receive the submission immediately, separate the name, email, phone number, and source into individual fields, then place the record in a safe destination such as a spreadsheet or a test list in your CRM.
A CRM is the software that stores your customers and sends the follow-ups. This guide stops before any live follow-up begins. That boundary matters because a test record should never trigger an email or text to a customer.
The route looks like this:
| Stage | What happens | Your check |
|---|---|---|
| Source | A form or app sends a test inquiry | All required fields have test values |
| Webhook | Zapier receives the information | The request appears once |
| Field check | Zapier exposes each value separately | Email, phone, and source are readable |
| Destination | A test row or record is created | No message or sales alert fires |
This is the right build when your form has no ready-made Zapier connection, or when its built-in connection leaves out information you need. If the source already has a reliable Zapier trigger with every required field, use that simpler trigger instead. A webhook adds control, but it also gives you another address to protect and maintain.
Zapier's official webhook trigger instructions list the feature on Free, Professional, Team, and Enterprise plans. The same documentation says Catch Hook accepts GET, PUT, and POST requests and separates the received information into fields. You do not need to buy a plan just to prove this route.
Stack
You need three pieces:
- A source app. This is the form, booking tool, or other system that collects the information. Its settings must include a place to add a webhook address.
- Zapier. This is the automation tool that receives the submission and passes it to the next system. Zapier calls each automated routine a Zap.
- A safe test destination. Use a blank spreadsheet, a test table, or a clearly marked test list inside your CRM. Do not connect a live follow-up routine yet.
If you are still deciding between automation platforms, compare the same job in Make versus Zapier. If you already use Make, follow the separate Make webhook setup. The screens and test behavior are different enough that mixing the two guides causes mistakes.
Step 1: create the receiving address
Open Zapier and select Create, then Zap. Click the Trigger step. Search for Webhooks by Zapier and select it.
Open the Event menu and choose Catch Hook. Use this option for a normal form or app sending names, email addresses, and other simple fields. Catch Hook reads the incoming request and lays out those values for later steps.
Choose Catch Raw Hook only when the source app's instructions say you need the untouched request body or request headers. A header is a label sent alongside the main information, often used for identification or security. Zapier limits a Catch Raw Hook body to 2 MB, while the normal trigger limit is 10 MB.
Leave Pick Off A Child Key empty on your first pass. That setting tells Zapier to ignore the rest of a package and use only one named section. It is useful later, but it can hide fields during setup.
Select Continue, open the Test tab, and choose Copy beside the webhook address. Treat this address like a password. Anyone who has it can send information into this Zap.
Your move
Step 2: connect the source app
Open the app that sends the inquiry. Look under Settings, Integrations, Developer, or Webhooks. Choose the option to add a webhook, endpoint, or callback. An endpoint is simply the receiving web address.
Paste the Zapier address into the destination field. When the app asks for a request method, choose POST. POST means the source sends a package of information to the address. When it asks which event should send the request, choose the narrowest useful event, such as New form submission rather than Any contact update.
Select only the fields the next step needs. For a basic inquiry, send a test ID, name, email, phone number, lead source, and submission time. Do not send payment details, passwords, health information, or private notes through a general lead webhook.
Save the connection, but leave any live customer automation disabled.
Step 3: send one complete test
Open the public form or the source app's test screen. Submit a record that is unmistakably fake. Use a name such as Webhook Test and an inbox you control. Fill every field you expect a real customer to complete, including optional fields that later decide which route the lead takes.
Return to the Zapier trigger. Open Test and select Test trigger. Zapier should show the received record and split the submission into separate fields.
Check the values, not just the field names. A field called phone is useless if it contains a blank value. Confirm that the email is in the email field, the phone number includes its country code, the source label is readable, and the submission time matches your test.
Zapier's testing instructions warn that action tests can make real changes in connected apps. Use a blank destination and a controlled email address before you test any later action.
Step 4: add a safe destination
Select the plus sign under the trigger to add an action. An action is the work Zapier performs after the webhook arrives. Choose a spreadsheet row, Zapier Table record, or test contact list. Connect the account when prompted.
Map each webhook field to the matching destination field. Mapping means telling Zapier where each piece of information belongs. Put the received email into Email, the received phone into Phone, and the source label into Lead source. Never type the sample value itself into the destination field. Select the field token from the webhook step so future submissions use their own values.
Test the action once. Open the destination in a second browser tab and confirm that one complete record appears. Then submit a second test with different values. This catches hard-coded sample data before it reaches a live list.
For the next stage, the lead-to-CRM automation guide shows the checks that belong between capture and follow-up, including duplicate prevention and source tracking. The platform is different, but the control points carry over.
The part that breaks
The common failure is testing Zapier before the source has sent a complete request. Zapier cannot invent a sample. Its webhook troubleshooting page says the request cannot be empty, and the test view shows the three most recent requests received within the past hour.
Fix that in this order:
- Compare the address in the source app with the address in Zapier, character for character.
- Send a new test containing at least one field.
- Return immediately to Test, then select Test trigger.
- If nothing appears, confirm that the source sends JSON, XML, or form-encoded data. These are three standard ways systems package field names and values.
- If the test works but a live Zap does not, open Zap History and inspect the failed run before changing the setup.
Another trap appears when a Zap moves to a different owner. Zapier says the webhook address can change because it contains the owner's Zapier ID. Update the address in the source app after any ownership transfer, then send a fresh test.
Copy this
Use this checklist as the test record. Replace each value with controlled information, never a real customer's details.
test_id: webhook-test-2026-09-26-01
name: Webhook Test
email: an inbox you control
phone: a test number with country code
lead_source: website-webhook-test
consent: false
submitted_at: current date and time
expected_result: one record, zero messages
Upgrade path
Once two different tests create two correct records, add a Filter step. A filter is a gate that lets the Zap continue only when a rule is true. Require an email address or phone number, reject records marked as tests, and route incomplete submissions to a review list instead of starting follow-up.
Then add duplicate protection in the CRM before the create step. Search for the email first, update an existing record when one is found, and create a new record only when the search returns nothing. Price the finished routine against your expected volume using the Zapier pricing breakdown, because every successful action can affect your monthly task use.
Keep the first live run supervised. Publish the Zap, submit one controlled record, inspect Zap History, and confirm the destination before enabling messages. Then document the owner and webhook address alongside the rest of your automation runbooks. Get the next build from /articles.
Frequently asked questions
What is a Zapier webhook?
A Zapier webhook is a unique web address that receives information from another system and can start an automated routine as soon as that information arrives.
Can you use Webhooks by Zapier on the Free plan?
Yes. Zapier's official trigger guide lists Webhooks by Zapier as available on Free, Professional, Team, and Enterprise plans.
Should you choose Catch Hook or Catch Raw Hook?
Choose Catch Hook for most setups because Zapier separates the incoming information into usable fields. Choose Catch Raw Hook when you need the untouched request body or its headers.
Why does Zapier say it cannot find a webhook request?
Zapier needs a recent, non-empty sample at the exact webhook address. Send a fresh test from the source app, then return to the Test tab and select Test trigger.
About Runbook
AI tools and automation builds for marketers. What to use, how to wire it, and the workflow to copy this week. How we work
GET THE NEXT DISPATCH
Run the next build before your competitors read about it.
One short email when an AI tool or automation actually changes the work, with the build to copy.
No send unless there is a build worth running.
// keep_reading
Related builds

n8n vs Zapier: which automation tool costs less?
n8n vs Zapier compared on price, setup, app connections, and maintenance. See which one fits your business before rebuilding a workflow.

Relay shuts down, YouTube tightens AI: July 21 dispatch
Relay sets deletion dates, YouTube defines inauthentic AI video, MCP changes its plumbing, and Adobe puts AI guidance inside its camera.

Zapier flags AI builders, Google splits data: July 7 dispatch
Zapier's AI-builder survey, Google's Search data setting, Reddit's spam filters, and database app builders change your stack checks.