What Kafka CDC Capture Shape Looks Like
May 2026
Kafka CDC capture shape in Skippr is the Debezium envelope. If the topic is not Debezium-formatted, it is not the supported CDC path described in the docs.
Short Answer
Kafka CDC capture shape in Skippr is the Debezium envelope. The docs require messages with the standard Debezium fields op, before, and after. Skippr parses that envelope and maps op: c to insert, op: u to update, and op: d to delete.
A concrete example is straightforward. If a Debezium topic carries a customer row before image with status "trial" and after image with status "paid", the useful capture shape is one update mutation for that logical row. If the envelope only says delete, the useful capture shape is a delete mutation. The supported path is about message meaning, not just topic transport.
Why Teams Struggle with This
It is easy to say "we use Kafka for CDC" when what you really mean is "messages exist on a topic." Skippr is more specific. The supported source path is Debezium-formatted CDC, not an arbitrary event stream that happens to mention records.
- A Debezium connector must be publishing to the topic before Skippr can parse CDC meaning from it.
- The public docs name the envelope fields
op,before, andafteras the supported contract. - The mutation type comes from the Debezium op code, not from a custom app-level interpretation.
- The docs describe envelope parsing, but they do not define a broader public Skippr event schema beyond mutation meaning, key fields, and payload.
How Skippr Handles It
Skippr keeps the Kafka CDC story disciplined by requiring a real CDC envelope instead of treating Kafka as a generic JSON intake. That prevents a lot of downstream confusion, because insert, update, and delete semantics come from the source format itself.
It also means the warehouse discussion starts from better raw material. A final-state table can only be as clear as the captured mutation meaning, and the Debezium envelope provides that shape explicitly.
- Kafka CDC support is specifically for Debezium-formatted topics.
- Supported mutation codes are
c,u, andd. - The envelope includes
beforeandafterpayload fields. - Skippr extracts mutation kind, key fields, and payload from that envelope.
What the First Useful Version Looks Like
If you are deciding whether a Kafka topic is a CDC source for Skippr, start with the envelope. If it is not Debezium-shaped, you are outside the documented CDC path.
That one check answers most capture-shape questions immediately.
