Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 tbsp neutral oil
- 2 lb (900 g) 85% lean ground beef
- 1 large yellow onion, diced
- 1 red bell pepper, diced
- 1 jalapeño, seeded and minced (optional)
- 4 cloves garlic, minced
- 3 tbsp chili powder
- 2 tsp ground cumin
- 1 tsp smoked paprika
- 1 tsp dried oregano
- 1/4 tsp cayenne (optional)
- 2 tbsp tomato paste
- 1 (28 oz) can fire-roasted diced tomatoes
- 1 cup low-sodium beef broth
- 1.5 tsp kosher salt, divided; 3/4 tsp black pepper, divided
- 1 tsp brown sugar (optional)
- 1 tsp unsweetened cocoa powder (optional)
- 1 tsp Worcestershire sauce
- 1 bay leaf (optional)
- 2 (15 oz) cans beans (kidney and pinto), drained and rinsed
- For serving: 1.5 cups shredded sharp cheddar, 1 cup sour cream, 4 scallions (sliced), tortilla chips
Do This
- 1. Prep: Dice onion and pepper; mince garlic and jalapeño; rinse and drain beans.
- 2. Brown beef in 1 tbsp oil over medium-high, 6–8 minutes; season with 1 tsp salt and 1/2 tsp pepper. Drain, leaving about 2 tbsp fat.
- 3. Add onion and bell pepper; cook 5 minutes. Stir in jalapeño, then garlic for 30–60 seconds.
- 4. Add chili powder, cumin, paprika, oregano, and cayenne; toast 30 seconds. Stir in tomato paste; cook 1–2 minutes.
- 5. Add tomatoes, broth, Worcestershire, brown sugar, cocoa, bay leaf, and remaining salt and pepper. Boil, then simmer gently (190–200°F) 30–40 minutes, uncovered, stirring.
- 6. Stir in beans; simmer 10–15 minutes until thick. Remove bay leaf; adjust salt, add a splash of vinegar or lime if desired. Serve topped with cheddar, sour cream, scallions, and chips.
Why You’ll Love This Recipe
- Deep, cozy flavor from chili powder, cumin, and a quick spice bloom.
- Thick, hearty texture with tender beef and two kinds of beans.
- Flexible heat level—mild to spicy with simple tweaks.
- Perfect for game day or weeknights; even better as leftovers.
Grocery List
- Produce: Yellow onion, red bell pepper, jalapeño (optional), garlic, scallions, lime (optional)
- Dairy: Sharp cheddar cheese, sour cream
- Pantry: Ground beef, neutral oil, chili powder, ground cumin, smoked paprika, dried oregano, cayenne (optional), tomato paste, fire-roasted diced tomatoes (28 oz), low-sodium beef broth, kosher salt, black pepper, brown sugar (optional), unsweetened cocoa powder (optional), Worcestershire sauce, bay leaf (optional), canned kidney beans, canned pinto beans, tortilla chips
Full Ingredients
For the Chili
- 1 tbsp neutral oil (canola or vegetable)
- 2 lb (900 g) 85% lean ground beef
- 1 large yellow onion, diced (about 2 cups)
- 1 red bell pepper, diced (about 1 1/2 cups)
- 1 jalapeño, seeded and minced (optional, for heat)
- 4 cloves garlic, minced (about 1 1/2 tbsp)
- 3 tbsp chili powder (American-style blend)
- 2 tsp ground cumin
- 1 tsp smoked paprika
- 1 tsp dried oregano
- 1/4 tsp cayenne pepper (optional)
- 2 tbsp tomato paste
- 1 (28 oz/794 g) can fire-roasted diced tomatoes with juices
- 1 cup (240 ml) low-sodium beef broth
- 1 1/2 tsp kosher salt, divided, plus more to taste
- 3/4 tsp freshly ground black pepper, divided
- 1 tsp brown sugar (optional, to balance acidity)
- 1 tsp unsweetened cocoa powder (optional, for depth)
- 1 tsp Worcestershire sauce
- 1 bay leaf (optional)
- 2 (15 oz/425 g) cans beans, drained and rinsed (1 kidney, 1 pinto)
For Topping & Serving
- 1 1/2 cups shredded sharp cheddar cheese
- 1 cup sour cream
- 4 scallions, thinly sliced
- 4 cups tortilla chips or corn chips
- Lime wedges (optional)

Step-by-Step Instructions
Step 1: Prep the flavor base
Dice the onion and red bell pepper. Mince the garlic and jalapeño (if using). Open, drain, and rinse the beans. Measure out the spices so they’re ready to go. This keeps the cooking moving and prevents burning the aromatics.
Step 2: Brown the beef deeply
Heat a large Dutch oven or heavy pot over medium-high heat. Add 1 tbsp oil, then the ground beef. Season with 1 tsp kosher salt and 1/2 tsp black pepper. Cook, breaking the meat into small crumbles, until well browned and no longer pink, 6–8 minutes. If there’s more than 2 tbsp fat, spoon off the excess.
Step 3: Soften the aromatics
Add the diced onion and bell pepper to the pot. Cook, stirring occasionally, until softened and lightly golden, about 5 minutes. Stir in the jalapeño and cook 1 minute. Add the garlic and cook just until fragrant, 30–60 seconds; avoid browning the garlic.
Step 4: Bloom the spices and tomato paste
Sprinkle in the chili powder, cumin, smoked paprika, oregano, and cayenne. Stir constantly for 30 seconds to bloom the spices. Add the tomato paste and cook, stirring, 1–2 minutes until it turns brick red and coats the meat and vegetables.
Step 5: Deglaze and build body
Pour in the beef broth and scrape up any browned bits on the bottom of the pot. Add the fire-roasted tomatoes (with juices), brown sugar, cocoa powder, Worcestershire, bay leaf, and the remaining 1/2 tsp salt and 1/4 tsp pepper. Bring to a boil, then reduce to a gentle simmer (small, lazy bubbles; about 190–200°F/88–93°C). Simmer uncovered for 30–40 minutes, stirring every 5–10 minutes, until the chili has thickened and a spoon dragged across the bottom leaves a brief trail.
Step 6: Add beans and finish
Stir in the kidney and pinto beans. Continue to simmer 10–15 minutes until the beans are warmed through and the chili is thick and hearty. Remove the bay leaf. Taste and adjust seasoning with additional salt and pepper as needed. For brightness, add a squeeze of lime juice or 1–2 tsp apple cider vinegar, if you like.
Step 7: Serve with classic toppings
Ladle chili into warm bowls. Top each serving with shredded sharp cheddar and a dollop of sour cream, then shower with sliced scallions. Serve with plenty of tortilla chips for crunch and scooping.
Pro Tips
- Bloom spices in fat for a richer, rounder flavor—30–60 seconds is all it takes.
- Simmer uncovered to reduce and thicken. If it gets too thick, restore with a splash of broth or water.
- Layer your seasoning: salt the beef as it browns, then adjust at the end.
- For extra body, stir in 1–2 tbsp masa harina or fine cornmeal during the last 10 minutes.
- Rest the chili off heat for 5 minutes before serving; it thickens and the flavors settle.
Variations
- Smoky Chipotle: Add 1–2 minced chipotle peppers in adobo with the tomatoes and swap smoked paprika for regular paprika if preferred.
- Turkey & Bean: Substitute 2 lb ground turkey (93% lean). Add 1 tbsp oil before browning and reduce simmer by 5 minutes.
- Slow Cooker: Brown the beef and aromatics on the stovetop (Steps 2–4), transfer to a slow cooker with remaining ingredients except beans. Cook on Low 6–8 hours (or High 3–4 hours). Stir in beans for the final 30 minutes.
Storage & Make-Ahead
Refrigerate cooled chili in airtight containers up to 4 days; it tastes even better on day 2. Freeze up to 3 months; thaw overnight in the fridge. Reheat gently on the stovetop over medium-low, adding a splash of water or broth as needed. Store toppings separately and add fresh tortilla chips just before serving so they stay crisp.
Nutrition (per serving)
Approximate (with toppings and chips): 780 calories; 45 g fat; 44 g carbohydrates; 7–9 g fiber; 40 g protein; 1,200 mg sodium. Values will vary based on brands and toppings.

