When I create a stream with option objectMode: false, I lose cork/uncork part of logic. That's happens in duplexify in https://github.com/maxogden/websocket-stream/blob/master/stream.js#L76. When I remove that initial stream by duplexify and leave stream = proxy only, everything works well. Can you tell me why you are doing stream by duplexify and what benefits it gives. And maybe I can help resolve this issue?