Place the chicken in a large bowl or container. Add buttermilk, hot sauce, salt, pepper, paprika, and garlic powder; turn to coat. Cover and refrigerate at least 4 hours.
Whisk together flour, baking powder, paprika, garlic powder, onion powder, black pepper, salt, and cayenne pepper in a shallow bowl.
Remove each piece of chicken from the marinade and let excess liquid drip off.
Press each piece firmly into the seasoned flour until fully coated. Place on a wire rack.
Heat oil in a heavy pot or Dutch oven (filled no more than halfway) to 350°F (175°C).
Fry chicken in batches, adjusting heat to keep the oil around 325°F (165°C).
Turn pieces as needed until deeply golden and the thickest part reaches 165°F (74°C).
Transfer cooked chicken to a wire rack to drain. Let oil return to 350°F (175°C) before the next batch.
Serve warm.