I think your problem lies in the previous step (eg. Filtering precipitate. It may be white, but off-white often also appears white).
For crystallization you could use 2 beakers. In 1 you add water and boil it. In 2 you add dry powder (and/or) a stirbar. Then you slowly pour the some water from 1 to into 2, and place 2 on the heater as well. You keep pouring tiny bits of 1 into 2, until 2 is fully dissolved. You end up having a saturated solution, with minimal of water (1g on 1ml avg). This way, impurities are spotted more easily.
Pour into container and leave for couple hours.