Substack and Beehiiv don't speak CAPI
When a paid subscriber upgrades, your newsletter platform fires an internal hook. It does not POST to Meta Conversions API, Google Ads, or Klaviyo. Your ad reports show the click — never the upgrade.
Klaviyo, Stripe Billing, Beehiiv, Kajabi, and Memberstack subscribers fan out to Meta, Google, and Klaviyo as durable, signed, server-side events — with subscriber LTV, retention insights, anomaly auto-pause, and audit chain integrity preserved end-to-end.
When a paid subscriber upgrades, your newsletter platform fires an internal hook. It does not POST to Meta Conversions API, Google Ads, or Klaviyo. Your ad reports show the click — never the upgrade.
Stripe sees the payment, not the publication, the post, or the tier. Lifetime value lives inside Beehiiv or Kajabi. Optimizing campaigns on raw Stripe Subscribe events flattens that signal.
Mail Privacy Protection auto-opens email — engagement signal evaporates. Server-side post.clicked from Beehiiv is the only reliable engagement event, but it never reaches Meta.
Beehiiv (native) or Substack-via-Zapier or Kajabi or Memberstack POSTs subscriber lifecycle events to TrackLayer with HMAC signature.
TrackLayer maps subscriber.created → subscriber_signup, subscriber.paid → paid_subscriber, post.clicked → content_engaged. One taxonomy across providers.
Currency, tier, plan name, publication ID flow through. Email is hashed for CAPI. Provider event ID powers cross-stack deduplication.
Meta CAPI as Subscribe / CompleteRegistration. Google Ads as subscribe_paid for tROAS. Klaviyo as started_paid_subscription to trigger nurture flows.
Paid Substack newsletter, $7,800 MRR
Kajabi members, $14,200 MRR, podcast + course bundles
Memberstack-powered Webflow site, $4,400 MRR
Beehiiv + Memberstack + Substack. Up to 25k events/mo.
Adds Kajabi, Klaviyo nurture, content_engaged retargeting.
Multi-publication, Stripe link, custom audience exports.
POST /v1/integrations/beehiiv/webhook?merchant_id=mer_5f3a
X-Beehiiv-Signature: sha256=2b8f...
{
"event": "subscriber.paid",
"event_id": "evt_01HF8AKZ",
"occurred_at": 1761500000,
"data": {
"id": "sub_8b2x",
"email": "reader@halcyon.io",
"publication_id": "pub_north",
"tier": "premium",
"amount_cents": 1000,
"currency": "USD"
}
}
→ canonical: paid_subscriber
→ Meta CAPI: Subscribe ($10.00 USD)
→ Klaviyo: started_paid_subscriptionNot natively. Substack provides email forwards and an admin export. Creators wire Substack → Zapier → TrackLayer using a per-merchant shared secret. The Zap runs on `paid subscriber added`, `subscription_canceled`, and `subscriber added` triggers and POSTs the canonical Zapier shape to /v1/integrations/substack/webhook.
Creator integrations are available from Lite ($19/mo) up. Solo newsletter operators with a few thousand subscribers can wire the full Beehiiv → Meta + Google + Klaviyo stack without paying enterprise pricing.
Every webhook URL carries `?merchant_id=<your-id>` and a per-provider HMAC secret stored on the merchants table. The signature is verified before any payload is processed — providers without a valid signature get a 401 and never reach the ingestion pipeline.
Each webhook carries a provider-supplied event_id. TrackLayer caches that in IDENTITY_KV for 30 days and skips duplicates. Beehiiv retries, Memberstack retries, and Zap re-runs all dedupe automatically.
We use essential cookies to keep the site secure and functional. Analytics and third-party tags run only with your consent. See our Cookie Policy.
We use essential cookies to keep the site secure and functional. Analytics and third-party tags run only with your consent. See our Cookie Policy.