Brown the ground beef in a large pot over medium-high heat, breaking it apart as it cooks. Drain excess fat.
Add diced onion and cook for 3-4 minutes until softened.
Stir in minced garlic and cook for 1 minute until fragrant.
Add chili powder, cumin, and paprika. Stir well to coat the meat.
Add crushed tomatoes and kidney beans (with their liquid).
Bring to a boil, then reduce heat and simmer for 30-40 minutes, stirring occasionally.
Season with salt and pepper to taste.
Serve hot with your choice of toppings.