When I need to make a hot compress I put dried beans (preferably lentils) in a pillowcase and heat in the microwave for a minute or two. It’s cheap, easy, doesn’t smell horrible, and retains heat for quite some time. Reusable, too. If you want a pretty one, there are some nice ones available from etsy, including scented ones.
— Courtney Ostaff
I also make hot compresses at home, but with rice in a long sock. Same method: microwave for a minute or two to enjoy around 10 minutes of heat. After several uses, the rice will eventually start to breakdown and you’ll need to replace it. The heated rice does emit a very faint smell, but I actually find it to be comforting. This might be a problem, though, if you’re using the heat to treat migraine pain.
I tried using a rubber hot-water pouch recently, but I found that the thick rubber walls weren’t transmitting heat very well, so I went back to rice in a sock.
— Camille Cloutier