In a skillet over medium-high heat, cook the chopped onion for 5-7 minutes until translucent, or about 20 minutes if caramelized onions are preferred. Add garlic and cook for a minute or less, until fragrant.
Add ground beef and cook 8-10 minutes, breaking it apart with a spatula, until browned.
Transfer the beef mixture to a slow cooker. Add remaining ingredients except bay leaf and stir to combine. Place bay leaf in the middle, if using.
Cook 6-8 hours on Low or 3-4 hours on High. Remove bay leaf before serving.