Dittofeed
Open source customer messaging automation platform. Build event-triggered journeys for email, SMS, push, and webhooks — a self-hostable alternative to Braze, Customer.io, and Iterable without the per-MAU pricing
Quick Start
git clone https://github.com/dittofeed/dittofeed && cd dittofeed && cp .env.example .env && docker compose up -d Overview
Dittofeed is an open source customer messaging automation platform — the self-hosted answer to Braze, Customer.io, and Iterable. You send user events and properties to Dittofeed, define journeys that respond to those events, and it handles the orchestration of personalised messages across email, SMS, push notifications, and webhooks. The billing model of the commercial alternatives — typically per monthly active user — goes away when you self-host.
The core primitive is the journey. A journey is a visual flow that defines what happens when a user matches a certain condition: enters a segment, performs an action, or reaches a specific point in their lifecycle. From there, you add steps — wait a day, check whether the user has done something, send an email if they have not, branch based on their subscription tier. The builder handles branching logic, delays, and conditional splits in a drag-and-drop interface.
Segment compatibility makes migration more practical than it might otherwise be. Dittofeed accepts the same identify and track event schema that Segment uses, which means any instrumentation already built for a Segment pipeline can feed Dittofeed directly without schema changes.
The infrastructure requirement is the main consideration for self-hosting. Dittofeed runs on a stack of PostgreSQL, ClickHouse for analytics queries, and Kafka or Redpanda for event streaming. This is meaningfully more complex than deploying a single-container email tool. It reflects Dittofeed’s ambition — handling high-volume event streams reliably — but it is worth evaluating against simpler options like Listmonk if your use case is primarily broadcast email rather than behavioural lifecycle messaging.
Dittofeed: Pros & Cons
| Pros (The Wins) | Cons (The Friction) |
|---|---|
| Visual journey builder: Multi-step, branching flows based on user events. | Heavy stack: ClickHouse, Kafka, PostgreSQL all required. |
| Segment-compatible: Same event schema; easier migration. | No built-in ESP: Bring your own email and SMS provider. |
| MIT, no MAU fees: Volume limited by your infrastructure, not pricing. | Younger platform: 2.8k stars; feature depth still maturing. |
| Multi-channel: Email, SMS, push, and webhooks from one journey. | Complex self-hosting: More moving parts than simpler email tools. |
Use Cases
Specific ways to use Dittofeed for your workflow.
Deployment Strategy
Recommended ways to host Dittofeed in your own environment.