Both shampooing and steam cleaning is good for your carpet. Steam cleaning is a little bit better as it has less effects on the environment and is generally suitable for all kinds of carpets.