Its taken me a while to pluck up courage to respond to this, after reading all the comments about the name being pretentious. My son is called Cosmo and we think its a cool and groovy name.
We live in quite a rough area but he has never had the slightest hassle from kids about it - you just have to see the sort of names in primary school these days to see that its not that wacky. Most people see it as groovy and hippyish rather than posh, but perhaps thats because we clearly don't live in a posh area. I agree with previous posters that its not kids who react to names, its adults.
Cosmo is a very old name, just one that's gone out of fashion and I can't see why people equate it with being posh.
The archbishop of canterbury who spoke out against the WW1 was called Cosmo. The guy who first mapped Ethiopia was called Cosmo. One of the funders of Guys Hospital in the Victorian era was called Cosmo. An environmental campaigner in Canada is called Cosmo.
And spookily our son was born on St Cosmo's day although we didn't know that until MiL's big catholic buddy assumed that was why we had named him such. He's patron saint of medics, one of the earliest doctors (and our son is so sqeamish being a doctor would be the last thing he would want to do).
Asked my son for his comments. He says being called Cosmo is great, he's the only one in school, and signs his name The Cosmo, his mates think its cool, our Greek dentist greets him like an old mate because he says its a Greek name meaning "the world" and he likes that. Apparently the only bad thing about it is that you can't buy a mug or a pencil with his name on it anywhere. But maybe that will change?