Measure out all dry spices into a small bowl: chili powder, allspice, cumin, cinnamon, garlic powder, crushed red pepper, and cocoa powder. Whisk them together so they're evenly distributed—this ensures the spices blend smoothly into the meat rather than clumping. Dice the medium yellow onion into 1/4-inch pieces and set aside. Finely dice the white onion for garnish and reserve separately. This prep work allows you to focus entirely on building the chili without interruption once cooking begins.
Heat a large heavy-bottomed pot over medium-high heat. Add the ground beef (don't break it up yet) and let it sit undisturbed for 2-3 minutes to develop a brown crust. Stir and break the meat into small pieces, browning it thoroughly for another 4-5 minutes until most of the pink is gone. This browning develops deep savory flavors that are essential to Cincinnati chili. Pour in the water and use a spoon to scrape up any browned bits stuck to the bottom of the pot—these are pure flavor. Add the diced yellow onion and stir well.
Pour the spice mixture from Step 1 into the pot with the beef and water, stirring constantly for about 1 minute to bloom the spices in the hot liquid—this releases their essential oils and distributes them evenly throughout the chili. Add the tomato sauce, Worcestershire sauce, cider vinegar, salt, and bay leaves. Stir everything together thoroughly to combine. I prefer to add the acid and Worcestershire at this stage because they help the spices integrate better and balance the richness of the meat.
Bring the pot to a gentle simmer over medium heat, then immediately reduce to low heat. The chili should barely bubble—just a few gentle bubbles breaking the surface every few seconds. Simmer uncovered for 3 hours, stirring occasionally every 30 minutes or so. The long, slow cooking allows the spices to fully meld, the flavors to deepen, and the chili to develop that signature Cincinnati complexity. If using chili beans (traditional for heartiness), add them during the last 15 minutes of cooking so they warm through without falling apart. Remove the bay leaves before serving.
About 20 minutes before the chili finishes, bring a large pot of salted water to a boil and cook the spaghetti according to package directions until al dente. Drain well and divide among serving bowls. Ladle the finished chili over the pasta. I like to add the cheese and garnish immediately so it melts slightly into the hot chili. Top each bowl with shredded cheddar cheese and finely diced white onion. This is the classic Cincinnati three-way presentation (pasta, chili, cheese), and you can add more toppings like beans or more onion if desired.