I used to work for a flooring company and we always recommended Chem-Dry.
If you can find a Chem-Dry or other dry cleaning carpet business in your area, they are the best. Their cleaning system does not leave residue on the carpet.
If you or another company use any kind of soap on the carpet, a residue will be left behind no matter how it is rinsed.
We would always have people calling saying, I had a stain, I used a spray cleaner or cleaned the carpets with a rented or my own cleaner and now the carpet looks worse and the stain has returned. Well the stain hasn't returned, the soap residue attracts dirt and makes it seam like the original stain returned.