So the weather is starting to get cold and it’s time to bring out the hot packs in my house! I have several hot packs in various shapes and sizes for warming me up or soothing sore muscles over the winter. I also love to gift hot/cold packs. It is just something everyone can use!

A few years ago when I made my first hot pack, I filled it with lentils, which smelled terrible when heated. I then switched to barley, which was better but still a bit meh. The last few years I’ve been very enamored with cherry pits as a filling for my large hot packs, but I’ve always wondered about the differences between fillings. I thought it would be a fun experiment to try out all of the possible fillings I could find in my house and also make a dozen handwarmers.

Note of caution: when researching this post, I came across many people complaining their hot packs burned or started to smell really bad after heating. It is absolutely essential to put a mug with some water in it in the microwave at the same time as you heat your hot pack. Without it, your pack could possibly burn or catch fire, and you can damage your microwave. If you give hot packs as a gift, be sure to mention this to your giftee!

When heating a new hot pack, heat it up in 30-second intervals, testing after each interval, until you learn how long it takes to heat up your pack without scorching it. The fillings below all varied wildly with how long they took to heat up, so it’s not only the volume of filling that affects the heating time, but also the type of filling. And some fillings, like corn, get way too hot if you heat them too long.


So, I tested (sources at the end of this post):

  • cherry pits
  • wheat berries
  • whole dried corn (feed corn or bird seed, not popcorn!!)
  • pot barley (can substitute pearled barley)
  • dried whole peas (can substitute split peas)
  • buckwheat groats (can substitute buckwheat hulls)
  • whole flaxseed
  • jasmine rice (basmati is another very fragrant rice)
  • steel cut oats
  • clay gardening beads
  • coarse crushed walnut shells
  • dried pinto beans

For each of the handwarmers I sewed two 5″ squares of heavier-weight cotton/linen fabric right sides together with cotton thread, leaving a 2-inch opening along one side. Then I turned the fabric right side out, poked out the corners, and filled it with about 1 scant cup of filling. I whipstitched the opening shut.

It is important to use 100% cotton or linen for anything that will go in the microwave. If you’d like to use fleece or another synthetic fabric, sew an inner cotton bag for the filling, and sew an outer cover with the fleece to slip on after heating the cotton bag.

I found the bags had a little bit nicer weight by making them from a home dec-weight fabric, but you could also use flannel, or two layers of fabric. I’ve seen many hot packs that have a quilted cover and as long as you use 100% cotton batting that works too!


The results summary, for those who don’t want to read through the data:

  • Best overall options: Whole corn, walnut shells, jasmine rice. I still love cherry pits for larger packs, but their heat doesn’t last in a small pack. My daughter suggested adding some cherry pits to another filling; I tried 1/4 cup mixed in with corn and that made it smell lovely without the rapid heat loss. My choice would be either the corn/cherry pit mix or walnut shells.
  • Worst options: Buckwheat hulls (too expensive), clay beads or cherry pits (poor heat retention in a small pack), dried pinto beans or whole peas (beany smell), or flaxseed (even after a few heatings the oils were starting to smell a little rancid). However, flaxseed would probably make an amazing cold pack if you kept it in the freezer.
  • Best smelling: Cherry pits, jasmine rice, or walnut shells. If you choose a different filling, you can make it smell nicer by mixing in essential oils, dried flowers, dried herbs, or cherry pits.
  • Most pleasant feel: Flaxseed, whole corn, jasmine rice.
  • Best heat retention: Whole corn, rice, wheat, walnut shells.
  • Can be washed and dried and won’t mold or degrade: Cherry pits, clay beads, walnut shells. All other fillings will need a removable cover if you’d like to be able to wash your hot pack. All food-based fillings will degrade over time and need replacing. The sturdier ones like whole corn will last longer than things like rice or grains.


Table of results:

FillingWeight /
per cup
FeelSmell after heatingHeat retention
Cherry pits100g / $0.34-$1.32Large, chunky, awkward. Pleasant sound.Lovely cherry piePoor in such a small hot pack
Wheat182g / $0.33Small & grainyGrainy, neutralAverage
Feed corn181g / $0.03Large flat, slippery chunks. Pleasant sound.Faint cornGood, heats very quickly
Barley187g / $0.37Small & grainyGrainy, not as strong as wheatAverage
Whole dried peas173g / $0.44Little spheresBeany, not greatAverage
Buckwheat hulls/groats168g / $1.19-$0.59Pointy, not as slipperyEarthyAverage
Whole flaxseed150g / $0.44Slippery, smooth, luxuriousOily. Oils go rancid and over time the smell might get bad. Would probably be fabulous as a cold pack that is kept in the freezer.Good, heats very slowly
Jasmine rice188g / $0.33Rice-y, satisfying creaking sound when squeezing, stiffLovely and fragrantGood, heats quickly
Steel cut oats162g / $0.37Smaller & grainyGrainy. Not as strong as wheatAverage
Clay beads102g / $0.11Large, irregular, not slippery. Very awkward.NoneTerrible
Crushed walnut shells143g / $0.07Small and a little crunchy; use less filling if you want it to conformSweet & nutty, a little like marzipanGood, heats very slowly
Dried pinto beans182g / $0.33Large and somewhat slippery with a flat surface, similar to corn.Beany, not greatGood

If you’re looking for a unique hot/cold pack to gift (or keep!) this holiday season, check out my Comfort pack pattern, which is a hot/cold pack in the shape of a hot water bottle.

Notes on suppliers: Most items above are available at a grocery store, and the cheapest prices will be in the bulk section. I actually found 11 out of the 12 items above in my house already! I only had to purchase the white rice.

  • The cherry pits I purchased at The price difference in the table is the small bag vs. the large bag and includes shipping costs.
  • The whole peas I bought at an Indian grocery store, You can substitute split peas for the whole peas, they will just have a slightly different feel.
  • The corn I also bought at an Indian grocery store, but you can use feed corn from a farm supply or birdseed supplier. Feed corn is only about $7.50 for a 50 pound bag at places like Fleet Farm, so use what you need from the huge bag, and then put the rest outside to feed birds and animals.
  • Buckwheat hulls are sold on Amazon and in other online shops.
  • Clay beads are hydroponic gardening beads I had leftover from a lettuce growing experiment.
  • Crushed walnut shells are available at any pet store as lizard bedding. I used a very coarsely ground one, but I would think the finely ground stuff would also work just fine. Use a very small stitch length to avoid too much leaking!