Coinbase works with dynamic withdrawal fees based on the level of network congestion; currently they charge you like 0.00002BTC, but in 2017/2018 there were short periods where they charged even over 0.002BTC.
Every fee model has its pros and cons depending on how congested the network is. Currently Coinbase's dynamic fee model is the best for people, but when the fees spike up, Binance's fee model will stand out as being the cheapest.
I remember quite well. In late 2017, Binance's withdrawal fees also reached somewhere in the range of 0.001BTC. Binance does change it's withdrawal fees though not very often to match the trend. Just less than a month ago, the fee was at around 0.0003 BTC, right now it's 0.0005 BTC.
About a week ago I did make a withdrawal from Bitmex using the minimal fee of 0.0003BTC but the transaction would take several hours to get it's first confirmation unlike in the past month when it would get confirmed within the next 2 blocks. I believe binance also slightly raised their fee based on the recent rise on the minimal fee required for the transaction to be confirmed within the next block or 2 blocks.
Remember this exchanges sometimes process transactions with more inputs and outputs than our normal transactions that may have 1 input and output so sometimes the fees change considerably.