In the case of the Home Owner I talked to, they didn't realize that the home had a "pet" odor. When you put your home up for sale, even if you don't have pets, make sure to ask a friend or neighbor to enter your home and be honest about any smell. You will not sell a home with an odor.
For my Clients that have a pet odor problem, I recommend having their carpet, upholstery, tile floors, professionally cleaned by a quality Company that can specialize in pet stains. I know that Chem Dry has this service and people I know have used them successfully. I also give Clients a copy of an article I read last year on the Home Staging Channel website, in case they want to try and remove stains/odors by themselves:
For carpeting -
First you need to locate the specific problem areas. Sometimes this is easier said than done. If so, a good way to find them is to turn off the lights and use a black-light to illuminate them.
After you've found the spots, clean your carpet. There are a few methods here. You can rent or buy a water-extraction machine or a carpet-shampoo machine and use this with cool water (don't use chemicals or cleaners). Then there's also the usual steam cleaning for non-urine pet odors.
Now that your carpet is clean, put a light coating of an enzyme-based odor neutralizer on it. These are available at pet stores and vets' offices. This is the key step to rid your carpet of smells as these neutralizers contain bacteria that break down the proteins that cause the odors, thus, eliminating them permanently. Neutralizers also help with stains. Baking soda can do the trick, if less effectively.
At this point you can sit back and relax for the next 8 hours while you let it sit. When you wake up from your nap it's time to vacuum! Then wait another 24 hours and see how it is. If there is any remaining odor, simply repeat this treatment. In severe cases you may need to replace your carpeting.
On a regular upkeep basis, sprinkling baking soda on your carpet and letting it sit for a while before you vacuum can really help freshen up a room. If you want a deep clean, however, use a steam cleaning company. It's worth it!
For wood floors -
Clean the area with paper towels and scrub it down with white vinegar to remove the stain and smell. Rinse the area with warm water and blot it dry. Dry it completely to avoid water damage; leaving liquid on the floor can warp the wood. Finally, dust the area with a specialized odor remover that contains enzymes to help offset future occurrences.
For older pet stains on wooden floors you'll probably need to sand down the wood to find out how deep they go. If the damage is severe you may need to replace part or all of the flooring. Commercial bleach will sometimes do the trick, but for this we recommend using a professional as it can be dangerous. If you've sanded your floor, reseal it with a shellac based primer.
For furniture -
Clean up the mess with a white rag or paper towels. Then dab on a solution of a ¼ tsp mild laundry detergent to 1 cup warm water. Repeat this step until there is no coloration coming off onto the rag or paper towel. Next, coat the area with a solution of 2 tbsp ammonia to 1 cup of water. Rinse this away with warm water. Repeat this step and blot dry. Blot the area with a solution of 1 cup white vinegar to 2 cups of water and rinse. Cover the area with a few layers of paper towels and place a weight on top. Change the towels out regularly until your carpet is dry.
This method may also be used on carpeting but remember to scrub lightly! Hard scrubbing forces the odors further into the carpet fibers which is exactly what you don't want. Saturation, soaking, and LIGHT scrubbing, is the most effective way to get rid of pet stains in your carpet.
Most of what we've talked about here has been for minor pet smells or urine based odors.
For feces on carpeting or furniture -
Pick up feces and discard. Blot the affected area with an ammonia solution (see above) and let it sit for a few minutes. Blot out excess solution and repeat this until the stain is gone. Rinse the area with cold water and blot until dry. And don't forget to train your pet for the future!