Speaking with the voice of bitter experience, I would advise buying a coat in a colour the child likes.
My three (aged 17, 19 and 21) still moan about the coats I bought for them when they were 4, 6 and 8 - I found bright yellow waterproofs in Gap Kids, and they were buy one, get one half price, so I bought each of them a coat, and one for age 10, so they could grow into it, in turn.
I loved these coats - they were all sailor-windcheater-sou-wester-y, were totally and utterly waterproof, and they meant I could spot all three children from a great distance, in the school playground. The boys, on the other hand, hated them with a passion. No-one else wore coats that colour. I was the worst mother in the world for making them wear these coats.
Like I say, they still talk about these coats with great bitterness.