You do wonder why goggles are marketed as being anti-fog when they aren't. I don't doubt that goggle manufacturers have spent a lot of time and money trying to achieve this apparently impossible task. But I have to wonder where they are doing their testing. It's clearly not in a swimming squad at 5.30am where pretty much everybody will complain that their goggles fog up.
Luckily for me my coach gave me a simple piece of advice a few years ago - to put a drop of baby shampoo in each lens then smear it around and rinse before putting the goggles on. Unlike many of the other tips I've heard (such as spitting in or licking your goggle lens) this actually works. My goggles never fog up and for this I am eternally grateful! So for those other frustrated swimmers out there get yourself a bottle of baby shampoo (which will last about 3 years) and off you go. If you've got kids in swimming lessons do the same for them.