There are several answers as well as considerations you need to consider regarding how often you should clean your carpets. They are what I call blanket answers. Answers that are designed to cover everyone. The problem being no one answer is realistic for everyone.
All the major carpet manufacturers recommend every carpet should be cleaned on an annual basis but require that all carpets are professionally cleaned at least once every two years to keep the warranty in force for the carpets....