Cheapest month to stay with an average 19% drop in price.
Most expensive month to stay with an average 110% rise in price.
Average Sun - Thu price over the last 2 weeks.
Average Fri & Sat price over the last 2 weeks.
When to book a hotel in South Africa
Price per night / 3-star hotel. Prices are not fixed and may vary with time.
Average nightly price per month
Average nightly price
Top tips for finding the perfect South Africa hotel
The cheapest 3-star hotel room in South Africa found on KAYAK in the last 2 weeks was ₪372, while the most expensive was ₪402.
Hotel room prices vary depending on many factors but you’ll most likely find the best hotel deals in South Africa if you stay on a Wednesday. The opposite is true for, Tuesday, which is usually the most expensive day.
If you’re looking for a cheap hotel in South Africa, you should consider visiting during the low season. You'll find cheaper accommodations in South Africa in February and July.
Book at least 77 days before your stay begins to get the best price for your South Africa accommodation.
FAQs when booking a hotel in South Africa
Hotels are safe environments for travelers as long as they properly implement sanitary measures in response to coronavirus (COVID-19). However, we recommend getting in touch with the local authorities regarding safety procedures for hotels in South Africa. For more advice, please view our information page on what to know about coronavirus (COVID-19) and travel.
Based on KAYAK hotel searches, the most popular destination is Cape Town (59% of total searches to South Africa). The next most popular destinations are Sun City (18%) and Durban (12%). Searches for hotels in Knysna (12%) are also popular.
Based on KAYAK hotel searches, the most popular region to stay in South Africa is Western Cape. North-West and KwaZulu-Natal are also very popular.
KAYAK users have found double rooms in South Africa for as cheap as ₪20 (Johannesburg) in the last 3 days. The average price is ₪315.
In the last 72 hours, users have found South Africa hotels for tonight for as low as ₪81 (Port Alfred). Users have also found 3-star hotels from ₪86 (Midrand) and 4-star+ hotels from ₪93 (Port Alfred).
In the last 72 hours, users have found South Africa hotels for this weekend for as low as ₪32 (Port Elizabeth) per night. Users have also found 3-star hotels from ₪63 (Johannesburg) and 4-star+ hotels from ₪82 (Pretoria).
Where to stay in South Africa?
Our map will help you find the perfect place to stay in South Africa by showing you the exact location of each hotel.