To begin, set up a large steamer and bring the water to a steady simmer. Grease small puto moulds or heatproof cupcake moulds lightly with oil. Transition to mixing the dry ingredients.
In a large mixing bowl, sift together rice flour, sugar, baking powder, and salt. This aerates the mixture and prevents lumps. Move to preparing the wet mixture.
In a separate bowl, whisk coconut milk, water, and vanilla extract until combined. Use room temperature coconut milk for an even mixture. Transition to creating the batter.
Slowly pour the wet mixture into the dry ingredients, stirring gently with a whisk. Mix until smooth and lump free, but avoid overmixing as it can make the puto dense. Move to filling the moulds.
Pour the batter into the prepared moulds, filling each about two thirds full to allow for rising. Tap the moulds lightly on the counter to remove air bubbles. Prepare for topping.
Place a small piece of salted egg or cheese on top of each filled mould. Press lightly so it sits just above the batter. Transition to steaming.
Arrange the moulds carefully in the steamer, leaving space for steam circulation. Cover with a clean cloth under the lid to prevent condensation from dripping onto the batter. Steam over medium heat for 15–20 minutes until the cakes rise and a skewer comes out clean.
Once cooked, remove the puto from the steamer. Allow them to cool for 5 minutes before taking them out of the moulds. Move to the serving step.
Serve the puto warm or at room temperature. Traditionally enjoyed with hot drinks for breakfast or as an accompaniment to dishes like dinuguan. Presentation tip: Arrange on banana leaves for a touch of authenticity.