A shroud of toxic smog that has hung over Iran for days has forced authorities to shut schools and universities and order people to stay inside their homes, state media reported.

The young, elderly and people with respiratory illnesses were warned to stay indoors and sporting activities were suspended for the start of the working week.

The decision to shut schools and universities in the capital was announced late Friday by deputy governor Mohammad Taghizadeh, after a meeting of an emergency committee for air pollution.

"Due to increased air pollution, kindergartens, preschools and schools, universities and higher education institutes of Tehran province will be closed," he said, quoted by state news agency IRNA.

In the past, similar seasonal spikes in the levels of pollution have had deadly effects - in 2016 more than 400 people were estimated to have died in less than a month during a period of heavy pollution.

"Having examined the index of pollutants in Tehran... it was decided for all schools to be closed tomorrow in Tehran province, except for the counties of Firuzkuh, Damavand and Pardis," Taghizadeh was quoted as saying.

Trucks have been banned from the Tehran province and private cars will only be allowed onto the streets on alternate days, depending on whether the registration plates are odd or even numbers.

Activities will also be halted on Sunday for all sand mines and industries in Tehran that contribute to air pollution, Taghizadeh added, without specifying which ones.

Schools were also closed on Saturday in the northern province of Alborz and in the central province of Esfahan, IRNA reported, citing officials.

Other areas where schools were shut included the northeastern city of Mashhad, Orumiyeh city in northwestern Iran and Qom city, south of Tehran.

In Tehran, average concentrations of hazardous airborne particles reached 146 micrograms per cubic metre on Saturday morning, according to air.tehran.ir, a government-linked website.

By mid-afternoon, the index had dropped to 107 after winds blew away some of the pollution hanging over the capital.

The World Health Organisation's advised maximum level is 50.

The pall of pollution has shrouded the sprawling city of eight million people for days and is only expected to clear on Monday when rain is forecast.

Air pollution was the cause of nearly 30,000 deaths per year in Iranian cities, state media reported earlier this year, citing a health ministry official.

The problem worsens in Tehran during winter, when a lack of wind and the cold air traps hazardous smog over the city for days on end- a phenomenon known as thermal inversion.

Most of the city's pollution is caused by heavy vehicles, motorbikes, refineries and power plants, according to a World Bank report released last year.