Now open · Spark is free

Realtime channels that scale to millions and idle for free.

A managed WebSocket service for channels, presence and live updates. Fan-out is free, idle connections cost nothing, and paid plans never hit a wall.

npm install @thunderclapjs/client @thunderclapjs/server
chat.ts
import { Thunderclap } from "@thunderclapjs/client";

const thunderclap = new Thunderclap({
  key: process.env.THUNDERCLAP_KEY,
  // Grants private channels, fetched on every reconnect.
  token: () => fetch("/api/realtime-token").then((r) => r.text()),
});

const room = thunderclap.subscribe("private-room-42");
room.bind("message", (data) => showMessage(data));

// Offline for a while? Fetch what you missed.
room.onGap((gap) => backfill(gap));

Why Thunderclap

Built for traffic that spikes, and for the hours it doesn't.

Most realtime bills grow with every delivery and every idle socket. Thunderclap charges for what you send into it, and nothing for keeping people connected.

Fan-out is free

A message to one subscriber or a hundred thousand counts once. You pay for what you publish, never per delivery.

Idle costs nothing

Quiet connections hibernate and keepalives are answered at the edge, so a tab left open all night doesn't show up on your bill.

Elastic from zero

Capacity appears the moment it's needed and disappears when it isn't. No clusters to size, no warm pools, no scaling lag.

Never miss a message

Every event carries a sequence number. After a network drop, thunderclapJS tells you exactly which events to fetch from your own store.

Private channels, your way

Grant channels up front with a connection token, or authorize each one on demand. Your secret never leaves your server.

A five-minute Pusher migration

Point your existing Pusher clients and server SDKs at Thunderclap, then move to thunderclapJS when you're ready.

How it works

A mesh of tiny actors at the edge.

Connections land on lightweight shards near your users. Channels talk to shards, never to individual sockets, so a million people joining one room is a few hundred messages inside the mesh.

Capacity is a name, not a server

A shard exists the instant it's first used and costs nothing until then.

Channels scale with shards

Subscribe storms are absorbed at the edge instead of hitting one hot spot.

Ordered, with gaps reported

One writer per channel assigns sequence numbers, so clients know when to backfill.

clientsshardschannel

Pricing

Plans that grow with you. No walls.

Pick a plan for what you expect. If you outgrow it, nothing gets cut off: extra usage is billed at simple pay-as-you-go rates, and every message fans out for free.

Spark

For side projects and prototypes.

$0/ month

200 peak connections2M messages / month
  • Public, private, presence and cache channels
  • 1 app
  • Community support
Starter

For your first real users.

$19/ month

5,000 peak connections10M messages / month
  • Everything in Spark
  • Webhooks
  • Gap detection
  • 5 apps
  • Email support
ProMost popular

For products that live in realtime.

$79/ month

25,000 peak connections40M messages / month
  • Everything in Starter
  • Presence up to 10k members
  • Room affinity
  • 99.9% uptime target
Business

For scale, with guarantees.

$399/ month

150,000 peak connections200M messages / month
  • Everything in Pro
  • Unlimited presence
  • Relaxed-ordering channels
  • Priority support
  • 99.95% uptime target

Outgrow your plan? Keep going.

Paid plans are never capped. Usage beyond what your plan includes is billed on top, at the same rates on every plan. You get usage alerts, a live bill projection and an optional spending limit. Spark is free, so it stops at its limits instead.

Beyond your planRate
Peak connections$2 per 1,000 peak connections
Messages$3.50 per 1M messages
Fan-out to subscribersFree

Peak connections are measured at the 95th percentile of hourly peaks, so a few hours of spikes don't set your month's bill.

Enterprise

Millions of connections · Negotiated SLA · Region pinning · SSO and audit logs · Volume pricing

Spark is available now. Paid plans are coming soon; prices are in USD, excluding taxes, and may change before they open.

FAQ

Questions, answered.

Start building in minutes.

Sign in with your email: no password, no card. Your first organisation starts on Spark, the free plan, with an app and keys ready to use.