I will preface this by saying ALWAYS test any cleaners on a descreet, no-visible place first to make sure it doesn’t discolor or harm the material.
With that disclamer out of the way here’s what I’ve used:
– White rub-rails, mild stains or discoloration – Softsoap with bleach and lemon. Put it on and scrub it with a sponge, then LET IT SIT for a while before rinsing. Works great and the bleach brings the white back to life.
BTW, Softsoap also works great for removing that scumline that forms on the boat and it won’t srip wax like other cleaners will. Very nice for mid-season touch ups.
– White rub rails, removing tar-like black stains – Whitewall tire cleaner from auto-parts store. Careful with this stuff because it’s abrasive and has a bleach chemical. I try hard NOT to get this stuff on the boat itself and certainly don’t let your scrubber or sponge rub the boat as you clean the rail.
As a last resort, I have actually taken a rub rail off and lightly sanded it with wet sandpaper to remove what looked like a paint streak that wouldn’t come off any other way. But only after testing first to make sure the rub rail’s color went all the way through the material. I ended up having to sand the whole length of rub rail to get rid of a 6 inch paint streak because the wet sanding took some of the sheen off the rail, so it looked odd after only doing part of the rail.