Soft, steamed Filipino rice cakes topped with sweet caramelized onions and a touch of cheese.
Puto is the Philippines' classic steamed rice cake -- light, slightly sweet, and pillowy-soft, traditionally made from fermented or instant rice flour batter steamed in small molds until they puff up and split slightly on top, a sign they're properly cooked. This savory-sweet variation tops the finished cakes with deeply caramelized onions, a modern twist on the more common cheese or salted egg toppings. The technique for good puto is in the batter and steaming: it needs enough leavening (baking powder, or traditional fermentation) to puff properly, and the steamer must stay at a strong, consistent boil throughout so the cakes cook through evenly without turning dense or gummy. Overfilling the molds or opening the steamer lid too often are the most common reasons home versions come out flat. Puto is served as a snack or alongside savory dishes like dinuguan, where its mild sweetness balances rich, spiced mains. This onion-topped version works equally well as a savory-leaning teatime snack.
Serves 2
Melt butter in a pan over medium-low heat, add onion and sugar, cook 18-20 minutes, stirring occasionally, until deeply golden and jammy. Set aside.
Whisk rice flour, sugar, baking powder, and salt in a bowl. Add coconut milk, water, and egg, whisking until smooth with no lumps.
Let the batter rest 15 minutes.
Bring water to a strong boil in a steamer. Grease small puto molds or muffin tins.
Fill molds two-thirds full with batter, then top each with a spoonful of caramelized onion and a pinch of cheese if using.
Steam covered over high heat 15-18 minutes until a toothpick comes out clean and the tops have split slightly. Let cool 5 minutes before unmolding.
Keep the steamer at a strong, rolling boil the entire time -- a weak simmer results in dense, undercooked cakes.
Don't overfill the molds; two-thirds full leaves room for the batter to rise properly.
Rest the batter briefly before steaming to let the baking powder activate more evenly.
Top with grated cheese and a slice of salted egg for the traditional savory-sweet combination.
Use ube extract in the batter for a purple-hued version.
Skip the onion topping for classic plain puto, served alongside dinuguan or pancit.
Store cooled puto in an airtight container at room temperature for 1 day or refrigerate for up to 4 days. Reheat by re-steaming for a few minutes to restore softness.
Puto has roots in Chinese steamed rice cake traditions, adapted over centuries into a distinctly Filipino snack food using local rice flour, coconut milk, and often topped with cheese or salted egg.
Yes, small silicone muffin cups or heatproof ramekins work fine as substitutes for traditional puto molds.
The steamer likely wasn't hot enough, or the lid was opened too often during steaming, letting heat escape.
It's best steamed within an hour of mixing, since the baking powder loses effectiveness the longer it sits.
Per serving (245g / 8.6 oz) · 2 servings total
Ask our AI cooking assistant anything about this recipe — substitutions, techniques, scaling.
Chat with AI Chef →Join the conversation
Sign in to leave a comment and save your favourite recipes
Have feedback or need help?
We read every email and reply within 1–2 business days.
© 2026 MyCookingCalendar. All rights reserved.