Blocked roads then bullets: Iran’s brutal crackdown in its City of Roses – The Guardian
What are you scared of? the woman in the black coat shouts. Help me to understand. She marches up to a man in uniform guarding the petrol station. Youre ruining us, she screams, as the man walks away.
The exchange comes from footage taken around 1am on Friday 15 November in the south-central Iranian city of Shiraz. Hours earlier, in a surprise announcement, Irans government had said it was raising the price of fuel by up to three times, adding to the strain on a population already struggling with an economy suffocated by US sanctions.
The petrol-price hike would trigger what may have been the largest-scale unrest in the 40-year history of the Islamic Republic. Iranian officials this week estimated 200,000 people were involved in the protests and riots which led to 7,000 arrests and, by some estimates, the regimes deadliest-ever response to demonstrations. Amnesty International have confirmed 15 deaths in Shiraz; those on the ground say the toll is much higher.
Like the rest of Iran, Shiraz was cut off from the world by an unprecedented five-day internet blackout. Precisely what transpired in the heartland of Persian culture known as the City of Roses is still unclear.
But interviews with activists inside and outside Shiraz, as well as analysis of social media posts, give a glimpse of what is thought to have been one of the largest protest outbreaks in the country, incurring one of the highest known death tolls.
Before the woman in the black coat leaves the petrol station, she turns to the other drivers in line, exhorting them to park their cars in the middle of the roads to protest the price increase. On Saturday, whoever is a real man will park their car in the middle of the street, she declares from the door.
By Saturday morning, people were heeding the woman and others calling for mass civil disobedience. At least one major road in Shiraz had become a parking lot. People are protesting and have blocked the streets completely, says a voice, surveying the sea of cars in both directions in an industrial area of the city. Drivers gather in groups outside their cars, chatting. The vehicles curve along the palm-lined road to the edge of the frame.
As the day went on, protesters were pouring into the streets of outer-lying areas across the city, according to activists. Social media footage shows significant unrest in at least six spots. The two most prominent incidents were in the suburb of Sadra and on Maliabad Boulevard, a long thoroughfare of banks and retailers that cuts across northern Shiraz.
The rallies were peaceful, and at first, so was the state response. Footage shows demonstrators applauding as police in riot gear are handed flowers. Protesters say they sat in groups on the road, chanting and playing cards.
Later, a protester would record a voice message to the US-based Iranian activist Masih Alinejad, reflecting on the morning. Everything was going well and people were all smiling and happy, he said. I saw people giving roses to the police, the first days was very peaceful and it was all good. Even the police were fine.
It did not last. Footage that activists believe was shot on Maliabad Boulevard the same day appears to show security personnel charging through crowds, sending people fleeing. Clouds of what appears to be tear gas can be seen forming.
There also appears to have been rioting: a video said to have been shot in the city shows fires burning in several spots, a handful of shops gutted, and the road scattered with paper and debris.
The youth has no future in this country with these thieves in power, a protester tells Alinejad in a voice recording heard by the Guardian. They couldnt take it anymore and they were full of rage. They took things to another level.
Things started to escalate when the police started to beat people up. We had to make our weapons to defend ourselves and that was it. It was all because we had to defend our lives.
The protesters, including many from working-class neighbourhoods, brawled with security personnel in some areas, using nails pushed through bottle caps as makeshift spikes to puncture the tyres of police motorcycles and cars.
At some point that afternoon, the police started shooting. Activists have posted footage from Saturday that shows gunshots going off near a Maliabad Boulevard police station.
This is Shiraz and the armed forces are firing at the people, says a man filming outside the police station in another clip. He pushes his way through a chanting crowd, who surround a bloodied man on the ground. It is Mehdi Nekouyee, 20, the first person confirmed to have been killed in Shirazs protests.
Because the internet was cut, Nekouyees family overseas first learned of his death when someone inside Iran wished them condolences on social media. [Mehdi] was quiet, very open minded, his uncle remembers. He wanted freedom, freedom of speech.
Nekouyees killing enraged the demonstrators. Activists say the protesters began to hurl rocks at the police station, tearing at its fence. By Saturday evening, the building was said to be alight.
They were firing live rounds and tear gas, but people were really courageous and did whatever it took, a mans voice said in another recorded message sent to Alinejad. We asked the people who were burning things [to stop], we dont know who they are, but people are full of rage and no one could stop them.
It is really bad and everyone is running for their lives, and the armed forces have no mercy and I couldnt believe they were people from the same homeland It was a violence that Ive never seen before.
Throughout Saturday and the next day, demonstrations were erupting in different parts of the city. Golshan, a suburb in Shirazs north-west that is home to many members of the Qashqai minority group, became a war zone, one activist with contacts in the city said. Security forces entered with heavy weapons and helicopters. All roads into the area were closed from Saturday until the following Tuesday, he said.
Protesters appear to have remained in control of Sadra for most of the weekend. On Sunday 17 November, demonstrators appear to have set fire to the office of the senior imam in the area, a direct attack on the countrys clerical establishment.
Activists say the response to the arson was swift and included helicopters swooping over the crowds, firing bullets and tear gas, a tactic reported in several areas and filmed in Sadra.
Ruhallah Gashgaei, an activist with links inside Shiraz, said an accurate death toll was still impossible to ascertain, but the average of several independent eyewitness accounts was that 60 were killed across Shiraz and an additional nine died in the suburb of Sadra. More information would emerge as different parts of the city were brought online, he said.
By Monday 18 November, the regime appeared to have retaken control of most of Shiraz. Images taken last Sunday and sent to the Guardian showed the city still scarred by the conflict, littered with debris and burned out cars.
An activist in Shiraz estimated 80 bank branches and seven petrol stations had been set alight across the city. Police and Revolutionary Guards are carrying out raids of homes and hospital wards, arresting suspected protesters. The countrys supreme leader, Ali Khamenei, has blamed the unrest on a deep, vast and very dangerous conspiracy concocted by Irans enemies overseas.
Last night Shiraz was under the control of Shirazs people, said a protester in a voice message to Alinejad. What [the authorities] say about controlling the situation is all nonsense. The weather changed and became very cold even God is with these people [the regime].
Yes, we survived, a woman says in one of the recorded messages. I saw two people getting shot next to me. Since Monday there has been a military curfew, there are [paramilitary] Basij officers all over the place. They were really scared and with every slight sound they were reacting strangely.
Activists estimate the death toll in Shiraz to number in the dozens, but have not yet been able to provide proof. An Amnesty International report this week increased its confirmed death count across the country to 143. The Iranian government rejects this figure but has not provided its own.
Everyone took to the streets, I was really hopeful that things would change, one of the recordings to Alinejad said. For two days Shiraz was under the control of the people, but nothing bad happened. There was complete peace. It was such a great thing that people had the control over the city. I could see how the country would look like if we take power.
Translations by Mohammed Rasool
More:
Blocked roads then bullets: Iran's brutal crackdown in its City of Roses - The Guardian
- Graham called yearslong push for war with Iran the best thing Ive ever done in new footage - CNN - July 26th, 2026 [July 26th, 2026]
- Unreleased Documentary Footage Captures Grahams Obsessive Push for Iran War - WSJ - July 26th, 2026 [July 26th, 2026]
- Netanyahu: Iran conflict ends when regime falls or gives up its nuclear program - The Times of Israel - July 26th, 2026 [July 26th, 2026]
- Netanyahu reined in Lindsey Grahams obsessive push to widen Iran war, footage shows - Ynetnews - July 26th, 2026 [July 26th, 2026]
- US strikes 'on a hold,' as talks, battle for Strait of Hormuz control loom with Iran - Fox News - July 26th, 2026 [July 26th, 2026]
- Live updates: Iran operations on a hold after almost two weeks of consecutive US strikes, source says - CNN - July 26th, 2026 [July 26th, 2026]
- Will America launch another massive attack on Iran? - The Economist - July 26th, 2026 [July 26th, 2026]
- US pauses attacks on Iran for a second day as peace talks continue - The Guardian - July 26th, 2026 [July 26th, 2026]
- Trump's Aides Reveal New Levels of Erratic Behavior Over Iran War - The Daily Beast - July 26th, 2026 [July 26th, 2026]
- US, Iran Extend Pause in Strikes as Oman Holds New Hormuz Talks - Bloomberg.com - July 26th, 2026 [July 26th, 2026]
- Iran war latest: 'They would use it if they had it' - Trump insists Iran cannot have a nuclear weapon - Sky News - July 26th, 2026 [July 26th, 2026]
- Iran threatens to expand war if US resumes strikes, which it says Israel is pushing for - The Times of Israel - July 26th, 2026 [July 26th, 2026]
- What to know about Iran's Pickaxe Mountain, home to an underground nuclear site threatened by Trump - AP News - July 26th, 2026 [July 26th, 2026]
- Vance, Caine raised concerns about escalating war in Iran, sources say as US pauses consecutive nights of strikes - CNN - July 26th, 2026 [July 26th, 2026]
- US pauses attacks on Iran for a second straight day and Tehran does too - Orange County Register - July 26th, 2026 [July 26th, 2026]
- Katy Perry deeply appalled over White House using her song in Iran war video - The Guardian - July 26th, 2026 [July 26th, 2026]
- It Isnt Just Pickaxe: Trumps Other Potential Nuclear Targets in Iran - WSJ - July 26th, 2026 [July 26th, 2026]
- Iran Journey Reveals Societys Wartime Defiance and Hope - The New York Times - July 26th, 2026 [July 26th, 2026]
- CBS News poll finds Iran conflict marked by feelings of uncertainty; most say it's more difficult than Trump had expected - CBS News - July 26th, 2026 [July 26th, 2026]
- Military Families Express Outrage After Pentagon Lowers Number of U.S. Troop Deaths in Iran War - The New York Times - July 26th, 2026 [July 26th, 2026]
- Ukraine war briefing: Iran accuses Kyiv of deadly attack on Iranian vessel in Caspian Sea - The Guardian - July 26th, 2026 [July 26th, 2026]
- Iran war spreads to Red Sea and Caspian, Gulf quiet as US forgoes strikes - Reuters - July 26th, 2026 [July 26th, 2026]
- Airstrikes have paused and talks are pressing forward. But can the US and Iran take the off-ramp? - AP News - July 26th, 2026 [July 26th, 2026]
- The U.S. and Iran pause attacks on each other for a 2nd day as Tehran talks with Oman over Hormuz - Fortune - July 26th, 2026 [July 26th, 2026]
- Iran reports first night without new US strikes as Houthis attack Saudi Arabian city - Fox News - July 26th, 2026 [July 26th, 2026]
- U.S. and Iran pause air strikes as talks show signs of progress - The Globe and Mail - July 26th, 2026 [July 26th, 2026]
- Opinion | I was a diplomat in Iran. Two rules explain its actions. - The Washington Post - July 26th, 2026 [July 26th, 2026]
- Trump is giving Iran talks 'a little bit of room,' US ambassador to UN says - Reuters - July 26th, 2026 [July 26th, 2026]
- How Russia helped build Iran into a strategic partner against the West - analysis - The Jerusalem Post - July 26th, 2026 [July 26th, 2026]
- U.S. forgoes strikes on Iran, but conflict escalates in the Red Sea - NBC News - July 26th, 2026 [July 26th, 2026]
- US has spent $37.5B on Iran war, Hegseth says at heated Senate hearing - USA Today - July 21st, 2026 [July 21st, 2026]
- Israel remains on sidelines of US-Iran fight, which for Jerusalem is just fine for now - The Times of Israel - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth grilled over growing cost of war with Iran - NBC News - July 21st, 2026 [July 21st, 2026]
- Trump Has Only Terrible Choices With Iran - The Atlantic - July 21st, 2026 [July 21st, 2026]
- Hegseth asks for billions for the Iran war, is there an end game? - NPR - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - KCRA - July 21st, 2026 [July 21st, 2026]
- Opinion | The U.S. military's escalating strikes in Iran may be legal. That doesnt make them justified. - MS NOW - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - WBAL-TV - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - WYFF - July 21st, 2026 [July 21st, 2026]
- Trump says will be hitting Iran's Pickaxe Mountain nuclear complex 'pretty soon' - France 24 - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - WESH - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - WDSU - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - KETV - July 21st, 2026 [July 21st, 2026]
- Pentagon Identifies Another Soldier Killed in Iran War - The New York Times - July 21st, 2026 [July 21st, 2026]
- Secretary Hegseth testifies on Capitol Hill as Iran conflict costs rise to $37.5 billion - KSBW - July 21st, 2026 [July 21st, 2026]
- The Iran wars big oil mystery: No one seems to want it - CNN - July 21st, 2026 [July 21st, 2026]
- Second critical waterway threatened by Iran war - CNN - July 21st, 2026 [July 21st, 2026]
- Iran is evading U.S. defenses to kill and wound American soldiers it's not just that "one leaked through" - CBS News - July 21st, 2026 [July 21st, 2026]
- July 20, 2026 US completes more strikes against Iran after Trump warning to Tehran - CNN - July 21st, 2026 [July 21st, 2026]
- Pentagon Withheld Dozens of U.S. Military Injuries in Iran War - The New York Times - July 21st, 2026 [July 21st, 2026]
- Hegseth is facing questions from senators over funding for the Iran war - Yahoo - July 21st, 2026 [July 21st, 2026]
- US launches fresh strikes on Iran, as Trump warns of retaliation for deaths of soldiers - BBC - July 21st, 2026 [July 21st, 2026]
- U.S. strikes unlikely to move Iran, intelligence reports say - The Washington Post - July 21st, 2026 [July 21st, 2026]
- US military slow to disclose Iran war injuries with officials citing security needs - CNN - July 21st, 2026 [July 21st, 2026]
- On sidelines of Iran war, Israel is readying plans in case of escalation - CNN - July 21st, 2026 [July 21st, 2026]
- Oil Buyers Battered by the Iran War Energy Crisis Race to Build Buffers - The New York Times - July 21st, 2026 [July 21st, 2026]
- Attacks between US and Iran across Mideast overshadow efforts to keep diplomacy alive - AP News - July 21st, 2026 [July 21st, 2026]
- The Pentagon, sinking billions into Iran war, is quickly running short on cash - Yahoo - July 21st, 2026 [July 21st, 2026]
- WATCH: Hegseth, Caine defend Trump's funding request to Congress as Iran war reignites - PBS - July 21st, 2026 [July 21st, 2026]
- To Base or Not to Base: The Iran War Exposes Flaws of U.S. Bases in the Middle East - Council on Foreign Relations - July 21st, 2026 [July 21st, 2026]
- Mission in Iran war has pivoted toward ensuring oil flow, Trump official says - The Guardian - July 20th, 2026 [July 20th, 2026]
- US bombing of Iran expands as American troops killed and Tehran retaliates against the Gulf states - AP News - July 20th, 2026 [July 20th, 2026]
- US strikes Iran for ninth day; Iran says two oil tankers in Strait of Hormuz exploded and immobilised - Reuters - July 20th, 2026 [July 20th, 2026]
- Iran Update Special Report, July 19, 2026 - Institute for the Study of War - July 20th, 2026 [July 20th, 2026]
- U.S. teeters on return to all-out war with Iran after more troops killed - The Washington Post - July 20th, 2026 [July 20th, 2026]
- Nigerian children pay the price for the Iran war as malnutrition and poverty surge - PBS - July 20th, 2026 [July 20th, 2026]
- US strikes Iran for 9th straight night; IRGC launches retaliatory attacks on several Arab countries - The Times of Israel - July 20th, 2026 [July 20th, 2026]
- CENTCOM Ends Weekend Wave of Strikes Against Iran - centcom.mil - July 20th, 2026 [July 20th, 2026]
- The U.S. strikes Iran after Trump announces a renewed blockade and tolls in Hormuz - NPR - July 20th, 2026 [July 20th, 2026]
- Trump asks Congress to add Iran to Russia sanctions bill - MS NOW - July 20th, 2026 [July 20th, 2026]
- What remains of the Iran deal as fighting rages - AP News - July 20th, 2026 [July 20th, 2026]
- US launches more airstrikes against Iran after announcing another death of a service member - AP News - July 20th, 2026 [July 20th, 2026]
- US releases footage of ninth consecutive night of strikes on Iran - Al Jazeera - July 20th, 2026 [July 20th, 2026]
- The renewed US-Iran conflict is escalating and threatening to spin out of control - CNN - July 20th, 2026 [July 20th, 2026]
- US bombing of Iran expands as American troops killed and Tehran retaliates against the Gulf states - The Boston Globe - July 20th, 2026 [July 20th, 2026]
- US bombing of Iran expands as American troops killed and Tehran retaliates against the Gulf states - ClickOnDetroit | WDIV Local 4 - July 20th, 2026 [July 20th, 2026]
- US bombing of Iran expands as American troops killed and Tehran retaliates against the Gulf states - Click2Houston - July 20th, 2026 [July 20th, 2026]
- US bombing of Iran expands as American troops killed and Tehran retaliates against the Gulf states - WAVY.com - July 20th, 2026 [July 20th, 2026]
- US bombing of Iran expands as American troops killed and Tehran retaliates against the Gulf states - KSAT - July 20th, 2026 [July 20th, 2026]
- U.S. death toll rises again as Iran war escalates over the weekend - CNBC - July 20th, 2026 [July 20th, 2026]