RudderStack → ChurnLoopMigration guide

RudderStack owns your data pipeline.
ChurnLoop acts on it.

You chose RudderStack for the right reasons: open-source, warehouse-first, no vendor lock-in on your event data. That still holds. ChurnLoop is the intelligence layer that sits on top — reading those events, writing the briefings, and running the lifecycle work you don't have time to do yourself.

Compatible with RudderStack's HTTP destination·No re-instrumentation·Keep RudderStack running alongside

Honest comparison

RudderStack made the right architectural call. The pipeline isn't the problem.

Open-source, warehouse-first event routing was a smart choice. The pipeline works. What's missing is everything that comes after the data lands — the reading, the deciding, the acting.

✓ Where RudderStack excels
✓Open-source, self-hostable, no vendor lock-in
✓Warehouse-first — events land in your own Postgres/BigQuery
✓GDPR-friendly: your infrastructure, your data residency
✓Segment-compatible SDK — minimal migration overhead
✗ Where you're still on your own
✗Data sitting in the warehouse ≠ decisions

Your events are in BigQuery. Now what? Someone still has to write the SQL, spot the cohort, draft the email, and hit send. That someone is you, after a long day of shipping.

✗No lifecycle intelligence layer

RudderStack routes and warehouses. It doesn't notice when a power user goes cold, draft a win-back, or file a morning briefing about what changed overnight.

✗Warehouse ≠ action

Even with a perfect data warehouse, the gap between "I see a trend" and "a message was sent" is still 3 tools, 2 engineers, and a project ticket.

✗No narrative — just rows

BigQuery can't tell you "Maria is at risk." It can only confirm it if you already knew to look. ChurnLoop proactively surfaces the things worth your attention.

How they fit together

Keep RudderStack. Add the intelligence layer on top.

ChurnLoop doesn't replace your warehouse or your pipeline. It's an additional destination that reads the same events and adds the layer RudderStack was never designed to provide: lifecycle judgment.

Your app
Instruments events via RudderStack SDK
RudderStack
Routes events to your warehouse + existing destinations — unchanged
ChurnLoop ingest endpoint
Also receives the same events via HTTP destination (no re-instrumentation)
ChurnLoop intelligence layer
Reads events → builds user reflections → fires playbooks → files morning briefing

Your warehouse keeps receiving events from RudderStack as before. Your existing destinations (Mixpanel, Customer.io, etc.) keep working. ChurnLoop is additive — it reads the same stream and adds the lifecycle layer those tools never provided.

Feature by feature

Complementary tools. Not competing ones.

This table is honest: RudderStack wins on infrastructure control and routing breadth. ChurnLoop wins on everything that requires reading, thinking, and acting on user behavior.

Feature
RudderStack
ChurnLoop
Open-source, self-hostable
✓
—
Event collection (JS, Node, Python SDKs)
✓
✓
Warehouse-first event storage (Postgres, BQ)
✓
—
Routes events to 150+ destinations
✓
—
Segment-compatible wire format
✓
✓
Real-time event stream (Pulse)
—
✓
Funnel analytics with movement alerts
—
✓
Per-user reflections written in prose
—
✓
Morning briefing (narrative, not dashboard)
—
✓
Lifecycle playbooks (copilot + autopilot)
—
✓
AI-written campaign copy in your voice
—
✓
Audience builder (plain-English cohorts)
—
✓
Intervention approvals (approve / reject)
—
✓
Slack notifications + approval buttons
—
✓
Stripe integration (subscription events)
Via destination
✓
Audit trail of every AI decision
—
✓
User erasure / GDPR DSR (one click)
—
✓

Migration

Five-minute migration. RudderStack stays running.

ChurnLoop accepts the same wire format as RudderStack's HTTP API destination. Add it as a new destination in your RudderStack workspace — existing sources and destinations are completely unaffected.

01

Add ChurnLoop as an HTTP destination

In your RudderStack workspace, add a new HTTP destination. Paste your ChurnLoop ingest URL and write key. Every source you connect to this destination starts flowing to ChurnLoop immediately.

~ 2 minutes
02

Events start flowing — warehouse unchanged

Your warehouse destinations (BigQuery, Postgres, Redshift) keep receiving events. ChurnLoop receives a copy of the same stream in parallel. No data is rerouted or lost.

~ 0 minutes
03

First briefing the next morning

ChurnLoop spends 24 hours learning from your event stream — building user reflections, calibrating playbook thresholds. Next morning: your first briefing. Trends, drafts, cohort changes.

~ next morning
Your existing RudderStack instrumentation — unchanged
// Existing RudderStack calls — nothing changes here
rudderanalytics.track('trial_activation', {
  plan: 'trial',
  feature: 'widget.installed',
})

// In RudderStack workspace, add an HTTP destination:
// Endpoint → https://ingest.churnloop.com/v1/compat/segment
// Auth     → Bearer <your-churnloop-api-key>
//
// Your warehouse (BigQuery, Postgres) keeps receiving events as-is.
// ChurnLoop receives a parallel copy of the same stream.
Note

ChurnLoop uses the same wire format as Segment's HTTP API, so any RudderStack source that supports an HTTP destination (web, server, mobile) works out of the box. No custom transformations needed.

Privacy & data control

You chose RudderStack for data ownership. ChurnLoop respects that.

The reason people pick RudderStack over Segment is usually data sovereignty and privacy. ChurnLoop is designed with the same instincts: your event stream never trains the underlying models, PII stays in your region, and you can export everything at any time.

No model training

Your data stays yours.

Your events, user profiles, and sent messages are never used to train or fine-tune the underlying models. Bring-your-own-key for completions on Scale plans.

One-click erasure

GDPR DSR in a single click.

Subject access and deletion requests are processed in one click. ChurnLoop cascades erasure across all stored events, reflections, and dispatches for the user.

GDPR-native

One-click DSR, full erasure.

Subject access and deletion requests are processed in one click. ChurnLoop cascades erasure across all stored reflections, events, and dispatches for the user.

Export any time

Your data, on demand.

On Scale plans, a continuous Postgres mirror gives you a live copy of everything ChurnLoop holds. S3 export also available. No lock-in.

Audit trail

Every AI decision is recorded.

For every message, pause, campaign enrollment, or playbook fire: the events seen, the reasoning followed, the approval or auto-run decision. Rewindable.

Pause everything

One switch to stop it all.

A master pause in the topbar halts every playbook, campaign, and autopilot run immediately. Your audit trail stays intact. Resume when you're ready.

Pricing

Simple pricing. No per-seat tax.

One price by event volume. Every plan includes every surface, every model call, every lifecycle feature — and every seat. 14-day free trial, cancel anytime.

Starter
€19/mo

Early-stage products shipping to real customers.

50,000 events/month

Start 14-day trial
RECOMMENDED
Growth
€49/mo

Growing SaaS with a churn problem worth solving.

300,000 events/month

Start 14-day trial
Scale
€149/mo

Teams at scale or running multiple products.

1,000,000 events/month

Talk to us

Start tomorrow

Your warehouse keeps the data.
ChurnLoop turns it into decisions by morning.

Add ChurnLoop as an HTTP destination in RudderStack. No re-instrumentation, no warehouse changes, no either/or. Just add the intelligence layer your pipeline was always missing.