You should go for Static class if you want to have some utilty class whereas Singelton comes when a class can have state and the states can changes (but still object is one ).
The singleton class would be useful if it contained a set of variables that we wanted only one set of and the methods used those variables but in our helper class we don't use any variables apart from the ones passed in (which we make final).
static classes implementation cannot be mocked but you can mock the implementation of singelton using Factory class.
A static class is one that has only static methods, for which a better word would be "functions". The design style embodied in a static class is purely procedural.