Combine butter, water, milk, salt, and granulated sugar in a medium saucepan over medium heat, stirring until the butter has melted. Bring the mixture to a simmer and then reduce heat to low. Add all of the flour and stir until completely incorporated. The dough should be a thick ball. Press against bottom of sides of the pan for 1 minute to cook the flour and remove from heat.
Place ball of dough into a large mixing bowl and allow to cool before adding eggs.
With hand or stand mixer on low speed, slowly add the beaten eggs in 3 or 4 batches with 30 seconds between each. Pour in very slowly and observe the texture of the dough. At first it won't look like it's coming together, but will eventually become thick and glossy. Stop when you have a thick and pipeable texture. I like to save at least 1-2 tbsp of egg to use as the egg wash.
Preheat oven to 400 degrees F. Line two baking sheet with parchment and lightly brush each sheet with water. The water helps create extra humidity in the oven, which helps with puffing.
Fill your piping bag fitted with a 1/2 inch tip with the choux pastry dough. Pipe circles 1 inch in diameter. Space each circle 1 inch apart on the sheet.
Bake for 15 minutes and then, making sure not to open the oven door, reduce oven temperature to 350 degrees F and bake for 5 - 10 more minutes until golden brown. Remove from oven and transfer to a cooling rack. Cool completely.
Store choux puffs in an airtight container at room temperature until ready to assemble.