Skip to main content
Kanal is a stream processing engine designed to be simple, reliable, and boringly efficient. It focuses on the 80% of use cases that matter most for event-driven applications.

UI-First

Build pipelines visually with a modern drag-and-drop editor

Kafka Connect Plugins

Integrates seamlessly with the Kafka Connect ecosystem

Batteries Included

Built-in monitoring, error handling, and health checks

Decentralized

No central coordinator. Each instance runs independently

Kanal in 60 seconds

Where does Kanal fit the ecosystem?

Kafka Streams and Spring Kafka give teams autonomy, but demand Java expertise. Shared Kafka Connect clusters are no-code, but centralized and dependent on a platform team. Kanal is both: the simplicity of Connect with the independence of Streams, letting any team own their pipelines end-to-end. Kanal positioning in the ecosystem

When to Use Kanal

Kanal shines when you need to move fast and ship reliable pipelines without a dedicated streaming team:
  • Fan-out to multiple sinks — one topic, many destinations: databases, search indexes, warehouses, APIs
  • Real-time enrichment — hydrate events with lookups from HTTP services or caches before they land
  • Smart routing — split, filter, and route messages based on content to different topics or systems
  • Protocol bridging — connect Kafka to anything with REST, JDBC, or the 200+ Kafka Connect plugins
  • Self-service streaming — let product teams own their data flows without waiting on platform engineers

When to prefer other options

Kanal deliberately trades off advanced stateful capabilities for simplicity. If your use case requires any of the following, consider Kafka Streams or Flink:
  • Windowed aggregations — time-based grouping, tumbling/sliding windows, session windows
  • Stream-to-stream joins — correlating events across multiple topics by key and time
  • Exactly-once across multiple outputs — transactional writes spanning Kafka and external systems
For pure throughput on stateless workloads, Kanal holds its own. But when your logic needs to “remember” unbounded state across millions of keys, purpose-built stream processors are the right tool.

Next Steps