Skip to content

How to solve the `util.pump is not a function` error in Node.js

Find out how to solve the `util.pump is not a function` error that might happen when trying to run old Node code

If you experience the error “util.pump is not a function” while running a Node.js app or a Node.js snippet, it’s because the app code is too old for the current Node.js runtime.

The pump() method that Node.js provided wrote a readable stream to a writable stream using this syntax:

util.pump(readableStream, writableStream)

This method is now gone, deprecated for a long time and removed when Node.js 6.0 was released in April 2016.

Luckily, it’s easy to fix this problem.

Replace the above syntax with:

const { pipeline } = require('stream')

//...

pipeline(readableStream, writableStream, () => {})

The third argument is a callback function that will be called when the pipeline is done.

Read more on pipeline here.


→ Here's my latest YouTube video

→ Get my Node.js Handbook

→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter

JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025

Bootcamp 2025

Join the waiting list