In a large bowl, whisk together the buttermilk, hot sauce, garlic powder, onion powder, paprika, salt, and black pepper.
Add the chicken pieces, ensuring they are fully submerged. Cover and refrigerate for at least 4 hours, or overnight for best results.
In a separate bowl, combine the flour, baking powder, and cayenne pepper (if using).
Remove the chicken from the buttermilk marinade, allowing excess to drip off.
Dredge each piece in the flour mixture, pressing lightly to ensure an even coating.
In a large, heavy-bottomed pot or deep fryer, heat about 2 inches of vegetable oil to 350°F.
Carefully add the chicken pieces in batches, being careful not to overcrowd the pot.
Fry for 12-15 minutes, turning occasionally, until the chicken is golden brown and cooked through (internal temperature should reach 165°F).
Remove the chicken from the oil and place it on a wire rack or paper towels to drain excess oil.
Let it rest for 5 minutes before serving.