Consumer refactoring