I'm probably rude, but I'm not going to do bonfavs at our wedding. Of the weddings I've been to, regardless of what the bonfav was, half of them ended up left on the table at the end of the night, and for the life of me I can't even remember what they were. So based on those observations, plus the fact that I wouldn't care if I didn't get one at someone else's wedding, I kind of figure it's something I don't want to waste my money on. They seem to function as a thankyou to guests for coming which I think you can just as easily say to them verbally and with the thankyou card you send out afterwards.
However, if you are committed to bonfavs then I agree with above posters, a little chocolate (or package of chocolates) is definitely the safe bet. Even if you have some guests who can't eat chocs, they will be able to give it to their partner/kid whatever. You can get chocolate bars with personalised labels made up
Cupcakes are really good as well, but I think quite pricey once you factor in the cupcake itself plus a little box for it to go in. Lolly bars are also fashionable, with little paper bags for guests to essentially pack their own bonfav. We're having a truffle bar on our cake table, so I may consider getting little bags/boxes for people to take one or two home.
Things I don't like are candles, photo frames, CDs of the couples music or pretty much anything non-consumable that is branded with wedding stuff.