First, make sure there's no ongoing source of the odor. Check for mold on carpets, something spilled on the upholstery, or a water leak that might cause a mildew odor. Clean any smelly spills on the upholstery. If any item is wet, air it out to dry before trying to eliminate the odor itself.
If the carpet mats are moldy/mildewy, you're better off replacing them than trying to permanently remove the odor. If you help absorb any remaining interior moisture, leave some charcoal briquettes in the car for a few days
Tip 1: Buy a carton of baking soda & pour half of it into a small container - a travel mug works well. Anything that won't tip or spill will do the job. Leave it open in your car for a few weeks as you drive around, then throw it away.
Tip 2: Vinegar removes a wide variety of odors. Soak a rag or piece of bread in vinegar, or just put vinegar into a container that won't spill and leave it open in the car until the smell dissipates. You can accelerate the process:
1. Put vinegar into an open container and place on the front passenger side floor
2. Close the car windows and turn the car on with heat full blast, floor vents only
3. Leave the car/heat running for 30 minutes to 1 hour
If you leave an open container in your car with windows up on a hot summer's day, you may achieve the same effect.
Keeping your car smelling fresh:
- Put a handful of coffee beans into a cloth pouch under one of the seats
- Keep a fabric softener dryer sheet under each seat
- Put fresh citrus peels in a container in your car and leave them until they dry out
- Finally, if you really like the hanging air fresheners, be sure to stick with the same scent or you might create a scent mixture that isn't appealing.