We buy them when we find something we like. We buy them at thrift stores, so I peruse the racks and pull out options for my boys (weeding out the ugly, ripped, incomplete, or worn ones). There are usually a few they can choose from.
I had one son just fall in love with a cute dragon costume. He ran around the store in it, getting tons of attention. I warned him that he could not change his mind, and was he sure he wanted to be a dragon? He assured me YES!!! He wouldn't take it off to buy it, or to go home. I was so happy, because it was like $4, and was awesome. I figured his big brother could be a knight.
But when we went to get big brother a knight costume, suddenly, the dragon wanted to be a knight, too. It was a battle, but he wore that dang dragon costume! We did buy him a set of knight stuff, too, because it was cheap and he could play in it. So we compromised. He was a knight at a party, but trick-or-treating and for pictures, he was a dragon.
BTW, my kids were only 5 and 3 when that happened, so maybe it's not even applicable!