A passenger in a taxi hit by a suspected speeding drink driver has used his belt to keep the young man's arm attached in what police have described as an "amazing act".

Witnesses to the crash say the 21-year-old ute driver was travelling on Dynon Road in West Melbourne at speeds of up to 100km/h, with his arm out the window, when the crash occurred around 6.30am this morning.

The 21-year-old's ute landed on its side.

Witnesses say the 21-year-old had his arm out of the window when he crashed into the taxi. (9NEWS) (9NEWS)

It's believed the ute was travelling at speeds of 100km/h when it crashed into a taxi and two other vehicles. (9NEWS) (9NEWS)

Rob, pictured seated, held the man's nearly severed arm in place while waiting for paramedics to arrive. (9NEWS) (9NEWS)

The hero taxi driver and passenger Rob - who, incredibly, were not injured in the crash - managed to flip the vehicle upright with the help of a nearby off duty nurse.

Rob, who was already on crutches from a previous injury, had been returning from a night at the casino.

He used his belt to make a tourniquet to stop the bleeding from the P-plate driver's arm while waiting for paramedics to arrive.

“He has actually exited the taxi and rendered first aid to the driver, because the driver’s arm was in a bad way and he’s used his own belt to sever the bleeding,” Acting Sergeant Alix Watson told 9NEWS.

“It’s amazing – what an act. The driver needs to thank that passenger.”

Incredibly, neither the taxi driver nor Rob were injured in the crash. (9NEWS) (9NEWS)

The ute driver will undergo testing to determine whether he was under the influence of drugs or alcohol. (9NEWS) (9NEWS)

Paramedics then arrived and took the man to hospital, where he will undergo surgery on his badly injured arm.

Authorities said empty beer bottles were found inside the ute and the driver will undergo mandatory testing to determine whether drugs or alcohol were in his system at the time of the crash.

The ute was towed from the crash site just after 8.30am. (Lauren Tomasi / 9NEWS) (Nine)

The crash caused serious traffic congestion, with authorities warning motorists to take alternative routes.

Melbourne is waking up to extremely thick fog this morning, causing visibility issues for motorists, but the weather has been ruled out as a factor in the crash.

Melbourne is waking up to extremely thick fog this morning, causing visibility issues for motorists. (Nine)

The fog will make way for a pleasant day, with a sunny top of 21 degrees. (Nine)