This is the best article I found. https://www.confluent.io/blog/error-handling-patterns-in-kafka/ It explains DLQ pattern.