Heat olive oil in a large skillet over medium-high heat until shimmering. A heavy-bottomed pan works best here to prevent burning.
Add the ground beef and break it apart with a wooden spoon. Season with a good pinch of salt and pepper. Cook until most of the pink is gone but not completely browned, about 4-5 minutes.
Add the onion and green pepper to the skillet with the beef. Cook, stirring occasionally, until the vegetables soften and the beef is fully browned, about 3-4 minutes.
Toss in the minced garlic and cook for another 30 seconds until fragrant. Don't let it burn or you'll get a bitter taste!
Drain excess fat if there's a lot, but leave a little for flavor. Nobody likes a greasy sloppy joe, but a completely dry pan makes for less flavorful filling.
Reduce heat to medium-low and add the ketchup, tomato paste, brown sugar, Worcestershire sauce, yellow mustard, apple cider vinegar, chili powder, paprika, and cayenne pepper (if using). Stir to combine thoroughly with the meat mixture.
Pour in the water and stir again. This helps achieve the perfect consistency – not too thick, not too runny.
Bring to a simmer, then reduce heat to low. Cover and cook for 10 minutes, stirring occasionally to prevent sticking. The sauce should thicken slightly and the flavors will meld together beautifully.
Remove the lid and simmer for another 2-3 minutes if you want a thicker consistency. If it's getting too thick, add a splash more water.
Taste and adjust seasonings as needed. Want it sweeter? Add a bit more brown sugar. Need more tang? A splash more vinegar. Spicier? You know what to do.
While the filling simmers, lightly toast your buns for structural integrity. Trust me, this step matters – nobody wants a soggy-bottomed bun that disintegrates halfway through the first bite!
Scoop generous portions onto the bottom halves of the toasted buns, add any optional toppings, crown with the top buns, and serve immediately. Don't forget the napkins – they're called sloppy for a reason!