Dirty Cabbage (Vegan, High Protein, One Pan, 30 Minutes)

This Vegan Dirty Cabbage has all the bold, smoky, deeply savory character of the viral original - without any beef or sausage. Lentils and chickpeas replace the meat, and a sauce of tomato paste, soy sauce, smoked paprika, and cider vinegar delivers the complex, umami-rich depth that makes dirty cabbage so satisfying. One pan, 30 minutes, completely plant-based.

Fresh herbs are used as garnish for Dirty Cabbage.

What is dirty cabbage?

Dirty cabbage is a skillet dish inspired by dirty rice - the classic Cajun one-pot meal where rice is cooked in a richly seasoned mixture of ground meat, the Cajun holy trinity of onion, bell pepper, and celery, and bold spicing. In dirty cabbage, shredded cabbage replaces the rice: it is cooked down into the same spiced, meaty mixture until tender and saturated with flavor.

<cite index="136-1">The dish went viral on TikTok and is inspired by Louisiana Cajun cuisine, where the "dirty" name comes from the appearance of the dish once the meat, seasonings, and vegetables are cooked together.</cite> It is a naturally low-carb format - cabbage instead of rice - and a one-pan dinner that is genuinely quick, budget-friendly, and deeply satisfying.

Every recipe currently in the top search results is built on ground beef and andouille sausage. This version rebuilds the same format for a plant-based kitchen, using lentils and chickpeas as the protein base and a carefully constructed umami-rich sauce in place of the meat fat that does so much flavor work in the original.

Ingredients needed to make Dirty Cabbage collected on a wooden board.

Why this vegan version works

Tomato paste cooked until caramelized. The most important step in this recipe is cooking the tomato paste in the hot oil with the onions and garlic before adding any liquid. Caramelized tomato paste turns from bright red and slightly bitter to a deep, brick-red, intensely savory concentrate that is one of the best umami sources in plant-based cooking. This is the step that does much of the flavor work that browning ground beef does in the original.

Soy sauce for depth and umami. Three tablespoons of soy sauce in the sauce adds a deep, savory, slightly sweet complexity that elevates the dish from a spiced vegetable stew to something genuinely rich and satisfying. Soy sauce in a Cajun-inspired dish is unconventional - it is also exactly the right call, and no one who tastes the finished dish will identify it as the source of the depth.

Cider vinegar for bright acidity. The cider vinegar is the equivalent of the tangy, slightly acidic note that meat fat and seasoning blends like Tony Chachere's provide in the original. Two tablespoons cut through the richness of the tomato paste and soy sauce and keep the dish from tasting heavy or flat.

Lentils and chickpeas as the meat replacement. Both are added after the sauce is built - they absorb the spiced tomato and soy sauce and become deeply flavored throughout rather than just coated on the outside. Together they provide two protein sources, varied texture, and genuine substance.

Cabbage cooked in the sauce. The shredded cabbage goes in with the vegetable broth and cooks down in the sauce for 10-12 minutes, absorbing the smoked paprika, cayenne, and tomato depth as it softens. This is the same mechanism that makes dirty cabbage satisfying in any version - the cabbage becomes a vehicle for the sauce rather than a separate vegetable.

Cabbage is cooked in a pan.

Ingredient notes

Shredded cabbage - one 14 oz bag, pre-shredded. Using pre-shredded cabbage makes this a genuinely quick weeknight recipe. A medium head of green cabbage shredded by hand works equally well. The cabbage will look like a lot going into the pan and will reduce significantly as it cooks.

Lentils - one 15 oz can, drained and rinsed. Canned lentils are already cooked, which keeps the recipe in the 30-minute window. Green or brown lentils hold their shape best. Drain and rinse thoroughly.

Chickpeas - one 15 oz can, drained and rinsed. Firm and nutty, they add textural contrast to the softer lentils and a second plant protein source.

Tomato paste - 5 oz. A larger quantity than most recipes use, because it is being cooked into a caramelized base rather than stirred in as a background flavoring. Do not skip the caramelization step - it transforms the flavor completely.

Onion - 1 medium, chopped. The aromatic base of the dish.

Green bell pepper - 1 medium, sliced. Along with the onion and garlic, these form the plant-based version of the Cajun holy trinity (traditionally onion, celery, and bell pepper). The bell pepper adds sweetness and color.

Garlic - 4 cloves, pressed. Cooked with the onion before the tomato paste goes in.

Chickpeas, lentils, tomato paste and spices are added to the pan.

Smoked paprika - 2 teaspoons. One of the primary spices, contributing warmth, color, and the smokiness that andouille sausage provides in the original.

Chili flakes - 1 teaspoon. For background heat. Adjust to preference.

Cayenne pepper - half a teaspoon. For a more forward heat than chili flakes alone. Reduce or omit for a milder dish.

Soy sauce - 3 tablespoons. The umami anchor of the sauce. Tamari works as a substitute.

Cider vinegar - 2 tablespoons. The acidic brightness that balances the richness of the sauce. White wine vinegar works as a substitute.

Vegetable broth - half a cup. Added with the cabbage to provide the liquid the cabbage needs to cook down and absorb the sauce.

Olive oil - 3 tablespoons, for cooking the aromatics and caramelizing the tomato paste.

Ready dirty cabbage in a pan.

How to make vegan dirty cabbage

Heat the olive oil in a large skillet or wide pot over medium-high heat. Add the chopped onion and sliced green bell pepper and cook for 4-5 minutes, stirring occasionally, until softened and beginning to take on color. Add the pressed garlic and cook for a further 1 minute until fragrant.

Add the tomato paste to the pan. Stir and cook for 2-3 minutes, pressing the tomato paste against the hot pan and stirring continuously, until it darkens to a deep brick-red and smells caramelized and intensely savory. This step is not optional - it is where the primary depth of flavor in the dish develops.

Add the smoked paprika, chili flakes, and cayenne pepper. Stir for 30 seconds to bloom the spices in the tomato paste.

Add the soy sauce and cider vinegar. Stir to combine everything into a thick, dark, deeply seasoned paste. Add the drained lentils and drained chickpeas and stir to coat them thoroughly in the sauce.

Add the shredded cabbage and pour in the vegetable broth. Stir everything together. The pan will be very full - the cabbage will reduce significantly as it cooks. Cover the pan and cook for 8-10 minutes over medium heat, stirring every 2-3 minutes, until the cabbage has wilted and become tender and the sauce has absorbed into everything. Remove the lid for the final 2 minutes to allow any excess liquid to evaporate and the flavors to concentrate. Taste and adjust seasoning.

Serve immediately over rice, with crusty bread, or straight from the pan.

Closeup of Dirty Cabbage.

Ways to serve

Over white or brown rice - the most natural serving. The sauce-soaked cabbage and lentils over rice makes a genuinely complete, filling meal.

Straight from the pan - the dish is substantial enough on its own without any grain alongside. The lentils and chickpeas provide more than enough protein and fiber.

With cornbread - the Southern comfort food pairing that the dirty rice tradition calls for. Works beautifully with the slightly spicy, smoky sauce.

Over cauliflower rice - for a lower-carb option that keeps the dish's high-protein character intact.

As a taco filling - spooned into warm corn tortillas with a squeeze of lime and some sliced avocado. The bold, spicy filling works well in a taco format.

As meal prep bowls - portioned into containers over rice. The flavors deepen significantly overnight and this is one of the best meal prep dishes on the site.

Vegan Dirty Cabbage in a lagr pan.

Storage and meal prep

Refrigerator: Stores in an airtight container for up to 5 days. This is a dish that genuinely improves with time - the lentils and chickpeas absorb the spiced sauce overnight and become more deeply flavored throughout. Day two or three is often better than day one.

Meal prep: Make a full batch on Sunday and portion over rice. The cabbage softens further as it sits but remains satisfying - the texture shifts slightly but the flavor deepens. One of the highest-value meal prep dishes on this site for how little it costs and how much flavor it develops.

Freezer: Freezes well for up to 3 months. Cool completely before freezing. The texture of the cabbage softens on thawing but the flavor holds well. Thaw overnight in the fridge and reheat in a pan over medium heat with a small splash of water or broth.

A spoonful of Dirty Cabbage.

Frequently asked questions

What does dirty cabbage taste like?

Bold, smoky, spicy, and slightly tangy - the same flavor profile as the meat-based original, built from plant-based ingredients. The caramelized tomato paste and soy sauce provide a deep, savory richness that is genuinely difficult to distinguish from a meat-based version in terms of intensity and complexity. The cider vinegar adds a brightness that keeps the dish from feeling heavy.

Is this dish spicy?

With the full amount of chili flakes and cayenne it is moderately spicy - noticeable heat with a warm finish. For a milder result, halve the cayenne and reduce the chili flakes to half a teaspoon. For more heat, increase either or both.

Can I use fresh lentils instead of canned?

Yes - cook 200g of dried green or brown lentils separately until just tender, drain, and use in place of the canned lentils. This adds 20-25 minutes to the cooking time.

Why caramelize the tomato paste?

Cooking tomato paste in hot oil until it darkens and concentrates transforms its flavor from slightly raw and acidic to deeply savory, sweet, and complex. It is one of the most impactful single steps in plant-based cooking and is the main reason this dish tastes genuinely rich without any meat. Never skip this step.

Can I skip the soy sauce?

The soy sauce is one of the primary umami and depth sources in the dish - it is not a background ingredient. Skipping it produces a noticeably flatter result. If soy-free is needed, coconut aminos in the same quantity is the closest substitute.

Does it keep well?

Exceptionally well. This is one of the few dishes that is better on day two or three than on day one. The cabbage absorbs the sauce overnight and the flavors become more cohesive and deeper. Highly recommended as a make-ahead dish.

Collage of two photos of Dirty Cabbage with text overlays.

More recipes you'll love

Made this Vegan Dirty Cabbage? Leave a comment below and rate the recipe - it helps more people find it. Tag me on Instagram or Facebook with a photo. Florian.

Fresh herbs are used as garnish for Dirty Cabbage.

Vegan Dirty Cabbage (High Protein, One Pan, 30 Minutes)

Yield: 4
Prep Time: 5 minutes
Cook Time: 25 minutes
Total Time: 30 minutes

All the bold, smoky, deeply savory character of the viral dirty cabbage — built on lentils and chickpeas instead of beef and sausage. Shredded cabbage cooked down in a caramelized tomato, soy sauce, and smoked paprika base. One pan, 30 minutes, completely plant-based.

No Ratings

Ingredients

  • 1 × 14 oz bag shredded cabbage
  • 3 tablespoons olive oil
  • 1 medium onion, chopped
  • 4 cloves garlic, pressed
  • 1 × 15 oz can lentils, drained and rinsed
  • 1 × 15 oz can chickpeas, drained and rinsed
  • 5 oz tomato paste
  • 1 teaspoon chili flakes
  • 2 teaspoons smoked paprika
  • ½ teaspoon cayenne pepper
  • 1 medium green bell pepper, sliced
  • ½ cup vegetable broth
  • 2 tablespoons cider vinegar
  • 3 tablespoons soy sauce
  • Salt and pepper to taste

Instructions

  1. Heat the olive oil in a large skillet or wide pot over medium-high heat. Add the chopped onion and sliced green bell pepper and cook for 4–5 minutes, stirring occasionally, until softened and beginning to color. Add the pressed garlic and cook for 1 minute until fragrant.
  2. Add the tomato paste and cook for 2–3 minutes, pressing it against the hot pan and stirring continuously, until it darkens to a deep brick-red and smells caramelized and intensely savory. Do not rush this step.
  3. Add the smoked paprika, chili flakes, and cayenne pepper. Stir for 30 seconds to bloom the spices.
  4. Add the soy sauce and cider vinegar and stir to combine into a thick, dark, deeply seasoned paste. Add the drained lentils and drained chickpeas and stir to coat thoroughly.
  5. Add the shredded cabbage and pour in the vegetable broth. Stir everything together — the pan will look very full. Cover and cook for 8–10 minutes over medium heat, stirring every 2–3 minutes, until the cabbage has wilted and become tender and the sauce has absorbed through everything.
  6. Remove the lid and cook for a further 2 minutes to allow any excess liquid to evaporate and the flavors to concentrate. Taste and adjust seasoning. Serve immediately over rice, with bread, or straight from the pan.

Notes

  • Caramelize the tomato paste: This is the most important step. Cooking the paste in hot oil until it darkens and concentrates produces the deep, savory richness that makes this dish genuinely satisfying without any meat. Do not skip or rush it.
  • Bloom the spices: Stirring the smoked paprika and cayenne into the caramelized tomato paste for 30 seconds before adding liquid releases their full flavor. The same principle as toasting whole spices.
  • The cabbage will reduce significantly: A full bag of shredded cabbage looks like too much going into the pan. It will cook down to roughly half the volume and absorb the sauce throughout.
  • Soy sauce is not optional: It provides the primary umami depth of the dish. Coconut aminos is the best substitute if soy-free is needed.
  • Adjust the heat: The full cayenne and chili flake quantities produce a moderately spicy dish. Halve both for a milder result.
  • Better the next day: The lentils, chickpeas, and cabbage all absorb the sauce overnight. This is an excellent make-ahead dish.
  • Refrigerator: Stores for up to 5 days. Genuinely improves over the first two days.
  • Freezer: Freezes for up to 3 months. Texture softens slightly but flavor holds well.

Nutrition Information:
Yield: 4 Serving Size: 1 cup
Amount Per Serving: Calories: 295Total Fat: 13gSaturated Fat: 2gUnsaturated Fat: 11gSodium: 912mgCarbohydrates: 37gFiber: 11gSugar: 10gProtein: 16g

Did you make this recipe?

Please leave a comment on the blog or share a photo on Facebook

Leave a Reply

Your email address will not be published. Required fields are marked *