I swear by Opti-Glass. Mostly because their polymer base seems to last for up to a year in my area. Finding it on sale is key because otherwise it's pretty pricey. The key to any glass coating is to super clean your exterior glass surfaces. Even using a claybar on your glass is recommended. Finally, wiping down all the glass with an IPA before applying the coating. I do two coats on the windshield, and one coat on the rest of the car. Waiting an hour or two between coats.