A webhook tester gives you a public URL that captures every request a service sends, so you see the exact headers, body and method before writing a single line of handler code. The right tool depends on the job: Webhook.site and Svix Play inspect payloads in seconds, ngrok and the Hookdeck CLI forward live events to localhost, and Beeceptor mocks the responses your sender expects.
We compared ten tools on free tier limits, local forwarding, custom responses, replay, self hosting and API access for CI tests. Prices come from vendor pages and pricing trackers checked in 2026.
Quick picks:
- Fastest payload inspection: Webhook.site
- Free inspection plus local forwarding: Hookdeck Console and CLI
- Mock responses for API testing: Beeceptor
- Failure and retry testing: Svix Play
- Tunnels to localhost: ngrok
- Self hosted and free forever: webhook-tester
Webhook Testing Tools Compared
Webhook Tester Features and Starting Prices (2026)
| Tool | Free Tier | Paid From | Local Forwarding | Custom Responses | Self Host |
|---|---|---|---|---|---|
| Webhook.site | 50 requests per URL, 7 day expiry | $9 a month | Pro plan CLI | Yes | Yes, MIT license |
| Hookdeck | Console free; account adds 10,000 events a month | $39 a month | Yes, free CLI | Limited | Zero |
| Beeceptor | 50 requests a day | $10 a month | Yes, built in tunnel | Yes, full mock rules | Enterprise |
| RequestBin | Last 100 requests, 7 days of history | $45 a month (Pipedream) | Zero | Through workflows | Zero |
| Pipedream | Free workflow tier | $45 a month | Zero | Yes, in code | Zero |
| ngrok | 1 domain, 20,000 requests a month | $8 a month | Yes, core feature | From your own server | Zero |
| Svix Play | Free, zero signup | Free | Yes, Svix CLI | Forced status codes | Zero |
| smee.io | Free, zero signup | Free | Yes, smee client | Zero | Yes, open source |
| Postman | 1,000 mock calls a month | $9 per user a month | Zero | Yes, mock examples | Zero |
| webhook-tester | Unlimited | Free | Yes | Yes | Yes, MIT license |
Zero in a cell means the tool skips that feature. Self hosted tools carry only your own server cost.
The 10 Best Webhook Testing Tools
1. Webhook.site
| Website | webhook.site |
| Best for | Instant payload inspection with zero setup |
| Free tier | Unique URL and email address, latest 50 requests kept, deleted after 7 days |
| Paid plans | Basic $9, Pro $19, Enterprise $69 a month, 20% off yearly |
| Standout features | Custom Actions to Slack, AWS and Google Sheets, scheduled requests, CLI forwarding on Pro |
Open the site and a unique URL appears before you type anything. Webhook.site also hands you an email address, so the same page tests inbound email parsers alongside webhooks. Paid plans keep request history for 365 days, from 1,000 requests on Basic to 100,000 on Enterprise, per the Webhook.site plan docs. The open source core runs on Docker for teams that keep payloads inside their own network.
2. Hookdeck (Console and CLI)
| Website | hookdeck.com |
| Best for | Free inspection that moves to production delivery |
| Free tier | Console with zero signup; free account adds 3 day retention and 10,000 events a month |
| Paid plans | From $39 a month |
| Standout features | Sample payloads from 16 providers, copy as cURL, payload search, CLI forwarding to localhost |
Hookdeck Console captures requests in the browser, and the Hookdeck CLI forwards those same events to a local server with a terminal view of each delivery, per the March 2026 Hookdeck tool guide. The sample library lets you fire a realistic Stripe or Shopify payload at your handler before the real provider sends one. Teams graduate to the paid gateway for retries, rate limits and fan out in production.
3. Beeceptor
| Website | beeceptor.com |
| Best for | Mocking the response your sender expects |
| Free tier | 50 requests a day, public endpoints deleted after 90 days of inactivity |
| Paid plans | Individual $10 a month for 15,000 requests, Team $25 a month for 100,000 |
| Standout features | Mock rules, OpenAPI, GraphQL and SOAP mock generation, built in tunnel |
Beeceptor sits between a webhook tester and an API mock server. Rules return custom status codes, delays and bodies, which tests how a sender behaves when your endpoint returns a 500 or takes 10 seconds. Import an OpenAPI file and Beeceptor builds a full mock API from it.
4. RequestBin by Pipedream
| Website | pipedream.com/requestbin |
| Best for | Quick inspection inside a Pipedream account |
| Free tier | Last 100 requests in the UI, SQL queries across 7 days of history |
| Paid plans | Pipedream Basic $45, Advanced $74, Connect $150 a month |
| Standout features | Turn any captured request into a Pipedream workflow |
RequestBin was one of the first public request bins, and Pipedream now runs it as part of its automation platform. SQL access to a week of captures helps when you need every event with a specific header or field. Inspection needs a Pipedream login, so it trails Webhook.site for one off checks.
5. Pipedream Workflows
| Website | pipedream.com |
| Best for | Processing webhooks with code after you capture them |
| Free tier | Free plan for personal workflows |
| Paid plans | From $45 a month |
| Standout features | 1,000+ app integrations, Node.js and Python steps, custom HTTP responses |
Pipedream turns a webhook URL into a full workflow trigger. A Stripe event lands, a Node.js step validates the signature, and the next step writes a row to Postgres or posts to Slack. Use it to prototype a webhook handler end to end before building the production version.
6. ngrok
| Website | ngrok.com |
| Best for | Forwarding live webhooks to localhost |
| Free tier | 1 domain and 20,000 requests a month |
| Paid plans | Hobbyist from $8 a month billed yearly, Pay as you go from $20 a month |
| Standout features | Traffic inspector with request replay, static domains, edge security rules |
ngrok opens a secure tunnel from a public URL to a port on your machine, so Stripe or GitHub hits your local code directly. Its local inspector at port 4040 shows each request and replays it with one click, which saves triggering the same event in the provider again. A static domain keeps the URL fixed between sessions, so you set the webhook address in the provider once.
7. Svix Play
| Website | svix.com/play |
| Best for | Testing retries and failure handling |
| Free tier | Free with zero signup |
| Paid plans | Free |
| Standout features | Forced status codes, random failure rate, echo body, public API for CI |
Svix Play stands apart for failure testing. Add force_status_code=503 to the URL and every request fails, or set random_failure_rate=30 to fail 30% of deliveries and watch how your sender retries, per the Svix Play docs. Its public API generates tokens and returns recorded events, which plugs straight into automated test suites.
8. smee.io
| Website | smee.io |
| Best for | GitHub webhooks on a local machine |
| Free tier | Free with zero signup |
| Paid plans | Free |
| Standout features | Channel URL plus a Node.js client that forwards to any local port |
GitHub recommends smee.io in its webhook testing docs. Start a channel, point the GitHub webhook at the proxy URL, then run smee –url URL –path /webhook –port 3000 to forward each delivery. The terminal shows a line like POST http://127.0.0.1:3000/webhook 202 for each event that reaches your server.
9. Postman
| Website | postman.com |
| Best for | Teams already testing APIs in Postman |
| Free tier | 1,000 mock server calls a month, 1 user |
| Paid plans | Solo $9, Team $19, Enterprise $49 per user a month |
| Standout features | Mock servers from saved examples, collection runs to send test payloads |
Postman works on both sides of a webhook. Save a sample payload as a request and send it to your endpoint to simulate the provider, or create a mock server that answers like the receiving service. Free plan limits, tracked by CostBench in 2026, cap collection runs at 25 a month.
10. webhook-tester (Open Source)
| Website | github.com/tarampampam/webhook-tester |
| Best for | Private, self hosted capture with zero limits |
| Free tier | Unlimited on your own server |
| Paid plans | Free, MIT license |
| Standout features | Go backend with React UI, custom responses, tunneling, memory, Redis or file storage |
webhook-tester gives you a Webhook.site style interface on your own infrastructure, which suits payloads carrying customer data or health records. Storage runs in memory by default, so set Redis or file storage to keep captures across restarts. Setup takes about 30 to 60 minutes with Docker.
Which Tool Fits Each Job
Best Tool for Each Webhook Task
| Task | Best Tool | Runner Up |
|---|---|---|
| See a payload in under a minute | Webhook.site | Svix Play |
| Run a webhook against code on localhost | ngrok | Hookdeck CLI |
| Test GitHub webhooks locally | smee.io | ngrok |
| Return custom status codes and bodies | Beeceptor | Webhook.site |
| Simulate failures and retries | Svix Play | Beeceptor |
| Fire sample Stripe or Shopify payloads | Hookdeck Console | Postman |
| Run webhook checks in CI | Svix Play API | Webhook.site API |
| Keep sensitive payloads private | webhook-tester | Webhook.site self hosted |
| Process webhooks with code | Pipedream | Webhook.site Custom Actions |
Webhook Timeouts and Retries by Platform
A tester shows what arrives, and the sender rules decide what happens when your endpoint is slow. Test against these limits, since a handler that takes longer than the timeout triggers duplicate deliveries.
Response Timeouts and Retry Rules for Popular Webhook Senders
| Platform | Response Timeout | Retry Behavior |
|---|---|---|
| Slack Events API | 3 seconds | Up to 3 retries |
| Shopify | 5 seconds | 8 retries over 4 hours |
| GitHub | 10 seconds | Manual redelivery from the webhook settings |
| Twilio | 15 seconds | Retries set per request |
| Stripe | Fast 2xx expected | Retries with backoff for up to 3 days in live mode |
What to Test Before a Webhook Goes Live
- Signature checks. Send a payload with a wrong HMAC signature and confirm your handler rejects it with a 401.
- Duplicate events. Replay the same event twice in ngrok or Hookdeck and confirm the second one changes zero records.
- Slow responses. Return a 200 first and process in a queue, then confirm the sender stops retrying.
- Error codes. Force 400, 500 and 503 responses with Svix Play or Beeceptor and log how each sender reacts.
- Event order. Send a subscription update before the create event and confirm your code handles the reverse order.
- Large payloads. Paste a full Shopify order with 50 line items into Postman and confirm the body parser accepts it.
Frequently Asked Questions
What Is the Best Free Tool for Webhook Inspection?
Webhook.site for quick inspection and Svix Play for failure testing. Both work with zero signup.
How Do I Test Webhooks on Localhost?
Run ngrok, the Hookdeck CLI or the smee client to create a public URL that forwards each request to your local port.
Is It Safe to Send Real Data to a Public Capture URL?
Use test mode data on public tools, since anyone with the URL reads the requests. For real customer data, self host webhook-tester or the open source Webhook.site build.
Which Tool Works in CI Pipelines?
Svix Play, through its public API that creates tokens and returns recorded events for assertions.