In general, in South Africa, do children under a certain age limit stay for free in accommodation? Specifically, would I have to pay for accommodation for a three year old if I bring a portable cot for my child?
It'll always come down to the individual hotel's (or their chain's) policy on children and fees.
Chain hotels are probably less flexible - they have global or national rules on discounts/fees. Similarly with motels around the country. Your best bet for the most flexible is probably guest houses or bed and breakfasts - and contact the owner beforehand to check.
I agree, it depends on the hotel. Most of the times from what I've seen online there is a discount offered when you have children, two groups: infants-up to 10-12 years old & then the second group is 12+.