Choose hair colour that compliments you

Here's an article I found at which addresses this isuue very well

First, and most important, st way to determine this is to stand by a window and hold your inner arm next to a sheet of white paper.
Is your skin primarily tan, peachy or gold? Or does your medium skin have a greenish undertone? If you are brown-skinned, is there a gold or cinnamon undertone? If so, then your skin tone is warm. Your eye color is probably green, hazel, golden brown, or red-brown. You might have gold or brown fleck in your eyes. Your natural hair color as a child could have ranged from a natural golden blonde, strawberry blonde to red, golden brown or a deep brown with gold or red highlights. As you gray, your hair probably has a yellow cast. These are attributes of warm skin people.
If your skin has a cool tone, your arm will appear bluish next to the white paper. Your skin will have a pink undertone. If your skin is brown it will be a deep brown or a black brown. Your eyes will be blue, gray, hazel with white or blue flecks, or very dark brown. As a child, your hair color could have been very pale blonde, or a darker blonde, or a medium to dark brown that did not look gold in the sun; or your hair would have been coffee-colored, or blue-black. Your hair, as it grays, turns white. These are all cool tones.
The trick to getting a hair color that looks good on you, is to stay with the skin tone God gave you. People with warm skin tones look best in warm colors. Cool skin tones look best with cool colors. Choosing a hair that does not complement your natural coloring will result in an unpleasant disharmony, no matter how pretty the color is on the box. If the natural undertone of your hair is warm, and you try putting a cool blue or violet-based hair color on it, it is somewhat like mixing yellow and blue. Your hair will probably have a greenish cast.

If you read the labels on the hair coloring boxes, most will give you a clue as to whether they are warm or cool colors. The word "ash" on a label means cool. As discussed in the previous paragraph, if your coloring is warm, don't use an "ash", or you may wind up getting green looking hair.
You can color your hair any color you would like. Blonde, red, brown, gray and black all come in warm or in cool tones. The safest way is to follow your skin tone and choose a color that goes with that tone. You can go lighter, darker, or intensify--just stay with the same tone.
The same goes for highlighting your hair. Warm-toned people lighten with pale gold, bright gold, russet, warm brown. Cool-toned people lighten with white, platinum, cocoa.
Even the exciting crayon-color accents that you see on young people can coordinate with skin tone. There are yellows, oranges, lime-greens, and rusts for the warm-toned, and fuchsia, electric blue, purple and black for the cool-toned.