The man, who was arrested in the north of the city, has not been named, but Swedish media say he is from Uzbekistan, according to the BBC.
Four people were killed and 15 were injured when the lorry crashed into the front of a department store.
Police said they were unable to confirm local television reports of explosives being found inside the truck.
The lorry – hijacked from outside a nearby restaurant – crashed into the front of Ahlens department store in the middle of the afternoon on Drottninggatan (Queen Street), one of the city’s main pedestrian thoroughfares.
Eyewitnesses described horrifying scenes outside the store, as bodies and injured people lay on the ground. On Saturday, authorities confirmed 10 people remained in hospital, including child. Two are in intensive care.
Swedish Prime Minister Stefan Lofven has called it a terrorist attack, with borders tightened at his request.
The suspect was detained on Friday evening after police released a grainy security camera image of a person of interest dressed in a hooded jacket. A second arrest was reportedly made later.
Police confirmed a man resembling him was arrested in Marsta, 40km (25 miles) north of Stockholm.
“We have investigated several people this evening, who we found interesting in one way or another, and recently we arrested someone we are very interested in,” said police investigator Jan Evensson, referring to the Marsta arrest.
Police spokesman Lars Bystrom has since told news agency AFP: “We suspect that the man who was arrested is the perpetrator.”
He is being held on suspicion of committing a terrorist crime, the state prosecutor’s office said, and is in prolonged detention, according to a police website.
The second man, detained in the Hjulsta in the north-west of Stockholm, had links to the man arrested in Marsta, local media reported citing police sources.
Central Stockholm was in lockdown after the incident, with the main station evacuated and metro, central roads and various bus lines shut as well.
City authorities made several spaces, including a number of schools, available as temporary accommodation for those who could not get home because of transport disruptions.
In a speech on Friday night, Prime Minister Lofven said Swedish values of democracy and freedom would not be “undermined by hatred”.