The stricken aircraft cartwheeled to the ground and exploded into flames before crashing into a street during the rush hour.
Burning wreckage and aviation fuel covered the road as eyewitnesses reported seeing cars on fire and hearing people screaming.
The Metropolitan Police confirmed that the helicopter had come down. London Fire Brigade said the crash happened near Wandsworth Road in South Lambeth.
Fire and rescue services said they were taking "lots of emergency calls" as eyewitnesses described seeing grey smoke towering into the sky, close to Battersea Bridge.
Some took to Twitter to report details.
One said the aircraft appeared to have hit a crane on a newly-built tower block on the south bank of the Thames. It crashed close to a railway line and a branch of Sainsbury's.
London Fire Brigade confirmed that the crane at the St George's Wharf development appeared to have been left "in a precarious position".
Video footage shot on a mobile phone showed an entire road blocked by burning wreckage and aviation fuel.
The side of a building on one side of the street was also damaged by the flames.
Passers-by stood watching as the wreckage burned. A motorcycle was also lying on its side in the road where it was abandoned.
Commuter Sherna Noah described seeing a "large plume of dark grey smoke" as she crossed Battersea Bridge at around 8am.
She said: "I was coming across the bridge and basically I could see a few cyclists on the bridge looking towards the water.
"I looked over to see what they were looking at and could see a pall of grey smoke coming from the south side.
"You could see a large plume of dark grey smoke."
A woman who answered the phone at the London Heliport, in Battersea, would not comment on the fire.
The incident caused gridlock as roads were closed at the height of the rush hour.
Visibility was apparently low with London City Airport in Docklands reporting delays. The top of the tower block was obscured by mist.