If you're craving mashed potatoes that are creamy, dairy-free, and gluten-free, this recipe is exactly what you need.

Recipe at a glance
- 📋 Recipe name: Creamy Dairy-Free Mashed Potatoes (Gluten-Free)
- 👥 Servings: 6
- ⏲️ Total time: 45 minutes
- 🍴 Best for: Weeknight side dish, holiday side dish
- 🥘 Main ingredients: Potatoes, dairy free milk
- 🔥 Cooking method: Stove
- 👩🏼🍳 Flavor profile: Creamy, buttery
- ⭐️ Difficulty: Easy
Jump to:
These creamy mashed potatoes are rich and fluffy, made with simple ingredients, and unlike a lot of "healthy swap" mashed potatoes, it doesn't turn gummy or glue-like, because it skips the one tool that causes that problem (more on that in a second).
Back when I did my first Whole30 in 2017, mashed potatoes were one of the first things I figured out how to make gluten-free and dairy-free, and I've been making this version on repeat ever since. No weird thickeners, no heavy cream, no "tastes like a substitute" aftertaste. Just real food that happens to work for a lot of different plates at the table.
It's become one of those dishes I lean on year-round, not just for holidays. On a busy weeknight, it's the easy side I scoop up next to Easy Whole30 Bison Meatloaf or Dairy Free Bison Swedish Meatballs, actually, that meatball recipe was built around this exact mashed potato method, so the two go hand in hand. And when it's time for a bigger spread, it slides right in next to Easy Gluten Free Cornbread Dressing and Easy Whole Berry Cranberry Sauce with Orange and Honey without anyone at the table needing a separate plate.
What makes this recipe unique
Most "dairy-free mashed potatoes" recipes lean on a pile of substitutes, vegan butter, cashew cream, nutritional yeast, to fake the flavor of the real thing. This one doesn't. It uses ghee for warm, buttery richness (with a straightforward olive oil or vegan butter swap if you need it dairy-free and vegan), unsweetened almond milk for creaminess, and a ricer or hand masher instead of a food processor so the texture stays fluffy instead of turning gummy, which is where most "healthy" mashed potato recipes go wrong.
It's also doing double duty: this recipe is Whole30-compliant and paleo-friendly, not just dairy-free, so it works as the one mashed potato recipe you make for a table with mixed dietary needs, gluten-free guests, dairy-free guests, Whole30 guests, without making a separate batch for anyone.
Ingredients

Ingredient notes
Potatoes: Russet and Yukon Gold both work well; russets give you the fluffiest texture, Yukon Golds give you a naturally creamier, slightly buttery result with less added fat needed. Either way, look for starchy potatoes, not waxy ones (skip red or new potatoes here).
Dairy-free milk: Unsweetened almond milk has a neutral flavor and is what I use most often. For a richer result, swap in canned coconut milk. Oat milk (Oatly) or Califia Farms almond milk both work too. Just make sure it's unsweetened and unflavored, you're not making a latte.
Ghee: Adds warm, buttery flavor and is Whole30-compliant. If you have a dairy allergy (ghee still contains trace milk proteins for some people) or want it fully vegan, swap in olive oil or a vegan butter.
Garlic powder, salt, pepper: To taste. Salt goes in the boiling water and the finished potatoes, this matters more than people think.
Recipe FAQs
Unsweetened almond milk is the most neutral-tasting option and my everyday pick. Canned coconut milk makes them richer (with a very faint coconut note); oat milk is a good middle ground if you want richness without any coconut flavor at all.
Unfortunately, once the starch is overworked, you can't fully undo it, but you can dilute it. Stir in a little extra warm milk and fat, and switch to folding gently by hand instead of continuing to beat or process them. Prevention is easier than the fix: use a ricer or hand masher instead of a food processor or electric mixer.
Russets are starchier and give you the lightest, fluffiest texture. Yukon Golds are naturally creamier and buttery-tasting, so they need a little less added fat. Both work in this recipe, pick based on the texture you prefer.
Yes, potatoes themselves are naturally gluten-free. The risk comes from what gets added to them: gravy made with a wheat-based roux, bouillon or seasoning packets with hidden gluten, or being made in a shared fryer/kitchen with cross-contact. If you're making everything from scratch with ingredients you've checked, this recipe is gluten-free.
How to make
- Cut and boil. Peel (or leave the skins on for a rustic texture) and chop the potatoes into 1-inch cubes. Add them to a large pot of well-salted cold water, bring to a boil, and cook 15-20 minutes, until fork-tender.
- Drain and dry. Drain thoroughly, then return the potatoes to the warm, empty pot for 1-2 minutes off the heat. This lets excess moisture steam off, which helps the potatoes stay fluffy instead of watery once you add the milk.
- Rice or mash. Pass the potatoes through a potato ricer back into the pot, or mash with a hand masher directly in the pot. Skip the food processor, blender, or electric mixer.
- Add the warm milk and fat. Gently warm the almond milk and ghee together (microwave 30-45 seconds or warm in a small saucepan) before adding, cold liquid tightens the starch and makes potatoes gluey, warm liquid keeps them loose and creamy.
- Fold, don't beat. Add the warm milk mixture, garlic powder, salt, and pepper. Fold gently with a spatula or wooden spoon just until combined and creamy. Stop as soon as there are no dry patches, a few seconds of overmixing is the difference between creamy and gluey.
Kaleena's Tips
- Don't use a food processor, blender, or electric mixer. They rupture the potato's starch cells and release too much starch, which is what makes mashed potatoes turn gummy. Use a ricer or hand masher instead.
- Don't add cold milk or cold fat. Warm both first, cold liquid seizes the starch and makes potatoes gluey.
- Don't skip salting the boiling water. Potatoes absorb very little seasoning after they're cooked, so under-salted water means bland potatoes no matter what you do afterward.
- Don't overmix, period. Even by hand. Fold just until the streaks of milk disappear, then stop.
Substitutions and Variations
- Bonus Flavor Boost: Stir in ¼ cup Kite Hill dairy-free sour cream and ¼ cup Kite Hill dairy-free cream cheese for extra silky, tangy richness. Still Whole30-friendly with the Kite Hill brand specifically.
- Roasted garlic: Swap the garlic powder for 4-5 cloves of roasted garlic, mashed in with the potatoes, for a deeper, sweeter garlic flavor.
- Herby: Fold in 2 tablespoons chopped fresh chives or rosemary at the end.
- Fully vegan: Use olive oil or a vegan butter instead of ghee, every other ingredient is already vegan.
- Sweet potato swap: Swap in sweet potatoes for all or half the russets for a naturally sweeter, orange-hued version (adjust cook time down slightly, since sweet potatoes cook faster).
Serving Suggestions
Beyond the pairings mentioned up top, this recipe is the mashed potato base I reach for anytime I want a no-fuss side. It's rich enough to hold its own next to Easy Gluten Free Beef Stroganoff on a weeknight, and it works just as well spooned alongside roast chicken, a holiday ham, or any main where you'd normally reach for a gravy boat. The ghee and warm milk give it enough richness that it doesn't need extra butter on top, but I like to add some for visual interest if I am serving it during the holidays.
Storing and reheating
Refrigerator: Keep leftovers in an airtight container for up to 4 days.
Freezer: Freeze in a freezer-safe container for up to 2 months.
Make-ahead: You can rice or mash the potatoes up to a day ahead, store un-milked in the fridge, then warm gently and fold in the warmed milk and ghee just before serving for the freshest texture. Handy for Thanksgiving prep.
Reheating: Warm gently on the stovetop over low heat with a splash of dairy-free milk to loosen them back up. Avoid the microwave on high, which can make them gluey as they reheat unevenly.
If you make this recipe, I'd love to hear what you think! Leave a star rating or drop a comment below. Your feedback means so much to me! And if you snap a photo, tag me on Instagram at @kaleenas.kitchen so I can see your version!
Recipe

Creamy Dairy-Free Mashed Potatoes (Gluten-Free)
EQUIPMENT NEEDED
- Large pot
- Potato ricer or hand masher
Ingredients
- 3 pounds russet potatoes about 5-7 potatoes
- ½ cup unsweetened almond milk
- ¼ cup ghee
- 1 teaspoon garlic powder
- Salt to taste plus extra to salt the water
- Pepper to taste
Instructions
- Peel (optional) and chop potatoes into 1-inch cubes. Add to a large pot of well-salted cold water.
- Bring to a boil and cook 15-20 minutes, until fork-tender. Drain well, then return to the warm pot for 1-2 minutes to steam off excess moisture.
- Pass potatoes through a ricer back into the pot, or mash directly in the pot with a hand masher.
- Warm the almond milk and ghee together until just warm (not hot). Add to the potatoes along with garlic powder, salt, and pepper.
- Fold gently with a spatula just until creamy and no dry streaks remain. Stop as soon as it's smooth, don't overmix.
Notes
- Swap almond milk for canned coconut milk for a richer result, or oat milk for a middle ground.
- No ghee? Use olive oil or vegan butter for a dairy-free and vegan version.
- Use a ricer or hand masher, not a food processor or electric mixer - it's the difference between creamy and gummy.
- Leftovers keep in the fridge up to 4 days, or freezer up to 2 months.
Nutrition
*nutrition information is an approximate
Share this recipe on Facebook
Hey, I'm Kaleena!
Here you'll find wholesome recipes made easy, with big flavor. I share easy, approachable recipes designed for everyday life, from 30-minute dinners and simple side dishes to cozy soups and crowd-pleasing favorites.
The focus is always on food that tastes amazing and feels doable. Whether you're cooking for a busy weeknight or a relaxed weekend at home, my goal is to help you feel confident in the kitchen and enjoy cooking meals you're excited to make.







Leave a Comment