I grew up watching my grandmother shape these golden little pillows with so much love, stuffing each one with a sweet or savory surprise. Piroshki were more than just food—they were comfort wrapped in a crisp, fluffy dough. The scent of them baking still instantly takes me back to her cozy kitchen, where warmth didn’t just come from the oven. Recreating this recipe today brings all of that back, and I’ve carefully tested and refined it to bring you the very best version.

These piroshki are the real deal—perfectly fluffy inside, with a light golden crust that gives way to a warmly spiced filling. While you can fill them with anything from mashed potatoes to meat or jam, this recipe focuses on a gently sweetened caramelized onion and beef mixture that turns each bite into something utterly memorable. Whether you’re making them for a gathering or enjoying them fresh out of the oven on a quiet afternoon, these piroshki are bound to become a favorite in your kitchen too.
Why You’ll Love This Piroshki Recipe
Piroshki are wonderfully versatile. You can bake or fry them, fill them with sweet or savory ingredients, and make them ahead for quick snacks or meals. This version is baked, which gives a golden, tender crust without the extra oil. The dough is soft, slightly enriched with milk and butter, and the filling is balanced and flavorful—sweet onions, juicy beef, and just the right spices.
Whether you’re new to piroshki or a longtime fan, this recipe will give you that perfect, bakery-style result at home.
What Kind of Dough Should I Use for Piroshki?
For truly authentic piroshki, a yeast-based dough is essential. I use a soft, enriched dough made with milk, butter, eggs, and a bit of sugar. This gives the piroshki their signature fluffiness and slightly sweet taste, which pairs beautifully with the savory filling. It rises beautifully and bakes into a golden crust that’s tender inside but strong enough to hold the juicy filling without leaking or tearing.
If you’re pressed for time or nervous about working with yeast, you can use a store-bought pizza dough as a shortcut. It won’t be exactly the same, but it still makes a decent alternative in a pinch. Just be sure to let it come to room temperature so it’s easier to shape.
Options for Substitutions
Piroshki are highly customizable, so you can absolutely tailor them to what you have on hand or your dietary preferences:
- Filling: Swap the beef and onion for mashed potatoes and cheese, sautéed mushrooms, or even cabbage. Sweet options like fruit preserves or sweetened cottage cheese also work beautifully.
- Meat: Ground turkey, chicken, or pork can be used in place of beef.
- Dough: While the homemade dough is ideal, you can substitute it with pizza dough or even a brioche dough if you like a slightly richer flavor.
- Dairy-Free: Use plant-based milk and vegan butter to keep the dough soft without dairy.
- Egg-Free: The egg helps enrich the dough, but it can be left out. The texture may be slightly different, but still delicious.
These substitutions make it easy to adapt this recipe to your pantry or preferences without compromising that signature piroshki experience.
Ingredients for This Piroshki Recipe
All-Purpose Flour
This is the backbone of the dough, giving it structure while still keeping it soft and tender.
Whole Milk
Warm milk activates the yeast and enriches the dough, making it extra soft and flavorful.
Active Dry Yeast
Yeast gives the piroshki their rise and pillowy texture. Make sure it’s fresh for the best results.
Granulated Sugar
A touch of sugar feeds the yeast and adds a subtle sweetness to balance the savory filling.
Salt
It enhances the flavor of both the dough and the filling—don’t skip it!
Unsalted Butter
Melted into the dough, it adds richness and keeps everything moist and soft.
Eggs
Eggs enrich the dough, give it color, and help with binding.
Ground Beef
Used in the filling, it provides a juicy, savory base that pairs perfectly with the soft dough.
Yellow Onion
Caramelized with the beef, it adds a natural sweetness and deep, savory flavor.
Black Pepper
Simple seasoning that brings warmth and depth to the filling.
Oil (for cooking)
Used to sauté the onion and beef until everything is beautifully golden and flavorful.
Egg Yolk + Milk (for egg wash)
This gives the baked piroshki that glossy, golden-brown finish.

Step 1: Make the Dough
In a large mixing bowl, combine warm milk, sugar, and yeast. Let it sit for 5–10 minutes until frothy. Then add melted butter, eggs, and salt. Gradually mix in the flour, one cup at a time, until a soft dough forms. Knead it for about 8–10 minutes until smooth and elastic. Cover and let it rise in a warm place for 1 hour or until doubled in size.
Step 2: Prepare the Filling
While the dough rises, heat oil in a skillet over medium heat. Add finely chopped onions and cook until golden and soft. Add the ground beef, breaking it up with a spatula. Cook until browned and no longer pink. Season with salt and black pepper. Let the filling cool completely before using.
Step 3: Shape the Piroshki
Punch down the risen dough and divide it into equal portions (about the size of a golf ball). Flatten each piece into a circle and spoon a heaping tablespoon of filling into the center. Fold the dough over and pinch the edges firmly to seal. Place seam side down on a baking sheet lined with parchment paper.
Step 4: Second Rise
Cover the shaped piroshki with a kitchen towel and let them rise again for 20–30 minutes. This helps them puff up nicely in the oven.
Step 5: Bake
Preheat your oven to 375°F (190°C). Brush each piroshki with the egg yolk and milk mixture for a golden crust. Bake for 20–25 minutes or until they’re beautifully golden brown on top.
How Long to Cook the Piroshki
Once your piroshki are shaped and proofed, they’ll need about 20 to 25 minutes in a 375°F (190°C) oven. Keep an eye on them during the last few minutes—they should turn a deep golden brown and sound slightly hollow when tapped. If you’re baking multiple trays, rotate them halfway through to ensure even browning.
Tips for Perfect Piroshki
- Don’t rush the dough rise: Give the yeast time to work for the softest texture. A warm, draft-free spot is ideal.
- Cool the filling completely: A hot filling will steam the dough and can cause leaks or soggy centers.
- Seal tightly: Press and pinch the edges firmly so they don’t open during baking.
- Egg wash generously: For that golden sheen, don’t be shy with the egg wash.
- Use parchment paper: It prevents sticking and makes cleanup easier.
- Even sizes: Try to keep the dough portions uniform so they bake evenly.
These small techniques make a big difference when it comes to turning out bakery-worthy piroshki right from your own oven.
Watch Out for These Mistakes While Cooking
- Skipping the second rise: That extra 20–30 minutes helps achieve the light, fluffy texture. Don’t cut corners here.
- Using hot filling: Warm or hot filling can interfere with the dough and cause leaks or uneven baking.
- Underseasoning the filling: Taste your filling before using it—bland filling means bland piroshki.
- Overfilling: Too much filling will make sealing difficult and can cause the dough to tear during baking.
- Not preheating the oven: Always start with a hot oven to get a great rise and golden crust.
- Improper sealing: If the dough isn’t pinched tightly, the piroshki may burst open in the oven.
- Overbaking: This will dry them out. Watch closely during the final minutes.
What to Serve With Piroshki?
Sour Cream with Fresh Herbs
A dollop of sour cream mixed with dill or chives adds a cool, creamy contrast.
Borscht (Beet Soup)
A classic pairing—its earthy sweetness complements the savory piroshki beautifully.
Simple Cucumber Salad
Light and refreshing, with vinegar and dill to cleanse the palate.
Pickled Vegetables
Crunchy and tangy, they balance the richness of the pastry.
Tomato and Onion Salad
Juicy and sharp, this salad adds brightness and freshness.
Hot Tea or Kvass
Traditional Eastern European drinks that round out the meal nicely.
Roasted Beets or Carrots
A warm vegetable side that feels hearty but doesn’t compete with the piroshki.
Spiced Applesauce
If you’re serving sweet piroshki, this makes a cozy, cinnamon-kissed partner.
Storage Instructions
Piroshki store incredibly well, which makes them ideal for meal prepping or saving leftovers. Once cooled, store them in an airtight container:
- At room temperature: Up to 2 days. Reheat in the oven for 5–10 minutes to restore crispness.
- In the refrigerator: Up to 5 days. Warm in the oven or microwave before serving.
- In the freezer: Up to 3 months. Freeze them in a single layer on a baking sheet first, then transfer to a sealed bag or container. Reheat from frozen at 350°F (175°C) for about 15–20 minutes.
For best texture, avoid microwaving too long, as it can make the dough rubbery.
Estimated Nutrition (Per Piroshki – Savory Beef & Onion Version)
- Calories: 260
- Total Fat: 11g
- Saturated Fat: 5g
- Unsaturated Fat: 4g
- Cholesterol: 45mg
- Sodium: 290mg
- Carbohydrates: 28g
- Fiber: 1g
- Sugar: 3g
- Protein: 12g
These are estimates and will vary depending on the exact filling and dough thickness. If you’re using alternate fillings or making mini versions, the values will shift slightly.
Frequently Asked Questions
Can I fry the piroshki instead of baking them?
Yes! Piroshki can be deep-fried until golden brown if you prefer a crispier texture. Just make sure the oil is at 350°F (175°C) and fry in batches.
Can I make the dough ahead of time?
Absolutely. You can prepare the dough and refrigerate it overnight. Let it come to room temperature before shaping and baking.
What other fillings can I try?
Try mashed potatoes with sautéed onions, cabbage, mushrooms, or even fruit preserves for a sweet version.
Why is my dough too sticky or dry?
If it’s sticky, add a little flour. If too dry, add a tablespoon of milk at a time. Humidity can affect dough texture, so adjust as needed.
Can I use instant yeast instead of active dry yeast?
Yes. Instant yeast doesn’t need proofing, so you can mix it directly into the flour. Reduce rise time slightly if using it.
How do I keep them from opening during baking?
Make sure to seal the edges tightly and place them seam side down. Letting them rest for the second rise also helps.
Can I reheat them in the microwave?
Yes, but they’re best reheated in the oven or air fryer to restore their texture. Microwaving can make them chewy.
Are these good for school lunches or snacks?
They’re perfect! They hold up well at room temp and make a satisfying handheld meal or snack.
Conclusion
Piroshki are one of those foods that feel like a warm hug from the inside out. Whether you’re making them to relive a memory, explore new cuisines, or simply try something different, this recipe delivers both comfort and flavor. The golden crust, savory filling, and cozy aroma make them impossible to resist. I hope this recipe becomes a favorite in your kitchen—something you come back to again and again, just like I do.
Now that you’ve got everything you need, it’s time to roll up your sleeves and bake up a batch of these delicious homemade piroshki.

The Best Piroshki Recipe Ever
- Total Time: 1 hour 45 minutes
- Yield: 18 piroshki 1x
Description
Fluffy, golden-brown piroshki filled with a savory beef and onion mixture—perfect for snacks, meals, or make-ahead comfort food. This classic Eastern European pastry is baked for a lighter finish but just as flavorful as the fried version.
Ingredients
4 cups all-purpose flour
1 cup whole milk
2 1/4 teaspoons active dry yeast
2 tablespoons granulated sugar
1 teaspoon salt
1/4 cup unsalted butter, melted
2 large eggs
1 pound ground beef
1 large yellow onion, finely chopped
1/2 teaspoon black pepper
1 tablespoon oil for cooking
1 egg yolk + 1 tablespoon milk for egg wash
Instructions
1. Warm the milk and mix it with sugar and yeast. Let sit until frothy.
2. Add melted butter, eggs, and salt. Mix in flour gradually to form a soft dough.
3. Knead the dough for 8–10 minutes until smooth. Cover and let rise for 1 hour.
4. Meanwhile, sauté onions in oil until golden. Add beef and cook until browned. Season and cool.
5. Punch down dough, divide into pieces, flatten each, and fill with cooled meat mixture.
6. Seal edges tightly and place seam side down on a parchment-lined tray.
7. Let rise again for 20–30 minutes.
8. Brush with egg wash. Bake at 375°F (190°C) for 20–25 minutes until golden.
Notes
Storage: Keep at room temperature for 2 days, refrigerated for 5, or frozen for up to 3 months. Reheat in oven for best texture.
Nutrition (per piece): 260 calories, 11g fat, 5g saturated fat, 4g unsaturated fat, 0g trans fat, 45mg cholesterol, 290mg sodium, 28g carbohydrates, 1g fiber, 3g sugar, 12g protein.
- Prep Time: 20 minutes
- Cook Time: 25 minutes
- Category: Snacks
- Method: Baking
- Cuisine: Eastern European
Nutrition
- Serving Size: 1 piroshki
- Calories: 260
- Sugar: 3g
- Sodium: 290mg
- Fat: 11g
- Saturated Fat: 5g
- Unsaturated Fat: 4g
- Trans Fat: 0g
- Carbohydrates: 28g
- Fiber: 1g
- Protein: 12g
- Cholesterol: 45mg
Keywords: piroshki, beef pastries, savory bake