First, from a social perspective, when you give someone a Gift Card to a specific retailer, you are essentially telling that person where to spend their money. You could give them cash, and trust them to spend it on something nice, but instead you just dictated where they should spend it. This problem often arises at baby/wedding showers, as well as weddings themselves. What do you buy for $50 at Pottery Barn? The answer is nothing.
The second reason to avoid the gift card is that they are expertly designed to make money. That's right, no matter what, they are making money from you. Gift cards generate money for the retailer in a few very simple ways. Breakage, Margin, and Float.
Breakage happens when you spend $50 on a Gift Card, and the recipient only manages to spend $49 (or less) of that $50. Worse yet, they lose or misplace the card and end up getting nothing. In Canada, the cards can't really expire, but if you don't spend it all, that's free money, pure profit, going into the retailers bottom line. (There are all kinds of tax and accounting rules that they have to follow to recognize revenue from Gift Cards, but the bottom line is-- they get the money.)
Margin is basically the profit that the retailer makes when you spend the card in their store. If you had cash, you could spend it here and there and all the change would be yours, but with a Gift Card, if a stores average margin is 10%, then they are going to make $5 from your $50 Gift Card No Matter What! You are guaranteeing that the money will go to them. (See my first point about cash.)
...and last but not least, Float. Float is what they call it in the loyalty industry when they get to have your money for a while before they give it back to you in some form or another. You pay $50 now and give a piece of plastic to your family member. The retailer gets to go use that money in the market to make more money before having to eventually give you the original $50 back, minus any breakage, and not including the margin they'll make off whatever you buy.
So, how bad is it? Well, without quoting any sources (because I'm lazy) you can bet that breakage on Gift Cards is somewhere between 5-15%. Depending on the retailer, margin could be anywhere from 1% to 50% (example: electronics suck, but accessories rock), and float is a nice few percentage points on the full amount for anywhere from 3 months to 18 months.
In conclusion, think about what you're doing this holiday season, and instead of buying a $50 Gift Card to Future Shop or Home Depot or IKEA, why not put a crisp, bacon-coloured, $50 Bill in that card. Nobody loses Cash. It's universally accepted, and it can always be put in the bank for later.
PS: Under no circumstances should you ever buy someone a Gift Card for loyalty currency like Air Miles, Aeroplan Miles, PC Points, HBC Rewards, etc. In doing so, you are essentially compounding all of the pitfalls of a Gift Card.