If you want to take a proper care for your carpet you will have to do more than just regular cleaning with a vacuum cleaner.
Carpets absorb not only soil but oil and debris too. It is not necessary to spill something on your rug to have an oil spot on it. Such a stain can appear because of the cooking vapours or feet, pets and etc.