Heat oven to 400°F and line a large baking sheet with parchment. Bring water, butter, and salt to a boil; add flour all at once and stir over low heat 1–2 minutes until a smooth ball forms.
Transfer to a bowl and cool about 5 minutes until warm. Beat in eggs one at a time until the dough is smooth, glossy, and falls in a thick ribbon.
Form 12 equal mounds, about a scant 1/4 cup each, spaced 3 inches apart. Bake at 400°F for 35–40 minutes until golden and firm, keeping the door closed for the first 25 minutes.
Slit each shell to release steam and cool on a rack about 30 minutes until fully cool.
Fill
Beat cold heavy cream with powdered sugar and vanilla until firm peaks form. Keep refrigerated until filling.
Cut off the top third of each puff, divide whipped cream evenly among 12 shells, and replace tops. Dust with extra powdered sugar if desired and serve.
Notes
Refrigerate filled puffs promptly and use within 1–2 days.
Store unfilled shells airtight for 1 day or freeze for up to 1 month.
Keep cream-filled puffs at room temperature for no more than 2 hours.