I never thought I could make risotto without butter and parmesan until one night I reached for a can of coconut milk instead. The result was this impossibly creamy, savory rice that my husband said was better than the dairy version — and he’s Italian, so that’s basically the highest compliment possible. The coconut milk gives it this silky richness without any heaviness, and the mushrooms bring all the earthy depth you need. It’s become my go-to “impress someone” dinner that secretly takes almost no effort.
Ingredients
- 1 Tbsp extra virgin olive oil
- 1 medium yellow onion, finely diced (about 1 cup)
- 3 cloves garlic, minced
- 8 oz cremini or baby bella mushrooms, sliced (about 3 cups)
- 1 cup arborio rice (naturally gluten-free)
- 1 can (13.5 oz) full-fat coconut milk (we recommend Trader Joe’s citric-acid-free version)
- 2 cups low-sodium vegetable broth (we recommend Bonafide brand)
- 2 cups fresh baby spinach
- 1 Tbsp fresh thyme leaves (or 1 tsp dried)
- Juice of 1/2 lemon (about 1 Tbsp)
- 1/2 tsp sea salt (adjust to taste)
- 1/4 tsp black pepper
- Pinch of nutmeg (optional but lovely)
Instructions
- Warm the liquids: Combine the coconut milk and vegetable broth in a small saucepan over low heat. Keep it warm but not boiling — adding cold liquid to risotto shocks the rice and slows everything down.
- Sauté the mushrooms: Heat the olive oil in a large, wide skillet or shallow pot over medium-high heat. Add the sliced mushrooms and cook for 5–6 minutes without stirring too much — let them get golden brown on the edges. Season with a pinch of salt, then transfer to a plate.
- Cook the aromatics: In the same pan over medium heat, add the diced onion. Cook for 3–4 minutes until soft and translucent. Add the garlic and thyme, stir for 30 seconds until fragrant.
- Toast the rice: Add the arborio rice to the pan and stir for 1–2 minutes until the grains are coated and slightly translucent at the edges. This step builds a nutty base flavor.
- Start adding liquid: Add one ladleful (about 1/2 cup) of the warm coconut milk-broth mixture. Stir gently and let the rice absorb it almost completely before adding the next ladleful. Keep going — this takes about 18–20 minutes total. Stir every 30 seconds or so. The rice is done when it’s creamy and tender but still has a slight bite in the center.
- Finish the risotto: Stir in the sautéed mushrooms, baby spinach, lemon juice, salt, pepper, and nutmeg. The spinach will wilt in about 30 seconds. Stir gently until everything is combined. If it’s too thick, add one more splash of warm broth.
- Serve immediately: Spoon into shallow bowls. Top with a few extra thyme leaves and cracked black pepper. Risotto waits for no one — it thickens as it sits, so serve it right away while it’s loose and velvety.
Tips
- Arborio rice is the key. Its high starch content is what makes risotto creamy without any dairy. Don’t substitute with jasmine or long-grain — it won’t work the same way.
- Warm liquid only. Always add warm broth/coconut milk to the rice. Cold liquid makes the rice seize up and cook unevenly.
- Don’t rush it. Risotto takes 18–20 minutes of gradual stirring. Put on some music, pour yourself a drink, and enjoy the process. The slow addition of liquid is what coaxes the starch out and creates that signature creaminess.
- Full-fat coconut milk is essential. Light coconut milk won’t give you the same luxurious texture. Look for brands without citric acid or gums — Trader Joe’s organic is our go-to.
- Add-in ideas: Roasted butternut squash, sun-dried tomatoes, artichoke hearts, or fresh peas all work beautifully stirred in at the end.
- Leftovers: Risotto thickens significantly in the fridge. Reheat with a splash of broth in a pan over medium-low heat, stirring until creamy again.