Bat boys are paid hourly, earning about $9 or $10 per hour on average. MLB bat boys do not have set hours that they work. They arrive at the ballpark a few hours before game time and are required to stay through the game as well as afterward.