If your tank is brand new (like 2 months or less old) you just have your diatom bloom and a CUC will help it go away. If you already had your diatom bloom and are seeing them again, the #1 culprit is usually tap water.
Diatoms can't live without Silicates. If you are using tap water, you should really start getting RODI or at a minimum filtering the tap water. You can buy silicate test kits pretty cheaply, but if you have diatoms, you HAVE silicates in your tank. If your tap water has silicates in it, you have to stop using it if you want the diatoms to stop.
Everyone gets a diatom bloom when setting up a new tank, because bagged sand had some silicates in it, and they basically burn off what silicates were in the sand. But, if you get diatoms after that, it has to be entering through your water. Even if your phosphates and nitrates are under control, any silicates in your tank will trigger diatoms.