Eyewitnesses described the chaos and panic that followed as people began to realise what had happened.
British national Itay Lotem was nearby when the lorry ploughed into pedestrians in the centre of the city.
“I was sitting in a cafe, I just suddenly saw people coming in and talking about a lorry that had driven into people,” he told BBC News.
“I walked out and there were many people in that street, it’s a pedestrian street.
“Very quickly police cordoned everything off.”
Office worker JP Hanson described the scene as mayhem and said his building has been put into lockdown.
“Right now, inside here we have maybe 40 people,” he said.
“The mood is quite positive, obviously people are afraid – but I would say it’s a strong mood.”
Arash Pendari was in an office overlooking Drottninggatan when he realised panic was unfolding in the street below.
The 34-year-old said: “Some of my co-workers heard something outside and I started moving towards the window. I followed them towards the window and I saw a crowd of people moving away from the shopping centre, quickly running.
“Security were there and police were there quickly moving everybody away from the area.
“Then we started looking out and saw the fire trucks coming, the police cars coming, people driving out of the area quickly, honking and so on.”
He added that the surrounding shops were evacuated shortly afterwards and he was told to stay in the office.
One eyewitness, who works on the sixth floor of an office building 100 metres from Ahlens, filmed people running from the scene.
Mikael Anttila, a 49-year-old portfolio manager at bank SEB, told the Press Association he saw several hundred people gathered on the street close to the shop, before they all started running “suddenly … like ants”.
“Then a lot of police started coming. Heavy weapons, civilian police, etcetera,” he said.
Eyewitness Serwan Saleme told Sky News: “There was a lot of cars, people were very confused.
“People were everywhere and they (the police) were shouting at people to stay away from the roads.
“All the major stations are closed right now. There is a lot of chaos going on right now. Everyone is shocked.”
John Backvid was on the scene moments after the attack before emergency services arrived.
“Some people were on the ground doing CPR,” he told BBC News.
“The first thing I felt was a bit of smoke in the air.
“I saw a gathering of people and the car on fire – it was deep in the store and the store fire alarm was on. It was quite chaotic.”
Annevi Peterson described people lying dead and injured in the street with blood everywhere.
“I heard the noise, I heard the screams, I saw the people,” she told BBC News.
“There was, just outside the store, there was a dead dog, the owner screaming, there was a lady lying with a severed foot.
“There was blood everywhere, there were bodies on the ground everywhere.
“There was a sense of panic, people standing by their loved ones but also people running away.”
Vu Ly, a 24-year-old student living in Stockholm, witnessed the incident.
He said “it was very intense”, and “people were going crazy”.
The student, originally from Vietnam, compared the scene to last month’s attack in Westminster, adding: “I’ve never witnessed anything like that with my naked eyes, it was terrible.”