Throughout South Africa, you can find excellent hotels in all of the main tourist areas - such as the national parks, major cities and areas such as the Winelands and the Garden Route.
On the whole, hotels are very good value for money, although you will find that over peak seasons such as Christmas and New Year, prices rise.
If you're planning a lengthy holiday in South Africa, staying in several cities and seeing a variety of different things, or travelling at a busy time, it is vital to book accommodation in advance in order to avoid disappointment on arrival. Typically booking a hotel in the UK prior to travel will save you around 10-20% on the price that you will pay locally, so it makes sense to plan your trip before you go.