Creamy tomato gravy, warm spices, and tofu/chickpeas/cauli: weeknight makhani magic.
I love a weeknight dinner that tastes like I fussed, even when I didn’t.
This one-skillet, dairy-free take on “butter chicken” delivers all the cozy, restaurant-level flavor—creamy tomato gravy, warm spices, a little tang—in 30 minutes flat.
Bonus: it’s flexible. You can use tofu, chickpeas, or cauliflower (or a mix) depending on what’s hanging out in your kitchen.
I first made a version of this after a long Saturday at our local farmers’ market.
I came home with a head of cauliflower, a sack of tomatoes, and exactly zero interest in a complex cooking project. One pan. One timer. That was the rule.
By the time the rice finished, this glossy, fragrant skillet was ready to ladle on top. Done and done.
Let’s cook.
What we’re making (and how it stays fast)
Classic butter chicken (murgh makhani) is a North Indian dish known for a silky tomato-butter sauce and tender chicken.
Here, I borrow the essence—aromatics, tomatoes, garam masala, and a buttery finish—and swap in plant-based proteins and fats.
We use pantry shortcuts (tomato paste + canned tomatoes), bloom spices in vegan butter for speed, and finish with coconut milk or cashew cream for that signature lush texture.
A few smart moves keep the clock on our side:
-
Pre-mix a quick spice blend so it hits the pan all at once.
-
Use a nonstick or well-seasoned skillet to prevent sticking and to speed browning.
-
Start the rice or heat frozen naan first so everything lands at the same time.
Ingredient list (choose your “protein”)
Serves: 4
Time: 30 minutes
Equipment: 12-inch skillet (nonstick or cast iron), spatula, small bowl, measuring cups/spoons
Base sauce
-
2 tbsp vegan butter (or 2 tbsp neutral oil + 1 tsp olive oil)
-
1 medium yellow onion, finely diced
-
4 cloves garlic, minced
-
1 tbsp fresh ginger, grated (or 1 tsp ground ginger in a pinch)
-
2 tbsp tomato paste
-
1 (14.5 oz/400 g) can crushed tomatoes (or passata)
-
1 cup (240 ml) full-fat coconut milk or 1 cup cashew cream (see Notes)
-
1 tsp maple syrup or sugar (optional, to balance acidity)
-
¾–1 tsp kosher salt, plus more to taste
-
Juice of ½ lemon, plus wedges for serving
-
2 tbsp chopped cilantro (optional garnish)
Spice blend
-
2 tsp garam masala
-
1 tsp ground cumin
-
1 tsp ground coriander
-
½–1 tsp Kashmiri chili powder or paprika (adjust to heat)
-
½ tsp turmeric
-
¼ tsp ground cardamom (optional but lovely)
-
Freshly ground black pepper
Choose one (or combine):
-
Crispy tofu: 14 oz (400 g) extra-firm tofu, pressed and cubed + 1 tbsp cornstarch + 1 tbsp oil + pinch salt
-
Chickpeas: 1 (15 oz/425 g) can chickpeas, drained and rinsed
-
Cauliflower: 1 small head (about 1 lb/450 g), bite-size florets
-
Mixed: Half tofu + half chickpeas is my weeknight favorite
To serve (pick your vehicle):
-
Cooked basmati rice
-
Warm vegan naan or pita
-
Steamed greens or roasted veggies on the side
Step-by-step (30-minute flow)
Minute 0–5: Prep + start the “protein.”
-
Whisk all the spices in a small bowl.
-
If using tofu, toss the cubes with cornstarch, 1 tbsp oil, and a pinch of salt.
-
Heat your skillet over medium-high. Add 1 tbsp vegan butter (or oil).
-
Sear tofu until golden on 2–3 sides (about 4–6 minutes). For chickpeas or cauliflower, sauté until lightly blistered and browned (3–5 minutes). Transfer to a plate.
Minute 5–12: Aromatics + blooming.
-
Reduce heat to medium. Add remaining 1 tbsp vegan butter.
-
Stir in onion with a pinch of salt. Cook until translucent and lightly golden, 3–4 minutes.
-
Add garlic and ginger; cook 30–60 seconds until fragrant.
-
Clear a small space in the pan, add tomato paste, and cook it for 60 seconds to caramelize.
-
Sprinkle in the spice blend. Stir constantly 30–45 seconds to bloom—your kitchen will smell amazing.
Minute 12–20: Build the sauce.
-
Pour in crushed tomatoes. Swirl ¼ cup water into the can and add that too.
-
Simmer 5 minutes, stirring occasionally, until slightly thickened.
-
Lower heat and stir in coconut milk (or cashew cream). Add ¾ tsp salt and the maple syrup if using. Simmer 2–3 minutes more.
Minute 20–25: Marry flavors.
-
Return tofu/chickpeas/cauliflower (and any juices) to the skillet.
-
Simmer 3–4 minutes, stirring gently, until heated through and coated.
Minute 25–30: Finish + serve.
-
Squeeze in the lemon juice. Taste and adjust: more salt for pop, more lemon for brightness, a pinch of sugar if acidic, more garam masala for warmth.
-
Swirl in another teaspoon of vegan butter for gloss if you’re feeling fancy.
-
Scatter cilantro, dish up over rice, and serve with warm naan.
Ingredient notes and easy swaps
-
Coconut milk vs. cashew cream: Coconut milk is convenient and lush. If you prefer a neutral base, blend ¾ cup raw cashews (soaked 15 minutes in hot water) with 1 cup water until silky. That’s your cream.
-
Heat level: Kashmiri chili is vibrant and mild. If using cayenne, start with ⅛ tsp and build from there.
-
Tomatoes: Crushed tomatoes give body. If you use diced, blend them first for smoothness.
-
Butteriness: Vegan butter varies. If yours is saltier, start with ½ tsp salt in the sauce and adjust later.
-
Alliums: No onion? Use 2–3 shallots. Garlic-averse? Add ½ tsp garlic powder with the spices.
-
Protein shuffle: Tempeh works if you steam it first for 10 minutes. Lentils (2 cups cooked) are great folded in at the end. For veg-forward nights, go all cauliflower or add peas during the last 2 minutes.
Make it your way (dietary and pantry options)
-
Nut-free: Choose coconut milk and skip cashew cream.
-
Soy-free: Use chickpeas and/or cauliflower.
-
No coconut flavor: Cashew cream is your friend; it keeps things silky without coconut.
-
Oil-free: Sauté onions in a splash of vegetable broth. Skip vegan butter and finish with 2–3 tbsp cashew cream for richness.
-
Gluten-free: Naturally gluten-free as written—just serve with rice or GF naan.
-
Low-waste tip: Save your tofu press water for plants (it’s minimal and fine for most houseplants) and compost onion skins if you can.
How to get that restaurant-style depth (fast)
-
Bloom your spices in fat. Those 30–45 seconds after the onions are done are gold—the spices wake up, and the sauce tastes like it simmered all afternoon.
-
Brown something before building the sauce. Even a quick sear on tofu or a blister on chickpeas adds caramel notes that round out the acidity of tomatoes.
-
Balance at the end. A squeeze of lemon, a pinch of sugar, or a splash more coconut milk can take it from “good” to “I-will-lick-the-spoon.”
Serving suggestions
-
Spoon generously over basmati rice, then add a handful of baby spinach to the bowl and let it wilt under the heat—built-in greens.
-
Swipe with warm vegan naan or pita. I sometimes brush mine with melted vegan butter, a whisper of garlic, and a sprinkle of cilantro.
-
For a lighter plate, ladle the sauce and protein over roasted cauliflower steaks or steamed green beans.
-
If you like crunch, top with toasted cashews or slivered almonds (if not nut-free) or crispy fried shallots.
Leftovers, storage, and reheating
This skillet keeps beautifully. Store leftovers in a sealed container for up to 4 days in the fridge. The sauce thickens as it chills—stir in a splash of water or coconut milk when reheating on the stovetop over low heat. It also freezes well for up to 2 months; thaw overnight in the fridge, then rewarm gently. If you’ve used cauliflower only, expect it to be softer after freezing, but still delicious.
The 30-minute game plan (so dinner hits the table on time)
-
Minute 0: Put rice on or preheat the oven for naan.
-
Minute 2: Press and cube tofu (or rinse chickpeas / chop cauliflower). Mix your spice blend.
-
Minute 5: Sear protein.
-
Minute 9: Start onions; add garlic, ginger, tomato paste, bloom spices.
-
Minute 14: Tomatoes in; simmer.
-
Minute 19: Coconut milk in; season.
-
Minute 22: Return protein; simmer.
-
Minute 26: Lemon, taste, adjust, garnish.
-
Minute 30: Serve.
FAQ (fast answers for busy nights)
Can I make this without vegan butter?
Absolutely. Use olive or avocado oil and finish with a spoon of cashew cream for richness.
What if I only have diced tomatoes?
Blend them smooth first, or reduce a little longer for velvety texture.
Can I slow-cook it instead?
You don’t need to, but if you want a hands-off version, simmer the sauce 20–25 minutes while you do other things. Add the protein for the last 5 minutes so it doesn’t overcook or get mushy.
Is garam masala necessary?
It’s the backbone of the flavor here. If you’re out, combine 1 tsp ground cumin, ½ tsp coriander, ¼ tsp cinnamon, ¼ tsp cardamom, and a pinch of cloves and nutmeg as a quick stand-in.
Printable recipe card
Skillet Plant-Based “Butter Chicken” (30 Minutes)
Ingredients
-
2 tbsp vegan butter, divided
-
1 onion, diced
-
4 garlic cloves, minced
-
1 tbsp grated ginger
-
2 tbsp tomato paste
-
1 (14.5 oz) can crushed tomatoes
-
1 cup coconut milk or cashew cream
-
¾–1 tsp kosher salt, to taste
-
1 tsp maple syrup or sugar (optional)
-
½ lemon, juiced
-
2 tbsp chopped cilantro (optional)
Spice blend
-
2 tsp garam masala
-
1 tsp cumin
-
1 tsp coriander
-
½–1 tsp Kashmiri chili or paprika
-
½ tsp turmeric
-
¼ tsp cardamom
-
Black pepper, to taste
Protein (choose one)
-
14 oz extra-firm tofu, pressed and cubed, tossed in 1 tbsp cornstarch + 1 tbsp oil + salt
or 1 can chickpeas, rinsed
or 1 small head cauliflower, florets
Directions
-
Heat 1 tbsp vegan butter in a 12-inch skillet over medium-high. Brown tofu/chickpeas/cauliflower 3–6 minutes; transfer to a plate.
-
Add remaining 1 tbsp vegan butter; cook onion 3–4 minutes with a pinch of salt. Stir in garlic and ginger 30–60 seconds.
-
Add tomato paste; cook 60 seconds. Sprinkle in spices; stir 30–45 seconds.
-
Add crushed tomatoes + ¼ cup water. Simmer 5 minutes.
-
Stir in coconut milk, ¾ tsp salt, and maple syrup if using. Simmer 2–3 minutes.
-
Return protein; simmer 3–4 minutes to coat.
-
Finish with lemon juice. Taste and adjust salt, acid, heat. Garnish with cilantro.
Serve with: Basmati rice and warm vegan naan.
Leftovers: 4 days refrigerated; freeze up to 2 months.
Tip: Bloom spices in fat for a deeper, rounder flavor without extra time.
When a recipe works this hard, I remember why I love simple cooking: a few spices, a hot pan, and dinner that makes the whole room smell like you’ve been at it for hours.
Enjoy—and if you swap in another veggie or spice, tell me how it went.
I’m always tinkering, too.
If You Were a Healing Herb, Which Would You Be?
Each herb holds a unique kind of magic — soothing, awakening, grounding, or clarifying.
This 9-question quiz reveals the healing plant that mirrors your energy right now and what it says about your natural rhythm.
✨ Instant results. Deeply insightful.