Beef Vindaloo

This post may contain affiliate links. Please read our disclosure policy.
Restaurant-quality beef vindaloo made right in the comfort of your kitchen delivers all the depth, flavor, and kick you expect from your favorite Indian take-out dish. Tender beef is cooked low and slow with a rich blend of spices for a juicy, high-protein, one-skillet curry that pairs beautifully with basmati rice and warm naan.

What Makes This Recipe So Good
- Inspired by the classic dish you’d find at your local Indian restaurant in the West, this spicy beef vindaloo is easy enough to make at home, even if you’re new to cooking Indian cuisine.
- Beef vindaloo is traditionally packed full of delicious flavors, spices, and a hearty helping of heat, and this recipe is no different. With rich, warm spices like garam masala, cumin, paprika, turmeric, ground mustard, ground ginger, cayenne, and cinnamon, it’s hard to resist going back for another serving.
- I won’t lie, this is a pretty hot dish. You can control that a little, though! If you’re sensitive to heat, use caution when adding the cayenne (or omit it altogether if you know it’s not your thing). If you’re not one to shy away from spice, feel free to double the cayenne or even add some red chili peppers for another layer of flavor.
About Beef Vindaloo
Traditionally a Goan recipe, beef vindaloo can be traced back to Portuguese explorers of the early 1400s. The Portuguese would preserve meats in a marinade of vinegar, wine, garlic, and salt, to ensure the meats would keep for their travels.
Fast forward 400 or so years, and you have Goan cooks preparing vindaloo for the British imperialists colonizing India. Beef, pork, and duck vindaloo (or “vindalho”) can even be found in a British-Indian cookbook dating back to 1888.
The colonizers took the recipe with them through other parts of the world, though it didn’t really surge in popularity across Britain until the late 1900s. Of course, the recipe’s been adapted and transformed so much over time and across regions that what we typically think of as vindaloo today differs quite a bit from the original Goan/Portuguese dish. Our recipe below is more in line with the British take on beef vindaloo than the authentic Goan rendition.
Chef’s Tips
- Vindaloo can be made with a variety of proteins. You’ll commonly find it with beef, pork, lamb, or chicken. This beef version is my personal favorite, but feel free to swap in a different type of meat if you’d rather. Keep in mind that a protein like chicken won’t need to cook as long as the beef chuck we used here.
- To save yourself a little prep time, you can purchase pre-chopped beef chuck. You might find it at your grocery store as “stew meat”. Whether you buy it already chopped or you chop the beef chuck yourself, make sure the pieces are fairly even in size so they cook at the same speed.
- When you’re cooking the diced onion, don’t rush things. Cooking them until they’ve caramelized brings out SO much flavor and really makes a difference in the sauce. If you notice the onions start to burn, add 1-2 tablespoons of water to slow the process.
- I mentioned before you can skip the cayenne entirely if you’re cooking for someone with a low spice tolerance. You can also serve your beef vindaloo with a dollop or two of plain Greek yogurt. It’ll help cut through the heat, and it adds a really nice creaminess to the dish. I also recommend serving it with a side of basmati rice and some warm naan, too.

Other One-Pan Recipes You’ll Love
If you loved this recipe as much as we did, don’t forget to leave us a review below. ★ Follow Easy Healthy Recipes on Pinterest, Facebook, and Instagram, too!
For more delicious recipes, visit our sister sites, 40 Aprons and Easy Cheap Recipes.

Beef Vindaloo
Ingredients
For the Beef
- 2 pounds beef chuck see Notes
- 1 teaspoon salt
- ½ teaspoon freshly cracked black pepper
- 3 tablespoons neutral oil
For the Sauce
- 1 medium onion chopped
- 3 cloves garlic minced
- 2 teaspoons garam masala
- 2 teaspoons cumin
- 1 teaspoon paprika
- 1 teaspoon turmeric
- ½ teaspoon ground mustard
- ½ teaspoon cayenne pepper omit for more mild flavor
- ½ teaspoon ground ginger
- ½ teaspoon cinnamon
- 2 tablespoons tomato paste
- ¼ cup apple cider vinegar
- 1 cup low-sodium beef stock plus more as needed
To Serve (All Optional)
- cooked basmati rice
- warmed naan
- plain Greek yogurt
Equipment
- Sharp knife
- Cutting board
- Large bowl
- Large skillet with lid or heavy-bottomed pot with lid
- large wooden spoon or spatula
- large plate or bowl
Instructions
- Use sharp kitchen knife to cut beef chuck into 2-inch thick cubes, then transfer cubed beef chuck to large mixing bowl.
- Add 1 teaspoon salt and ½ teaspoon freshly cracked black pepper to mixing bowl. Toss or gently stir beef to coat thoroughly with salt and pepper. Set aside.
- Heat large skillet over medium-high heat. Once pan is hot, add neutral oil and swirl pan to coat bottom with oil. Heat oil over medium-high heat until oil is hot and shimmery.
- Once oil is hot and shimmery, add seasoned beef chuck to skillet. Sauté beef chuck until browned on all sides, approximately 6 minutes. Transfer browned beef to plate or bowl and set aside.
- Reduce heat under skillet to medium. Do not drain skillet.
- Add chopped onion to skillet. Cook 15 minutes, stirring frequently, until onion has browned and caramelized. Be careful not to burn onions.
- Once onion has caramelized, add minced garlic to skillet. Stir to incorporate, then let onions and garlic cook together 2 minutes or until garlic has softened.
- After 2 minutes, add garam masala, cumin, paprika, turmeric, ground mustard, cayenne, ground ginger, and cinnamon to skillet. Stir to fully incorporate all spices. Continue stirring, cooking 1 minute or until spices are fragrant.
- Add tomato paste to skillet. Stir just until paste and spices are fully incorporated.
- Pour in apple cider vinegar to deglaze skillet. Cook 2 to 3 minutes, stirring constantly and scraping up any browned bits that might be stuck to bottom of skillet.
- Pour in beef stock and gently stir to incorporate. Return browned beef to skillet and let mixture cook over medium heat until liquid begins to boil.
- When liquid just begins to boil, reduce heat to medium-low. Cover skillet with lid and let beef and sauce simmer 60 minutes. While simmering, stir mixture occasionally and flip beef as needed to ensure even cooking. Note: if sauce becomes too thick, add 1 to 2 tablespoons beef stock as needed to thin sauce back out. Stir to fully incorporate stock before adding more.
- When beef is fully cooked and tender, and sauce has thickened to desired consistency, taste sauce and adjust salt as needed. Note: if vinegar flavor is too strong, stir in ½ to 1 packed teaspoon brown sugar and simmer another 2 to 3 minutes.
- When satisfied with flavor of sauce, remove skillet from heat. Divide beef vindaloo into equal portions and serve immediately over basmati rice with warmed naan and 1 to 2 dollops plain Greek yogurt if desired.
Notes
- Beef Chuck: Lamb, pork, and chicken will all work in this dish. Chicken will need a shorter cook time.
- Cayenne: For a more mild vindaloo, omit the cayenne entirely.
- Vinegar: White vinegar can be used in place of apple cider vinegar. If the vinegar flavor is too strong after simmering the sauce for 60 minutes, stir in ½-1 packed teaspoon brown sugar and let mixture simmer another 2-3 minutes.
- Greek Yogurt: If you’re sensitive to heat, definitely serve your vindaloo with 1-2 dollops of Greek yogurt. It’ll help offset some of the spiciness of the dish.
- Basmati Rice: Check out our recipe for Instant Pot Basmati Rice! It works perfectly for this vindaloo recipe.
Nutrition Information
Number of total servings shown is approximate. Actual number of servings will depend on your preferred portion sizes.
Nutritional values shown are general guidelines and reflect information for 1 serving using the ingredients listed, not including any optional ingredients. Actual macros may vary slightly depending on specific brands and types of ingredients used.
To determine the weight of one serving, prepare the recipe as instructed. Weigh the finished recipe, then divide the weight of the finished recipe (not including the weight of the container the food is in) by the desired number of servings. Result will be the weight of one serving.
I love this!! The flavor is amazing. Easy to make and the house smells wonderful as it cooks. I highly recommend.
So happy you enjoyed it, Karen! Thank you for your review!
Really great recipe! Has a nice amount of kick but not overkill. If you want less spice you could just leave out the cayenne. It is very flavorful with a really nice amount of sauce. Over rice it’s excellent!
So happy you enjoyed it, Shannon! Thanks for sharing your review!
I have really struggled to make Indian food that tastes as good as a restaurant, but this is amazing. I do it in the instant pot for ~25 minutes.
Thank you for sharing your feedback, Jen! I’m so glad you enjoy this recipe so much!
This was so good!
Thanks, Heather!
Bloody tasty
Thanks, Jamie!
Hi Megan, 61 yo but still new to cooking. Second time making this, exactly as directed, it is just so yummy. Someone said to me, they don’t eat beef in India, well maybe that’s why it says Western Indian . Either way great dish, and easy to follow. Wait, what? You can teach old dogs new tricks. Thanks for the recipe, yum yum.
Hi, Norma! I’m so happy you enjoyed this recipe so much and found it so easy to follow! And next time someone tells you that, you can enlighten them – while practitioners of certain religions in India may not eat beef, there are many people across India who do eat beef (which includes ox and buffalo meat, not just cow/bull).
Can the dish be made without ground mustard? Suggestions for a substitute? Could using actual mustard (Dijon or classic) be an option?
Thanks in advance!
We didn’t test this recipe with those, so I can’t say for sure how the flavors will turn out, but in general you can sub 1 teaspoon ground mustard with 1 tablespoon of a prepared mustard (like dijon or classic yellow). You could also use turmeric instead of ground mustard, at a 1:1 ratio.
Awesome recipe, it’s not very spicy (for me) so I added chilli. Also rounded out far better with additional vinegar and a squeeze of lemon juice.
Glad you enjoyed it! Thank you so much for sharing your review!
Can you cook this dish in the slow cooker?
We haven’t tested it in the slow cooker so unfortunately we can’t say for sure. If you try it, please let us know how it works out!
I’m very impressed! I wasn’t sure how it would go at first since I haven’t followed your recipes before. It was amazing. I added extra garlic and 2 tablespoons of ghee as well because I always love ghee in my Indian dishes and it gives added flavor or warmth, as well as half a teaspoon of amchuur (mango powder) to add a bit more sweetness to it. I also slow simmered for 50 minutes just to make things extra tender and every 10 minutes added a splash more of beef broth if needed to keep the consistency.
SO happy to hear that!! Sounds delicious ♥ thanks so much for sharing!!
This was supposed to be a 5 star rating! Not 4! Just want to clarify that lol.
Haha, thank you so much for letting us know, Dallas! We’ve updated your star rating on your last comment ☺️