Gifts are hard. I love shopping for gifts for MOST people. I have varying levels of success with gift buying.
The SO is easy-- I would buy him little things he needs or could use all the time if I could afford it. On the other hand, he makes a better income than me and buys what "toys" he wants really quickly and they are often pricey, so I don't really get to buy him super fun stuff. He does gift cards for his family for the most part. I also like to give experiences, but often find something that he would find "special" and not just do for himself cost prohibitive.
Friends I see constantly get fun quirky gifts (cat pajamas, desk toys, odd corkscrews). Friends further away get gift cards.
Family is really hit or miss on the success of gifts. CDs, new hats for the men, magazine subscriptions, organic goat's milk hand balms, calendars, boxes of notecards with my photographs on them, earrings, kitchen equipment, and tools have all been successful. I like to get wish lists from older family members who don't online shop, because I can usually find exactly what they want but can't get locally and don't mind suggestions from folks.
I usually only get gifts from my parents and my boss. My brother and my grandparents usually do cash. The SO struggles with gift giving so usually tries to show his generosity in other ways. This year my boss bought me a lovely (fairly pricey) travel mug. I love her. Another boss gave gift cards to a local bookstore and another gave USB flash drives.
I think you really have to tailor the gift to the user. I can't wear scented things to work, so the default "scented handcreme" gift is lost on me. I love food gifts, but would prefer to be able to pick something out myself unless someone really knows me (I like salts and oils but don't like bbq sauc or hot sauce, for example and can't eat some sauces because of sensitivities). I DO like to get coffee gift cards or coffee beans and mugs, notebooks and sketchpads, silver jewelry, scarves, and experiences. I don't mind gift cards, but I have $50 lying around for a store that I don't shop at (and isn't on a gift card exchange). The person has to know you--- for example, I don't drink starbucks because we only have 1 in my town there is no parking, so I have to drive 4 miles and then walk 8 blocks to get a coffee there (the two best shops in town are a 1 block walk from work and next to the grocery store). Honestly, I'd rather have a visa or amazon gift card or cash with suggestions for spending it. I realize that doesn't work for some people, though. I've tried to do lists and have had hits and misses with this---- I've gotten perfect items and other times someone has STILL had to return something because it wasn't right or didn't work correctly.