Ukraine International Airlines flight PS752 to Kyiv went down after taking off from Imam Khomeini airport in Tehran at 06:12 local time (02:42 GMT).
The majority of passengers were from Iran and Canada.
Ukraine’s Tehran embassy initially blamed engine failure but later removed the statement.
It said any comment regarding the cause of the accident prior to a commission’s inquiry was not official. Iranian media blamed technical problems and quoted an aviation official who said no emergency had been declared.
Debris and engine parts from the Boeing 737-800 NG plane were found some 10km (6 miles) from the airport and rescue workers with face masks searched the wreckage for victims.
Who was on board?
Among the victims were 82 Iranians, 63 Canadians, 11 Ukrainians including all nine crew, 10 Swedes, four Afghans, three Britons and three Germans, Ukrainian Foreign Minister Vadym Prystaiko said.
Ukrainian officials said that 169 people had bought tickets for the flight but two had not boarded the plane.
It was unclear why such a large number of Canadians were on board, however the airline provides relatively inexpensive flights via Kyiv to Toronto.
Sweden’s foreign ministry said its embassy in Tehran was seeking further information about the crash. Foreign Minister Ann Linde said she had spoken to Mr Prystaiko.
Iran’s head of emergency operations said 147 of the victims were Iranian. That would suggest that 65 of the foreign nationals had dual nationalities.
President Volodymyr Zelensky said he was cutting short a trip to Oman and flying back to Kyiv. He warned against “speculation or unchecked theories regarding the catastrophe” until official reports were ready.
“My sincere condolences to the relatives and friends of all passengers and crew,” he said in a statement.
Ukraine International Airlines has suspended flights to Tehran indefinitely. The airline said that the Boeing 737-800 was built in 2016 and had its last scheduled maintenance on Monday.
There was no sign of any problems with the plane before take-off and the airline’s president said it had an “excellent, reliable crew”. UIA has never had a fatal crash before.
Mr Zelensky said Ukraine’s entire civil aviation fleet would be checked for airworthiness and criminal proceedings would be opened into the disaster.
Rescue teams have been sent to the crash site but the head of Iran’s Red Crescent told state media that it was “impossible” for anyone to have survived the crash.
Rescue workers had found one of the airliner’s black boxes, Iranian media reported.
Ukraine has organised special planes to fly to Iran to take back the bodies of those killed, pending Iran’s agreement, Mr Zelensky said.
This type of Boeing is one of the most widely-used commercial airliners in the world. Aviation safety analyst Todd Curtis told the BBC: “The airplane was heavily fragmented which means either there was an intense impact on the ground or something happened in the sky,” he said.
After the crash, Ukraine International suspended its services to and from Tehran until further notice.
There are several thousand Boeing 737-800s in operation around the world which have completed tens of millions of flights. They have been involved in 10 incidents, including this crash, where at least one passenger was killed, Mr Curtis said.
Mr Curtis said Iranian, Ukrainian, US and French authorities would all be involved in the investigation, but it was unclear how they would work together. Iran is currently under US sanctions and there are severe tensions between the two countries.
Normally the US National Transportation Safety Board would have a role to play in the investigation.
“From all appearances this was an airplane that had been properly cared for and there were no outstanding issues with respect to European authorities or American authorities so at this point there is nothing that points to a particular cause,” Mr Curtis said.
“And also one cannot discount the possibility that something outside the aircraft, a mid-air collision or some other issue, may have been involved.”