Fish eyes are almost universally caused by some kind of contamination, the trick though is figuring out what is the contaminate and where it came from.
Some sources of contamination are obvious, others not so much, there are also many practices that while well intentioned can lead to contamination issues. Years ago I was at a conference where the speaker shared a list that a major automobile manufacturer had compiled of over a hundred potential contamination sources that included things like hair spray, deodorant, fabric softener, cologne, lotions etc. But before you stop wearing deodorant there are a few more obvious things that you can do or check.
Where we have found that we consistently have issues is with projects we leave for extended periods of time between steps. If we apply subsequent coats of resin in a timely manner we find that we usually don't have problems and if we do they are usually pretty obvious why.
If using an epoxy system that blushes make sure that the blush is removed, leaving little shiny areas can become problem areas.
If you are already wet sanding the project the water should not bead up, but form a sheet or film over the part, beading water indicates a contaminated surface.
When we are preparing to coat after dry sanding we use Surgical Blue Tac rags to wipe down the dust. We have been using these for 20 years without issue. There are multiple reasons to choose to gently wipe with Surgical Blue tac rags instead blowing with compressed air or solvent wiping. Blowing off the part with an air hose puts dust particulate back up in the air for it to fall in your coating and cause issues and air hoses are often chock full of contaminates, rusty water, oils, etc especially if your compressed air system doesn’t have a good filter. We don’t like to solvent wipe because you can get contaminates from the rag (many fabric softeners contain silicone) smeared all over your part, so while you are happily wiping away thinking you are making your part better you are really just making your life worse. If solvent wiping is necessary cotton rags with no fabric softener in them are probably your best bet.
Here are some things to check:
-Air supply - is there a good filter on it
-Exhaust fumes - forklifts, cars, motorcycles, combustion heaters...
-Proper surface prep - best bet is to coat over a prepped surface within hours of preparing it, not days, or weeks, or…..
-Greasy fingers - using gloves or some sort of barrier to move or touch parts, we often will use scrap glass to move parts around that were going to get another coat of resin, in that case not so much for fish eye issues but to prevent dirty fingerprints from showing up in the part.
-Aerosols - making it a habit to not spray lubricants near or around the part
-Oil Rotary Vane Vacuum pumps - the haze that comes out the exhaust side is an oil mist, use an oil trap or vent out of the work area.
-Random people that like to touch what your working on. Yeah they are out there, like the guy that came through our shop and stuck his hand in the bottom of the bucket of epoxy that we had just got done using before we could say stop…. Not a fish eye issue but if they’ve been eating cheeseburgers….
-Processing controls - operating at the right temp/humidity, not letting parts sit around etc.
Sometimes despite your best efforts you still run into issues. First thing I’ll do if I am running an epoxy system, is keep working the coating. For example if I brush on a fill coat, it goes down beautiful, I come back 5 minutes later and BAM there are a bunch of fish eyes, instead of walking away complaining about how miserable my life is going to be I will work it over with a brush again. I’m not adding anything but just working it. I am shooting for one of 2 things to happen, I either get the contaminate diluted enough in the resin film that it stops fisheying, or I get it worked just at the right time in the curing process that the resin has become thick enough that it doesn’t fisheye again. Is this optimal ? NO but it is a lot less work than sanding down a bunch of fisheyes and fixing them. We had this happen on a surfboard that we had let lay around for a long time and had to brush it out a number of times and keep working it until right before it gelled. It didn’t come out as perfect we would normally like but acceptable enough. Of course afterwards we’ll try to figure out where the contamination came from.