Preheat the oven to 350°F (175°C). Line a baking sheet with parchment paper.
Combine the butter, water, and salt in a medium saucepan. Bring to a boil over medium heat.
Reduce the heat to low and add the flour all at once. Stir vigorously with a wooden spoon until the mixture forms a smooth ball and pulls away from the sides of the pan.
Continue cooking and stirring for 1–2 minutes to remove some of the excess moisture.
Remove from the heat and let the dough cool for about 5–10 minutes.
Add the eggs one at a time, mixing thoroughly after each addition. The finished dough should be smooth, glossy, and thick enough to hold its shape.
Drop tablespoon-sized portions onto the prepared baking sheet, leaving about 2 inches between each.
Bake for 25–30 minutes, or until puffed and deeply golden. Avoid opening the oven during the first 20 minutes.
Transfer to a wire rack. Pierce each puff with the tip of a small knife to allow steam to escape, then cool completely before filling.