It is all dependent on how you can for your hair after coloring it. I would recommend getting a color protective shampoo and conditioner (if you do red, buy one specifically for red hair), and use less shampoo than you use conditioner. I would also recommend, if you don't do so already, not washing your hair every day, but every other day or less frequently. Dry hair thoroughly so that it doesn't bleed, and wash in cool to lukewarm water. I do red and wash my hair every other day, and my hair typically stays vibrant for at least a month and a half to two months (I am usually redying because my roots have grown out as opposed to the color fading). My friend dyes her hair purple and washes less frequently (about twice a week), and can get her hair color to stay vibrant for three months or more.