How come this formula predicts more than four years to the next halving? So I was looking at https://www.binance.vision/halving and it shows that their formula for halving is

(Halving block height - Next block height) * Average time between blocks - estimated time until the next block

However, their countdown seems off as it exceeded 4 years, is this accurate?
What's the correct formula to calculate countdown for halvings?
The formula is correct - a halving occurs every 210000 blocks. If the average time between each block is exactly 10 minutes, you wind up with a total time of about 3.995 years.

However, if blocks are mined slightly slower, you will take slightly longer than 4 years - if they are mined faster than 10 minutes, it'll take less than 4 years to get to the next halving.

Predicting the next halving's date right now is pretty much impossible, as it would vary immensely based on hashrate and difficulty changes over the next few years.