Moreover, the problem may depend on the basis set chosen, the geometry, and the molecule properties. Some basis sets may be inappropriate for some molecules (and switching to other basis set may fix the problem), some geometries may be more prone to problems (and changing bond lengths may solve the issue), if you do not consider the correct multiplicity or electron distribution it may also fail, and you should change those, allowing orbital mixing may also help in the same way. Sometimes, computing the structure of the same molecule with less electrons will facilitate convergence and then you may use the result for a final full-electron calculation. The same may happen if you include (or avoid) excited states. In some cases I've seen "naturally unsolvable" problems were the structure was oscillating between two states with very similar energy, maybe tautomers. And it may also happen that there is some chemistry going on with bonds breaking and forming (I saw this on some long-chain radicals which might break down into pieces)... A possible approach may be sometimes to build the molecule incrementally.
The point is that there are too many things that may be going on and that each case is special, so you'll have to look into your problem, see the evolution of energy and error, visualize the evolution of the geometry with energy, look at the values of the basis set for your atoms (some of them may lead to non-orthogonality if a coefficient for one of your atoms is too small) and decide on your specific problem.
Right now, there is no silver bullet that can solve all problems.