yeah I had a toyota cap, seal was sealing, or looked like it was. CEL kept going off. UGH! I finally had enough and bought a Stant brand cap, that's what Aervin is talking about. NAPA sells their brand, but it's a Stant, they made it for Napa.
Now there's another thing to look at is the mouth/lip of the fuel filler neck, where the cap screws into. Any corrosion there? That can stop a good seal as well.
if that's clean, a new cap will fix the problem. Sure it could be other things in the evap (evaporative emissions system). But I bet it's a bad cap, quite common on the tC. The key is, get the Stant made cap, had it for a couple years, finally no more CEL (check engine light)!