I know you're not supposed to give bonuses at the holidays as then they become expected. That they should be tied to performance (of the individual and overall company performance in meeting revenue goals, keeping COGS in check).
BUT....there is that delicate balance of the human element. There is the business of business and the business of people. Your people need to feel valued, appreciated etc if you want them to help your business. To most of them, the Christmas/Holiday Bonus is extremely significant. That being said, there is VALUE for us in throwing the "business approach" of assigning bonuses based on merit (we do that at other times) and letting the "people" side come through at this time of year so you don't come off as a Grinch.
The past few years we have taken to giving the bonuses at this time of the year with a "Thankful" theme, rather than in December. Many folks like to take advantage of Black Friday deals and when we hand an envelop of cash (make it cash, not a check) on the Wednesday before Thanksgiving with a heartfelt we are "Thankful for YOU", it goes over very well.