New regulations have eliminated some gift card fees, so you can't be charged if you don't use it within the first year. And cards can't expire for five years.
Bank-issued cards are convenient because you can use them almost anywhere, but they come with fees.
"The new rules apply to merchant and bank-issued cards, so if you have a reloadable card or one that's not marketed as a gift card, you're going to want to pay close attention to those terms," said Mary Walker of Consumer Reports.
For example, one Visa gift card from U.S. Bank costs $3.95 if you get it from a branch or $6.95 if you buy it online. But after 12 months, you're charged a $2.50 per month inactivity fee if you don't use it.
Even charity gift cards come with fees.
"We found one that charged a $4.95 transaction fee and it charged another 3 percent to transfer the funds," Walker said.
If a gift card is still the way you want to go, retail store cards usually have little or no fees. Just make sure the person it's being bought for likes to shop at that particular store.
"When you're giving a gift card, you want to include the terms and the policies, as well as the receipt, which might be needed if the card is lost or stolen," Walker said.
Consumer Reports recommends giving cash or a check. That way people can shop wherever they want, whenever they want, with no strings attached.
If you receive a gift card, check out the terms. See if you have to register it in case it's lost or stolen.
Consumer Reports also recommends storing it in your wallet instead of a desk drawer so it's handy, and spend gift cards as soon as possible, especially these days. You don't want to be holding a gift card for a company that goes out of business.