This Thai butternut squash curry with chickpeas and spinach recipe is easy to prepare in 45 minutes.

Made with simple, pantry ingredients, this recipe is perfect for busy weeknights. You’ll love warming up with a bowl of this curry on a cold winter day!

Bowl of creamy butternut squash curry with chickpeas and spinach served with rice.

About the Recipe

Perfectly spiced, wholesome, and incredibly satisfying, this creamy curry offers a hearty plant-based meal the entire family will enjoy.

To build plenty of flavor, the recipe features roasted butternut squash, flavorful curry powder and red curry paste and aromatics like shallot, garlic and ginger.

Chickpeas and spinach add nutrition and texture, and lime, coconut sugar and cilantro are used to achieve the perfect balance of spicy, sweet, tangy, and umami flavors.

This easy-to-make yet flavor-packed squash curry is versatile, suitable for casual weeknight dinners, entertaining, or meal prep.

Love curries? You’ll have to try this Vegan Thai Red Curry Vegetables with Tofu, Coconut Sweet Potato Red Lentil Curry, Easy Vegetable Curry with Tofu, Sweet Potato Chickpea Curry and Red Lentil Cauliflower Curry too!


Ingredient collage of everything you need to make butternut squash curry with chickpeas, coconut milk, spinach, red curry paste, ginger and garlic. Each ingredient is labelled.
  • Butternut Squash: You’ll need one medium-sized butternut squash or about 4-5 cups diced. Sweet potatoes or another variety of squash would work well as a substitute. The amount doesn’t have to be exact, so don’t worry too much about the size of the squash.
  • Coconut Oil: Coconut oil works well for sautéing the aromatics and toasting the spices. You can substitute another oil like avocado oil or olive oil if you prefer.
  • Shallot: Shallot works great here but you can substitute another variety of onion such as red onion, yellow onion or white onion if that’s what you have.
  • Curry Powder: Use a mild yellow curry powder.
  • Red Curry Paste: Use red Thai curry paste or substitute yellow curry paste. Red curry paste is readily available in well-stocked grocery stores, Asian specialty stores or can be purchased online. not all brands are vegan so be sure to read the ingredients if needed.
  • Crushed Tomato: Use canned crushed tomatoes or substitute canned diced tomatoes. Crushed tomato will make the curry base a bit smoother but diced tomato also works well.
  • Coconut Milk: You can use light coconut milk or regular coconut milk. Canned full-fat coconut milk is suggested for the creamiest curry. Cashew cream can be used as a substitue according to this vegan butter chicken recipe.
  • Stock: Any vegetable broth or stock works. If you don’t have any on hand, you can use water but broth will add more flavour.
  • Soy Sauce or Tamari: Use any soy sauce, I prefer sodium-reduced soy sauce, or substitute gluten-free tamari if needed.
  • Coconut Sugar: You can substitute white sugar, brown sugar or maple syrup.
  • Spinach: I think baby spinach is the best green to use here though baby kale would also work.
  • Lime: You can use lime juice or lemon juice.

Please note the complete ingredient list with amounts is found in the recipe card at the end of the post.

Variations & Additions

  • Protein Additions: To add more protein to this dish, serve with this crispy baked tofu, marinated tempeh or any other protein you enjoy. You can also mix raw tofu directly into the curry, like in this vegan panang curry recipe, but I prefer to bake or pan-fry it first so it’s crispy. To pan-fry, follow the tofu portion of this curried tofu recipe.
  • Additional Vegetables: You can add up to 2 cups additional vegetables with the garlic and ginger. I’d suggest keeping it simple with 1-2 extras. Try cauliflower, zucchini, red bell pepper, green beans or carrot. Green peas also work well mixed in when you add the spinach.
  • Legume Variations: Instead of chickpeas, consider cooked green lentils or red lentils, canned lentils, black beans or kidney beans.
  • Peanut Curry: Add 1-2 tbsp peanut butter when you add the coconut sugar and soy sauce.
  • Low-Sodium Option: use reduced-sodium soy sauce and low-sodium broth or use water instead of broth.
  • For Spicy Curry: Add 1-2 Thai red chilis with the garlic and ginger. Be careful as they’re quite hot! You could also use 1-2 tsp sambal oelek or up to 1 tsp of red pepper flakes.
  • Serving: Top with cilantro, cashews, peanuts, pumpkin seeds, chili flakes, Thai basil or sriracha. Serve or jasmine rice, basmati rice, brown rice and/or with naan, roti or pita for dipping.

Step-by-Step Instructions

Collage showing how to peel, remove seeds and dice a butternut squash.

Step 1: Prepare and roast the butternut squash. The first step is to roast the butternut squash. This step caramelizes the natural sugars in the squash, intensifying the flavour for extra deliciousness!

Cut the ends off the squash and peel it (image 1). Cut in half in crosswise so you have the top half and the bottom half in two sections, then cut each of those in half length-wise (image 2).

Use a spoon to scoop out the seeds (image 3) then dice it all up into approximately 3/4-inch cubes (image 4).

Drizzle the squash with the oil, 1 tsp of the curry powder and a pinch of salt and pepper.

Roast the squash the squash on a baking sheet on the middle rack in the oven for 24-28 minutes, giving it a stir half way through roasting.

Minced shallot cooking in a large soup pot with a wooden spoon.

Step 2: Start the curry but heating the coconut oil in a large pot over medium heat. Add the shallots and cook 3-5 minutes until tender and fragrant.

Minced shallot, garlic, ginger and curry powder cooking in a large soup pot with a wooden spoon.

Step 3: Add the garlic, ginger, remaining curry powder and the Thai red curry paste. Cook the mixture for another minute or two while stirring to toast the spices.

A creamy red curry cooking in a large Dutch oven with a wooden spoon.

Step 4: Add the crushed tomato, coconut milk, chickpeas and 1 cup of broth or water. Season with salt and pepper and bring to a simmer.

Reduce the heat to medium-low and cook it for about 12-15 minutes until it thickens.

A large pot of butternut squash curry with spinach and chickpeas. A wooden spoon rests in the pot.

Step 5: To finish your curry, add the spinach, soy sauce or tamari and coconut sugar and mix until the spinach wilts.

Stir in the roasted butternut squash, lime juice and fresh cilantro.

Note: For an extra creamy finish, try blending a scoop of the roasted butternut squash with 2 cups of the curry liquid (before adding the spinach), then pouring the blended portion back into the pot and stirring to combine.

You could also pulse an immersion blender in the pot a few times after adding the squash but before adding the spinach.

A bowl of roasted butternut squash curry with spinach and chickpeas served with rice and topped with chopped cilantro.

Serve your curry right away, over your favorite rice and topped with more cilantro and lime and chopped peanuts or cashews, if desired. Some fresh naan bread, roti or pita is also delicious for dipping!

If you’d like to serve this alongside more Thai-inspired recipes, this Thai Basil Eggplant and Vegan Tofu Pad Thai are a must!

Recipe FAQs

Do you have to roast the butternut squash?

No. You don’t have to but I like the flavour and texture the roasting adds. To make this recipe in one pot without roasting the squash. Add the squash when you add the chickpeas and simmer until the squash is tender.

Do you need to peel butternut squash?

Yes, it is generally recommended to peel butternut squash before cooking. The skin of butternut squash is thick, tough, and not pleasant to eat, especially when cooked.

You can use a vegetable peeler or a sharp knife to remove the skin. Once peeled, you can cube, slice, or prepare the squash according to your recipe’s requirements.

Can you substitute almond milk for coconut milk in curry?

If you need to substitute coconut milk in a curry due to dietary preferences, allergies, or simply because you don’t have it on hand, there are several alternatives you can use. Keep in mind that each substitute will impart a different flavor and texture to your curry.

Plant-Based Milks: Unsweetened almond milk or cashew milk can be used as a substitute for coconut milk. They provide a creamy texture and mild, nutty flavor. However, they are thinner than coconut milk, so you might need to use less water or broth in your curry to maintain the desired consistency.

Unsweetened soy milk is a good substitute for coconut milk in terms of creaminess. It has a mild flavor, so it won’t significantly alter the taste of your curry.

Oat milk is another plant-based milk option that can work in certain curry recipes. It has a creamy consistency and a naturally sweet flavor, so it might be better suited for mild or sweet curries.

Cashew Cream: Make cashew cream by blending 3/4 cup soaked cashews with 1 cup water until smooth and creamy and use to replace the coconut milk.

Vegetable Broth: If you prefer a lighter, broth-based curry that’s more like a soup, you can omit the coconut milk and use a bit more vegetable broth instead of the coconut milk.

How long does butternut squash curry last?

Butternut squash curry will keep in the fridge for up to 5 days. Here’s how to store it:

Allow the curry to cool down until it’s no longer steaming. Transfer the leftover curry to an airtight container. Glass or plastic containers with tight-fitting lids work well. Make sure the curry is not steaming hot when you seal the container to prevent condensation.

Place the airtight container in the refrigerator. Butternut squash curry can be refrigerated for up to 5 days.

Can I freeze butternut squash curry?

If you want to store the curry for a longer period, freezing in a good option. Here’s how to freeze itL

Let the curry cool down until no longer steaming. If you have a large batch, consider portioning the curry into smaller containers or freezer-safe bags. This makes it easier to reheat smaller servings later.

Place the containers or bags in the freezer. Butternut squash curry can be frozen for up to 2-3 months.

How should I reheat butternut squash curry?

When you’re ready to enjoy leftovers:

If the curry is frozen, thaw it overnight in the fridge. Reheat the curry on the stovetop over medium heat, stirring occasionally until it’s heated through.

You might need to add a splash of water or vegetable broth if the curry has thickened in the fridge. You can also reheat it in the microwave in individual portions until heated through.

A bowl of roasted butternut squash curry with spinach and chickpeas served with rice.

Instant Pot Instructions

To make Instant Pot butternut squash curry:

  1. Set the Instant pot to saute mode and sautte the shallot, garlic and ginger for a few minutes, then add the curry powder and curry paste and stir for another 1-2 minutes.
  2. Add the cubed butternut squash, tomato, coconut milk and water broth and mix well.
  3. Seal the Instant Pot and pressure cook for 6 minutes. Make sure the vent is turned to Sealing.
  4. Once it beeps, let the pressure release naturally for a few minutes, then turn the vent to let the remaining pressure release.
  5. Carefully open the lid and stir in the remaining ingredients – chickpeas, lime, coconut sugar, cilantro, spinach and soy sauce.

Note that you’re skipping roasting the butternut squash and adding it directly to the Instant Pot instead.

Recipe Notes

  • You can use anywhere from 1-5 cups of broth depending on how thick you’d like your curry or if you’re making soup. Note that it will thicken substantially storing so I find about 2 cups works best.
  • If you’re short on time, you can skip roasting the squash and add it directly to the post when you add the liquids and simmer until the squash is tender.
  • Try to cut the butternut squash into evenly sized cubes for even cooking time.

Did you try this recipe? I’d love to hear about it! Scroll down to the comment section to leave a star rating and review.

Overhead view into a bowl of creamy butternut squash curry with chickpeas and spinach served with rice.
Print Recipe
5 from 7 votes

Butternut Squash Curry Recipe

This butternut squash and chickpea curry recipe is amazing for warming up during the cooler months. Serve over rice for comfort in a bowl!
Prep Time10 minutes
Cook Time30 minutes
Course: Main Dish
Cuisine: Thai
Diet: Vegan
Servings: 6
Calories: 338kcal
Author: Deryn Macey


  • 1 medium butternut squash diced into ¾-inch pieces (700 g, about 5 cups)
  • 1 tsp oil
  • 2 tsp mild yellow curry powder divided
  • 1 tbsp coconut oil
  • 1 large shallot diced (50g, ½ cup diced)
  • 4 cloves garlic minced or grated
  • 1- inch piece ginger grated
  • 2 tbsp red curry paste 30 g
  • 1 14 oz 398 mL can crushed or diced tomatoes
  • 1 14 oz 400 mL can coconut milk
  • 1-2 cups vegetable stock or water 250-500 mL
  • 1 tbsp soy sauce or tamari 15 mL
  • 1 tbsp coconut sugar 15 g
  • 1 540 mL 19 oz can chickpeas or 2 cups cooked chickpeas
  • 4 cups baby spinach 85 g
  • ¼ cup finely chopped cilantro
  • ½ lime juice

For serving

  • cilantro
  • cooked rice
  • peanuts
  • lime wedges


  • Prepare the Squash: Preheat the oven 400 F. Cut both ends off the squash, peel it, then cut in half crosswise so you have the top and bottom as two pieces. Slice each piece in half down the center vertically, so that you now have 4 pieces of squash. Use a spoon to scoop out and discard the seeds and pulp. Cut the squash into ¾-inch pieces.
  • Roast Squash: Transfer squash to a baking sheet. Drizzle with 1 tsp oil, then season with 1 tsp of the curry powder and a pinch of salt and pepper. Toss to coat. Roast on the middle rack of the oven for 24-28 min, stirring halfway, until tender and golden-brown. Roasting the squash caramelizes the natural sugars, intensifying the flavour.
  • Saute Shallot: While the squash roasts, in a large pot, heat 1 tbsp coconut oil over medium heat. When the pot is hot, add the shallots. Cook for 3-5 min, stirring often, until tender.
  • Add Ginger, Garlic & Spices: Add garlic, ginger, 1 tsp curry powder and curry paste. Cook for another 1-2 mins, stirring constantly, to toast the spices.  
  • Add Liquids & Chickpeas: Add tomatoes, chickpeas, coconut milk and 1 cup of the broth, scraping bottom of the pot to loosen all the brown bits.  Season with salt and pepper. Bring to a simmer over high heat. Once simmering, reduce heat to medium-low. Cook for 12-15 mins, until slightly reduced. 
  • Optional – Blend Curry: If you’d like the curry to be thicker, scoop about 2 cups of the curry into a blender and add about 1 cup of the roasted butternut squash. Blend until smooth then pour back into the pot. You can also pulse an immersion blender in the pot a few times after adding the squash but before adding the spinach. This step is optional.
  • Finish Curry: Add the spinach, soy sauce and coconut sugar. Cook for another 2-4 min, stirring occasionally, until spinach wilts and flavours are combined. Add the butternut squash, lime juice and chopped cilantro. Adjust the consistency with additional broth, if desired.
  • Serve Curry: Divide curry between bowls alongside rice of choice. Top with remaining more cilantro, lime and peanuts, if desired. 


To serve as a butternut squash curry soup, increase the broth to 4 cups. For varying thickness, you can use anywhere between 1-5 cups of broth. It’s suggested to start with 1 cup of broth and slowly increase to reach your desired consistency. Note that the curry will thicken substantially after storing, so I usually use 2-3 cups broth.
Store leftover curry in the fridge in a sealed container for up to 5 days. Reheat in the microwave. To freeze, cool completely and store in a heavy duty freezer bag or container for up to 3 months. Thaw in the fridge before reheating.


Serving: 1/6th of recipe | Calories: 338kcal | Carbohydrates: 36g | Protein: 8g | Fat: 21g | Sodium: 624mg | Fiber: 7g | Sugar: 7g