This is more of a veggie chili with beef in it, rather than the other way around. Mushrooms, bell pepper, sweet potato, and zucchini all add flavor, texture, and tons of nutrients. All that heartiness makes it easy to cut back on the beef for a healthier finished product.

You can easily customize this recipe to your liking, or the veggies you have on hand. Just be sure to maintain the two-stage cooking process. The first 30-minute cook time helps to develop the flavors and begins to tenderize the meat. Adding root vegetables in this stage would steal flavor from the chili base, which is why the sweet potatoes are added in stage 2 (when you’d also add carrots, parsnips, butternut squash, or the like). The second stage cooks round two of veggies, while continuing to tenderize the meat for a chili that has robust flavor with perfectly cooked veggies and tons of interesting textures.

Why no beans? The meat provides plenty of protein, and the variety of veggies add big textural contrast. Beans are great, and you can add your favorites if you can’t imagine chili without them. But I like this version loaded up with veggies instead, and it’s still great with all of your favorite chili toppings, especially avocado and cheddar cheese!

Hearty and Healthy Beef and Vegetable Chili

Serves 6

Note: Chili can be refrigerated for up to 1 week. It will get thicker as it sits, so add a little bit of broth or water as needed when reheating to adjust the consistency.


  • 2 tablespoons olive oil
  • 2 onions, chopped
  • 8 ounces cremini (or baby bella) mushrooms, sliced
  • 1 red bell pepper, stemmed, seeded, and chopped
  • 2 teaspoons Kosher salt, divided, plus extra to taste
  • 2 tablespoons tomato paste
  • 4 garlic cloves, minced
  • 2 tablespoons chili powder
  • 2 teaspoons ground cumin
  • 2 teaspoons dried oregano
  • 1 teaspoon ground black pepper, plus extra to taste
  • 1/2 teaspoon cinnamon
  • 1 pound ground beef
  • 1 (28-ounce) can diced tomatoes
  • 3 cups low-sodium chicken or beef broth
  • 1 large sweet potato (about 12 ounces), peeled and cut into 1/2-inch pieces
  • 1 large zucchini, cut into 1/2-inch pieces


1. Heat oil in Dutch oven over medium-high heat until shimmering. Add onions, mushrooms, bell pepper, and 1 teaspoon Kosher salt, and cook until vegetables have released all their liquid and it has evaporated, 8 to 10 minutes. Stir in tomato paste and garlic and cook until fragrant, about 1 minute. Stir in chili powder, cumin, oregano, remaining 1 teaspoon Kosher salt, pepper, and cinnamon, and cook until fragrant, about 1 minute.
2. Add the meat, and cook, breaking meat into bite-sized pieces with a spatula, until no longer pink, 3 to 5 minutes. Stir in diced tomatoes and broth, and bring to simmer. Reduce heat to low, cover and simmer, stirring occasionally, for 30 minutes.
3. Stir in sweet potato and zucchini and continue to simmer, stirring occasionally until sweet potatoes are fully cooked, 30 to 45 minutes. Season with salt and pepper to taste. Serve with avocado, shredded cheddar cheese, a dollop of Greek yogurt, or any of your other favorite chili toppings.