My homemade Spanish bread is so soft, pillowy, and incredibly flavorful. The dough is enriched with eggs, butter, and oil, and the filling contains a secret ingredient: malted milk powder! And in case you have any leftover bread, it reheats beautifully in the microwave. Once you try my recipe, you’ll want to make it again and again.
Looking for more roll recipes? Try my delicious milo rolls!

✉️ want to save this?
❤️ Why You’ll Love This Recipe
- The rolls are so soft and pillowy! After over 8 rounds of recipe testing, my Spanish bread is the perfect texture. It’s like eating a soft, slightly chewy cloud.
- It’s flavorful and not-too-sweet. For extra oomph, I added a secret ingredient to the filling: malted milk powder! And since I come from a not-too-sweet household, the rolls have the perfect amount of sugar.. meaning it’s easy to eat 2-3 rolls at a time, LOL.
Looking for more Filipino desserts? Try my ube coconut rolls.
💡 Baking Tip
- Weigh your ingredients! One of my favorite kitchen tools is a kitchen scale because it’s more accurate than measuring by volume. If you use cups, spoon the flour in gently, then level it with a knife or spatula.
How to Make Soft Spanish Bread

Step 1: In a bowl, whisk together warmed milk, yeast, and sugar. Let sit for 5-10 minutes, or until mixture is foamy.

Step 2: In a stand mixer fitted with hook attachment, mix yeast mixture, flour, eggs, and oil until a dough forms. Add a tablespoon of softened butter every 30 seconds, then mix for about 8 minutes, or until dough passes the windowpane test: take a small piece of dough and gently stretch it. If it is kneaded enough, it should be translucent and you can see light passing through.

Step 3: Lightly cover dough and let rise in warm place until doubled in size, about 1-2 hours (or overnight in the fridge!). Mix all of the Spanish bread filling ingredients in a bowl until combined.

Step 4: Divide dough into 20 pieces, shaping each one into a smooth ball.

Step 5: Roll each ball into a long triangle, then spread on about 1 tablespoon of sweet filling. Roll into a log, then coat in breadcrumbs. Transfer to baking pan.

Step 6: Lightly cover and let rise in warm place until doubled in size, about 30 minutes. Bake at 350°F/177°C for 25-35 minutes, or until very lightly golden. Serve and enjoy them warm!
For full instructions, see the recipe card below.
🇵🇭 More Roll Recipes

Did you try this recipe?
Please leave a review & share it with me on Instagram, Facebook, Tiktok, or Pinterest!
Thank you so much! -Bianca ❤️
📖 Recipe & Video
Spanish Bread
✉️ want to save this?
Equipment
- Stand mixer hook attachment
- large bowl for proofing dough
- medium bowl for filling
- plastic wrap or kitchen towel
- plate for breadcrumbs
Ingredients
Spanish Bread Dough:
- 1 ⅛ cup (270 g) whole milk warmed
- 6 tablespoons (72 g) granulated sugar
- 2 ¼ teaspoons (7 g) active dry yeast
- 2 (100 g) large eggs
- 3 tablespoons (42 g) neutral oil (vegetable, canola, avocado)
- 4 ½ cups (562 g) all-purpose flour
- 1 ¼ teaspoons (7.5 g) fine sea salt
- 3 tablespoons (42 g) unsalted butter softened
Sweet Filling:
- 6 tablespoons (84 g) unsalted butter melted
- ½ cup (110 g) brown sugar packed; light or dark
- 1 cup (108 g) fine breadcrumbs
- 2 tablespoons (12 g) malted milk powder
- 1-4 tablespoons (15 g) whole milk might not need! see filling steps
Topping:
- ½ cup (54 g) fine breadcrumbs
Instructions
Make the dough:
- In a stand mixer fitted with hook attachment, hand whisk 1 ⅛ cup (270 g) whole milk (warmed), 6 tablespoons (72 g) granulated sugar, and 2 ¼ teaspoons (7 g) active dry yeast until combined. Let sit for 5-10 minutes, or until yeast is activated and mixture is frothy.
- Add 2 (100 g) large eggs, 3 tablespoons (42 g) neutral oil, 4 ½ cups (562 g) all-purpose flour, 1 ¼ teaspoons (7.5 g) fine sea salt. Mix on medium low speed until dough forms.
- While mixing on medium low speed, add 3 tablespoons (42 g) unsalted butter a tablespoon at a time, every 30 seconds. Continue mixing for 8-10 minutes, or until dough passes the windowpane test. The dough will be a little sticky, but it's okay—it will get better after resting. To do the windowpane test, take a small piece of dough and gently stretch it. If it is kneaded enough, it should be translucent enough to see light passing through.
- Transfer dough to a large bowl, lightly cover with plastic wrap, and let rise in warm place until doubled in size, about 1-2 hours (or overnight in the fridge!).
Make the filling:
- In a medium bowl, mix together 6 tablespoons (84 g) unsalted butter (melted), ½ cup (110 g) brown sugar, 1 cup (108 g) fine breadcrumbs, and 2 tablespoons (12 g) malted milk powder. You are looking for an easily spreadable, thick, paste consistency. If it's too dry, mix in 1-4 tablespoons (15 g) whole milk until you get the desired texture. The amount of milk will vary depending on the brand of breadcrumbs you are using.
Assemble:
- Line two baking sheets with parchment paper. On a medium plate, add ½ cup (54 g) fine breadcrumbs. This will be for coating the rolls later on.
- Lightly flour work surface. Divide dough into 20 equal pieces, about 55g each. Roll each piece into balls (see video for reference).
- For each ball, use rolling pin to shape it into a long triangle (like a slice of pizza), about 6 inches tall and 4 inches wide at the base. Keep the point tapered and the edges fairly even so it rolls up neatly.
- Spread about 1 tablespoon sweet filling, leaving a ½-inch border. Roll the dough from the wider end toward the top of the triangle
- Generously coat in breadcrumbs. Place on lined baking sheet. Repeat with the rest of the balls, spacing shaped Spanish bread about 2-3 inches apart.
- Lightly cover trays with plastic wrap and let rest for about 30 minutes, or until the dough slowly springs back when gently poked. In the last few minutes of rising, preheat oven to 350°F/177°C.
- Bake for 20-30 minutes, until lightly golden. Do not let them go past this and get too dark—they will become dry!
- Let cool on pan for about 5 minutes, and enjoy! Serve warm. If eating leftovers, microwave for 10-20 seconds until hot.
Notes
- Short-term storage: Store cooled Spanish bread in an airtight container at room temperature for up to 3 days. Reheat in the microwave for 10-20 seconds until warm.
- Freezing instructions: Store cooled Spanish bread in an airtight container in the freezer for up to 3 months. Let thaw and then reheat in the microwave.









