Creamy Chickpea and Sweet Potato Curry with Coconut Milk

A gently spiced, fragrant curry with chickpeas, tender sweet potato chunks and fresh spinach simmered in a creamy coconut curry sauce. Ready in 35 minutes, this dish is simple to prepare and full of flavour. It’s popular with both vegetarians and meat-eaters — mild enough for children yet satisfying for adults.

chickpea and sweet potato curry with rice in a green bowl

I try to include more meat-free meals in our weekly plan, usually one or two per week. Finding recipes that everyone enjoys can be a challenge, especially when someone at the table is picky about vegetarian dishes. This curry is a reliable favourite: vibrant, comforting and creamy, and it contributes around two to three portions of your 5-a-day.

Side note: this recipe is accidentally vegan if you use vegetable oil and check that any store-bought ingredients are vegan-friendly.

What do we need?

  • Veggies and pulses – onion, sweet potatoes, chickpeas, spinach and chopped tomatoes
  • Spices and aromatics – garlic, ginger, mild curry powder, ground coriander, cumin, paprika, cinnamon, salt and black pepper
  • A little tomato puree (tomato paste) to deepen the tomato flavour
  • Coconut milk – full-fat gives the richest flavour and is less likely to split during cooking
Ingredients for chickpea and sweet potato curry on a wooden table

How to make this vegetarian curry

Full ingredient amounts and step-by-step instructions are in the recipe card below.

  • Soften the onion: Heat a little vegetable oil in a large frying pan over medium-high heat. Add the chopped onion and cook for about 5 minutes, stirring often, until softened.
  • Add the spices: Stir in garlic, ginger, curry powder, ground coriander, cumin, paprika, cinnamon, salt and pepper. Cook for about a minute to release the aromatics and toast the spices slightly.
  • Add the main ingredients: Add the sweet potato chunks, drained chickpeas, chopped tomatoes, tomato puree and coconut milk. Bring the mixture to a gentle simmer, then reduce the heat.
  • Simmer: Let the curry simmer gently for 20–30 minutes, or until the sweet potato is tender. If the sauce becomes too thick, add a splash of water or vegetable stock. If the sweet potato needs more time, simmer for an extra 5–10 minutes.
  • Finish with spinach: Stir in the baby spinach just before serving; it will wilt quickly in the hot curry.
8 image collage showing how to make chickpea and sweet potato curry

I like to serve this curry with boiled rice or pilau rice, and to finish with fresh coriander and thinly sliced red onion for brightness and crunch.

chickpea and sweet potato curry in a pan

What to serve it with

This chickpea and sweet potato curry pairs well with:

  • Steamed or boiled rice
  • Pilau rice or basmati rice
  • Warm chapatis or naan
  • A simple tomato and onion salad or crunchy cucumber raita

Ingredient swaps

  • Instead of sweet potato: use courgette, peppers, butternut squash, mushrooms, cauliflower or green beans. Add them at the same point you would the sweet potato — adjust cooking time for softer or firmer vegetables.
  • Instead of chickpeas: try butter beans (lima beans), cannellini beans or any tinned beans you prefer.
  • Instead of chopped tomatoes: substitute passata (about 600 ml / 2½ cups) for a smoother sauce.
Bowl of chickpea and sweet potato curry with rice being held by two hands

More fantastic Vegetarian Dinners

  • Vegetarian Asian-style noodles
  • One-pot mushroom ragu with pasta
  • Cheesy veggie burgers
  • Vegetarian pizza with basil garlic butter
  • Mexican-style tortilla lasagne
  • Creamy tomato risotto with crispy garlic crumbs
  • Vegetable pasta bake
  • Tuscan-style stuffed mushrooms with sun-dried tomato cream sauce
Close up of a bowl of chickpea and sweet potato curry with boiled rice

Watch how to make it

Stay updated with new recipes — subscribe to your preferred newsletter or follow your favourite food creators on social channels for new ideas, videos and behind-the-scenes photos.

Chickpea and Sweet Potato Curry

An easy, fragrant curry with chickpeas, sweet potato and spinach cooked in a creamy coconut curry sauce. Ready in 35 minutes and serves 4.

Ingredients

  • 2 tbsp vegetable oil
  • 1 large onion (or 2 small), peeled and finely chopped
  • 2 cloves garlic, minced
  • 2 tsp minced ginger
  • 2 tbsp mild curry powder (use hotter if you prefer)
  • 1 tbsp ground coriander
  • ½ tbsp ground cumin
  • 1 tsp paprika
  • ½ tsp ground cinnamon
  • ½ tsp salt
  • ½ tsp black pepper
  • 2 medium sweet potatoes (about 450 g), peeled and cut into 2 cm chunks
  • 1 x 400 g tin chickpeas, drained
  • 2 x 400 g tins chopped tomatoes
  • 2 tbsp tomato puree (paste)
  • 1 x 400 g tin full-fat coconut milk
  • 60 g (about 2 packed cups) baby spinach

To serve

  • Boiled or pilau rice
  • Fresh coriander (cilantro)
  • Sliced red onion
  • Chilli flakes (optional)

Instructions

  1. Heat the oil in a large frying pan over medium-high heat.
  2. Add the chopped onion and cook for about 5 minutes, stirring often, until softened.
  3. Add the garlic, ginger and all the spices (curry powder, ground coriander, cumin, paprika, cinnamon, salt and pepper). Stir and cook for another minute to release the flavours.
  4. Add the sweet potato, drained chickpeas, chopped tomatoes, tomato puree and coconut milk. Bring to a gentle bubble, then reduce the heat and simmer gently for 20–30 minutes until the sweet potato is tender. If the sauce becomes too thick, add a splash of water or vegetable stock.
  5. Stir in the baby spinach just before serving; it will wilt quickly. Turn off the heat.
  6. Serve with boiled or pilau rice, and top with fresh coriander and sliced red onion. Sprinkle chilli flakes if you like extra heat.

Notes

Make ahead: You can make this curry in advance. Cool quickly, cover and refrigerate for up to two days. Reheat in a pan or microwave until piping hot throughout, stirring occasionally.

Freeze: Cook the curry, cool, cover and freeze. Defrost overnight in the refrigerator, then reheat until piping hot throughout.

Slow cooker: After bringing the curry to a simmer on the stove, transfer it to a slow cooker and cook on high for 3–4 hours or low for 5–6 hours. Stir in the spinach just before serving.

Scaling: You can halve or double the recipe using like-for-like ratios. Cooking time for larger batches may be slightly longer, particularly for the sweet potato to become tender.

Nutrition

Calories: 553 kcal |
Carbohydrates: 64 g |
Protein: 14 g |
Fat: 31 g |
Saturated Fat: 25 g |
Sodium: 655 mg |
Fiber: 14 g |
Sugar: 18 g

Nutrition information is an approximation and should be used as a guide only.

More Curry Recipes

Explore more curries

chicken dhansak with rice in a black bowl

Curries

Chicken Dhansak

chicken biryani topped with natural yogurt on a white plate on a blue background.

Dinner

Chicken Biryani

Chicken pasanda and rice on a dark plate with a piece of chapati on the plate.

Curries

Chicken Pasanda

Some links or references may be affiliate links. The nutritional information provided is approximate and can vary. For full terms and conditions and privacy information, refer to the source site’s policies.