Mix the rub. In a small bowl, combine salt, pepper, smoked paprika, garlic powder, onion powder, cumin, brown sugar, and chili powder if using. Stir well to break up any clumps.
Prep the pork. Pat the pork shoulder dry with paper towels. Trim only thick, hard caps of fat, but leave a decent layer for moisture and flavor.
Season generously. Rub the spice mixture all over the pork, pressing it in so it adheres.
Get into any creases or seams.
Layer the aromatics. Add the sliced onion and smashed garlic to the bottom of the slow cooker. This keeps the pork elevated and infuses flavor.
Add liquids. Pour in the broth, apple cider vinegar, and Worcestershire sauce around the pork, not over the top, so you don’t wash off the rub.
Cook low and slow. Cover and cook on LOW for 8–10 hours or on HIGH for 5–6 hours, until the pork easily shreds with little resistance. Low gives the best texture.
Shred the meat. Transfer the pork to a large bowl.
Remove any bones and excess fat. Shred with two forks into bite-size pieces.
Skim and moisten. Skim fat from the cooking juices. Return the shredded pork to the slow cooker, add some of the juices to moisten, and toss.
For saucy pork, stir in 1/2–1 cup barbecue sauce and let it warm for 10–15 minutes.
Taste and adjust. Add a pinch of salt or a splash of vinegar if it needs brightness. If it’s too tangy, balance with a little brown sugar or barbecue sauce.
Serve. Pile onto toasted buns with coleslaw, spoon into tacos with lime and cilantro, or serve over rice with your favorite sides.