Heat olive oil in a skillet over medium heat. Add onions and garlic, cooking until softened, about 3 minutes.
Add ground beef to the skillet and cook until browned, breaking it apart with a spoon, about 5 minutes. Drain any excess fat.
Transfer the beef mixture to the crock-pot.
Add kidney beans, black beans, diced tomatoes with juice, tomato sauce, chili powder, cumin, smoked paprika, cayenne pepper, salt, and black pepper to the crock-pot.
Pour in beef broth and stir to combine all ingredients.
Cover and cook on low for 7-8 hours or on high for 3-4 hours, until the chili is thickened and flavors are melded.
Serve hot with your choice of toppings, such as shredded cheese, sour cream, or green onions.