Ingredients:

  • 1 lb (450g) lean ground beef
  • 1 medium (150g) yellow onion, diced
  • 3 cloves (15g) garlic, minced
  • 2 tbsp (30ml) olive oil
  • 1 can (14.5 oz / 411g) fire-roasted diced tomatoes
  • 1 can (15 oz / 425g) kidney beans, drained and rinsed
  • 1 can (15 oz / 425g) black beans, drained and rinsed
  • 2 tbsp (32g) tomato paste
  • 1 cup (240ml) beef broth
  • 2 tbsp (16g) chili powder
  • 1 tsp (2g) ground cumin
  • 1 tsp (2g) smoked paprika
  • 1/2 tsp (3g) salt
  • 1/4 tsp (1g) black pepper
  • 1 tsp (2g) unsweetened cocoa powder

Instructions:

  1. Heat olive oil in a heavy-bottomed pot or Dutch oven over medium-high heat. Add the ground beef, breaking it apart with a spoon, and cook until deeply browned and sizzling.
  2. Stir in the diced onion and minced garlic, sautéing for 3–5 minutes until the onions are translucent and fragrant.
  3. Stir in the tomato paste, chili powder, cumin, smoked paprika, cocoa powder, salt, and black pepper. Toast the spices for 60 seconds to bloom the oils.
  4. Pour in the beef broth, scraping the bottom of the pot with a wooden spoon to release the browned beef bits (fond).
  5. Add the fire-roasted tomatoes (with juices) and both the kidney and black beans.
  6. Bring the mixture to a gentle boil, then reduce heat to low. Simmer uncovered for 20–25 minutes until the liquid has reduced and the sauce is thick and glossy.