Safi climate
Safi (Morocco) has a hot semi-arid climate (Köppen BSh). The average temperature over the year is 19 °C66 °F, and about 347 mm14 in of precipitation falls in an average year.
Temperature by month
Precipitation by month
Safi climate table
| Month | High °C°F | Low °C°F | Mean °C°F | Precip. mmin |
|---|---|---|---|---|
| Jan | 1763 | 1355 | 1559 | 401.6 |
| Feb | 1763 | 1355 | 1559 | 401.6 |
| Mar | 1865 | 1456 | 1661 | 391.5 |
| Apr | 1967 | 1559 | 1763 | 251.0 |
| May | 2170 | 1662 | 1966 | 170.7 |
| Jun | 2373 | 1865 | 2169 | 30.1 |
| Jul | 2476 | 1967 | 2271 | 20.1 |
| Aug | 2577 | 2068 | 2373 | 20.1 |
| Sep | 2476 | 2068 | 2272 | 190.7 |
| Oct | 2374 | 1966 | 2170 | 341.3 |
| Nov | 2069 | 1661 | 1865 | 773.0 |
| Dec | 1865 | 1457 | 1661 | 501.9 |
| Year | 2577 | 1355 | 1966 | 34714 |
“Year” row: highest monthly high, lowest monthly low, annual mean and annual total.
| Month | Humid. | Cloud | Solar | Daylight |
|---|---|---|---|---|
| Jan | 78% | 47% | 3.3 | 10:15 |
| Feb | 77% | 46% | 4.2 | 10:00 |
| Mar | 78% | 48% | 5.4 | 11:54 |
| Apr | 78% | 47% | 6.5 | 12:56 |
| May | 78% | 46% | 7.1 | 13:48 |
| Jun | 79% | 45% | 7.3 | 14:15 |
| Jul | 80% | 53% | 7.2 | 14:04 |
| Aug | 81% | 50% | 6.6 | 13:20 |
| Sep | 80% | 43% | 5.8 | 12:19 |
| Oct | 79% | 50% | 4.4 | 11:19 |
| Nov | 76% | 49% | 3.4 | 10:27 |
| Dec | 78% | 47% | 2.9 | 10:02 |
Humid. = average relative humidity at 2 m; cloud = average cloud amount; solar = average daily solar energy reaching the ground in kWh/m² (all-sky); daylight in hours:minutes, calculated for the 15th of each month.
What the climate of Safi is like
The warmest month is August, with an average high of 25 °C77 °F and a low of 20 °C68 °F. The coldest is January, when highs average 17 °C63 °F and lows 13 °C55 °F. Seasonal differences are small — just 7.7 °C13.9 °F between the warmest and the coolest month.
It is dry, with about 347 mm14 in of precipitation per year. The wettest three-month stretch is November–January, which brings 48% of the annual total. Months with less than 20 mm0.8 in on average: May–September. The wettest month is November (77 mm3.0 in), the driest is August (2 mm0.1 in).
Relative humidity ranges from 76% in November to 81% in August. The clearest skies (lowest average cloud amount, 43%) are typical of September. Average wind speed near the ground ranges from 14 km/h (8 mph) in September to 18 km/h (11 mph) in July. Daylight lasts from about 10.0 hours in December to 14.3 hours in June.
Best time to visit Safi
Based on these averages, the most comfortable months for sightseeing and outdoor activities are March–December. Average highs then reach 18 °C65 °F to 25 °C77 °F. Precipitation is 2 mm0.1 in to 77 mm3.0 in per month.
Comfort score: months are ranked by how close they come to an ideal. That means an average high of 21–28 °C (70–82 °F), lows above 5 °C (41 °F), little precipitation and moderate humidity. The best-ranked months of each place are recommended, even where none meets all of these. These are general rules of thumb applied to long-term averages.
What to pack for Safi
- Winter (December–February) — highs 1763 to 18 °C65 °F, lows 1355 to 14 °C57 °F, about 43 mm1.7 in of precipitation a month. Pack long sleeves, a sweater and a medium jacket.
- Spring (March–May) — highs 1865 to 21 °C70 °F, lows 1456 to 16 °C62 °F, about 27 mm1.1 in of precipitation a month. Pack light layers — T-shirts plus a light sweater or jacket.
- Summer (June–August) — highs 2373 to 25 °C77 °F, lows 1865 to 20 °C68 °F, about 2 mm0.1 in of precipitation a month. Pack light summer clothes such as T-shirts, shorts or light dresses.
- Autumn (September–November) — highs 2069 to 24 °C76 °F, lows 1661 to 20 °C68 °F, about 43 mm1.7 in of precipitation a month. Pack light layers — T-shirts plus a light sweater or jacket.
How Safi compares
The nearest larger place is Marrakesh, about 138 km to the southeast. Compared with it, Safi is on average 2.6 °C4.6 °F cooler. It receives 19% more precipitation (347 mm14 in vs 291 mm11 in). The difference is largest in July (9.3 °C16.8 °F cooler).
World Climates covers 31 places in Morocco. By annual mean temperature, Safi is the 22nd warmest of them. By annual precipitation, it is the 26th wettest. See all of them on the Morocco climate page.
Some places in other countries have a very similar pattern of temperature and rainfall. The closest matches are Funchal (Portugal, Csb), Algeciras (Spain, Csa) and Málaga (Spain, Csa).
Nearby places
- Climate in El Jadida 126 km · 19 °C66 °F · 418 mm16 in
- Climate in Marrakesh 138 km · 21 °C70 °F · 291 mm11 in
- Climate in Settat 171 km · 19 °C66 °F · 440 mm17 in
- Climate in El Kelaa des Srarhna 174 km · 21 °C69 °F · 312 mm12 in
- Climate in Dar Bouazza 189 km · 19 °C66 °F · 450 mm18 in
- Climate in Casablanca 209 km · 19 °C67 °F · 473 mm19 in
- Climate in Agadir 212 km · 23 °C74 °F · 267 mm10 in
- Climate in Khouribga 228 km · 17 °C63 °F · 460 mm18 in
Frequently asked questions
What is the warmest month in Safi?
August is the warmest month in Safi. Its average high is 25 °C (77 °F) and its average low is 20 °C (68 °F).
What is the coldest month in Safi?
January is the coldest month. Its average high is 17 °C (63 °F) and its average low is 13 °C (55 °F).
When does it rain the most in Safi?
November is the wettest month with about 77 mm (3.0 in) of precipitation. August is the driest with about 2 mm (0.1 in).
What is the best time to visit Safi?
Judging by long-term averages, the most comfortable months are March–December.
About this data
All figures are 25-year averages (January 2001 – December 2025) from the NASA POWER project. Temperature, humidity, wind and precipitation come from the MERRA-2 reanalysis (precipitation is the bias-corrected MERRA-2 product), cloud and solar values from CERES satellite data. They describe a grid cell of roughly 50–70 km, not a single weather station. So they can differ from airport records. The gaps are largest on coasts, in mountains and for rainfall. Average highs and lows are the monthly mean temperature plus/minus half of the average daily temperature range. Counts of rainy days are not part of this dataset.