Originally Posted by abntrptr
I have checked the gas cap and it is on properly
The OEM gas cap has the little plastic keeper attached to the middle of it. Inside the cap there is a pressure relief valve mechanism. Some of the bits are metal and they corrode. If you have some silicone spray, shoot a bunch of silicone into the cap. If that makes the CEL say off for a while after you clear the code and shut the CEL off then you know that the gas cap is the problem.
Get a new generic cap for $8.00 or so at your local parts store. NOT another OEM unit that has that keeper.