It could be the kind of dye your using and or your hair type. Like manic panic sucks ass for me but special effects and splat last a good while. Theres also a kind of shampoo thats really really gentle and it makes the dye last longer. Washing your hair with cold water is supposed to help but im not sure. Washing less often really helps. Hope this helps! Oh yea, thanks for the request.
Really. And do you process your hair with heat when you're coloring it? That usually helps a bit too. And rinsing your hair in cold water.
Sometimes your hair just can't hold certain colors or dye combinations - it isn't uncommon.