Always start with the most gentle solutions first. Do a test area in a not so obvious place first.
Start with a cleaner wax compound. If this is not adequate then use a pure polishing compound. If thisis not adequate then use a fine rubbing compound. If this is not adequate then use a coarse rubbing compound. If this is not adequate then try 2500 grit wet or dry and wet sand the area. The wet sanding
works especially well for stains and very shallow scratches. It also levels out coarse areas. Be very careful not to sand or rub off too much, especially on edges.
Then work your way backwards through the scale of coarse to fine to bring the gelcoat back to a really good looking shine.
If you have a large area to cover, you may want to invest in a professional grade polisher like this Makita polisher and some wool pads. The white wool pads are meant for the rubbing compound and the yellow wool pads are meant for the final polishing. There are also sponge pads for polishing. The pads that are held on with Velcro work best.
The cheapo electric
polishers you find at West Marine et al, are in my opinion garbage and not worth wasting your money
There are videos on Youtube on how to restore your boats gelcoat with a polisher. Some are good, some not so good.
3M has a whole line of waxes, polishing compounds and rubbing compounds for gel coat. These products are what I see the professionals in the boatyards
using most often.
Also, when cleaning
gel coat, use an ultra fine bristle brush or a micro fiber cloth mop (Kragen). Coarser brushes
leave micro scratches which you can see in the sunlight and also provide a place for dirt to stick.