I know it takes all the mystery out of it, but I always ask what gifts people would like.
So I say something like, what top 3 gifts would you like this Christmas that fit into X budget? Then I go out and get them. I'd rather my family got the gifts they really wanted rather than random stuff which will never be used.
The other alternative is to give money. Always appreciated.