See every webhook. Replay any of them.
Disposable endpoints that capture every webhook — method, headers, query, body. Inspect them live, then replay any request against your real app. One lifetime key, no ads, no per-request pricing.
> curl -X POST gethooklab.dev/api/h/<id>
Try it live — no signup
Everything between the webhook and your handler
Instant endpoints
One POST gives you a unique capture URL. Point Stripe, GitHub or any webhook at it — no DNS, no tunnel, no signup for the demo.
Full request capture
Method, query string, headers and up to 64KB of body — every request stored, last 100 per endpoint.
Pretty JSON inspector
Bodies that parse as JSON render pretty-printed in the live viewer. Raw text stays raw.
One-click replay
Re-send any captured request to your real app — same method, headers and body — and read back status and timing.
Forward & test
Debug your handler by replaying production-shaped payloads against localhost tunnels, staging or prod.
Privacy-first
Cookie, Authorization and X-API-Key headers are stripped before storage. We cannot leak what we never keep.
Why developers switch to HookLab
| Feature | webhook.site (free) | HookLab |
|---|---|---|
| Free request limit | 500 requests, then upgrade | Plans up to 500k/month + lifetime deal |
| Request replay | Paid plans only | Included on every plan |
| Ads | Ads on the free tier | No ads, ever |
| Sensitive headers | Stored as received | Stripped at capture |
| Instant API key | Account + upgrade flow | Redeem → key in seconds |
- Body captured per request
- 0KB
- Requests kept per endpoint
- 0
- Ads, ever
- 0
Body captured per request
Requests kept per endpoint
Ads, ever
Catch your first webhook in 60 seconds
Redeem your coupon and get a lifetime API key — no recurring billing.