Introduction

Updated May 02, 2026

What is Splithook?

Splithook is a webhook debugging and development tool for developers. It sits between the service sending webhooks (Stripe, GitHub, Shopify…) and your local handler, giving you a live feed of every request, the ability to replay any event with a single click, and automatic re-signing so your HMAC verifiers keep passing in development.

The name says it all: split the webhook to as many destinations as you need, and hook it into your local dev workflow.

The three problems Splithook solves

1. Webhooks are invisible in development

Your local server is behind NAT. The provider can't reach localhost:3000, so you either use ngrok and pray the tunnel stays up, or you manually fire curl requests and guess at the payload shape. Neither scales when you're debugging a race condition at 2am.

Splithook gives each workspace a permanent public endpoint (https://splithook.com/e/{slug}) that captures every webhook, stores it, and streams it to your dashboard in real time — no tunnel required just to see what arrives.

2. Replaying breaks signature verification

Stripe timestamps your webhooks. If you try to replay a captured event five minutes later, your handler rejects it: Webhook timestamp outside tolerance. Every provider has a similar mechanism, and every developer has lost time to it.

Splithook re-signs the payload on the fly using your development signing secret, stamping a fresh timestamp before delivery. Your handler sees a perfectly valid signature — even if the original event is three days old.

3. Sharing webhooks across a team is painful

Two developers working on the same Stripe integration both need to receive the same charge.failed event. The usual answer is "pick one, forward manually". Splithook fans out a single captured webhook to N destinations simultaneously — each developer on their own tunnel, each with their own filter and signing secret.

How it compares

Feature webhook.site ngrok Hookdeck Splithook
Permanent endpoint
Real-time dashboard
One-click replay
Re-sign on replay
Fan-out to N destinations
Schema inference
TypeScript types export
Self-hostable

Key concepts

Next steps