Prepare the butternut squash: Peel, seed, and cube the butternut squash into half-inch pieces.
Heat the olive oil in a large pot or Dutch oven over medium heat. Add the chopped onion and bell pepper. Cook until softened, about 5 to 7 minutes.
Add the minced garlic, chili powder, cumin, smoked paprika, oregano, and cayenne pepper (if using). Cook for 1 minute, stirring constantly until fragrant.
Add the cubed butternut squash, diced tomatoes (with juice), tomato sauce, vegetable broth, salt, and pepper to the pot. Stir everything together.
Bring the mixture to a boil, then reduce the heat to low, cover, and simmer for 15 to 20 minutes, or until the butternut squash is tender when pierced with a fork.
Stir in the rinsed and drained black beans and white beans. Cook for another 5 minutes to heat the beans through.
Taste the chili and adjust salt, pepper, or spices as needed. If you prefer a thicker chili, you can mash some of the squash against the side of the pot.
Serve the butternut squash chili hot with your favorite toppings.
Notes
For a smoky chipotle flavor, substitute 1 teaspoon of the chili powder with 1 teaspoon of chipotle powder.
If you want a richer flavor, roast the cubed butternut squash at 400°F for 20 minutes before adding it to the chili.
This recipe freezes well. Cool completely before storing in airtight containers.
For a vegan version, skip any dairy toppings like cheese or sour cream.