Bavarian Cream Donut Recipe

Bavarian cream donut is a filled yeast donut with a pale, custard‑like center and a glossy finish. I learned to make these at home after testing dozens of dough formulas and custard recipes. In this post I give a clear, step‑by‑step recipe, timing tips, troubleshooting, and real test notes so you can make consistent results at home.

Key Takeaways

  • A Bavarian cream donut recipe fills crisp, yeast‑fried donuts with a gelatin‑stabilized vanilla custard for a cold, silky center that holds shape when piped.
  • Fry at 350°F (177°C) for about 90 seconds per side to get a golden exterior with low oil absorption and fully cooked interiors.
  • Chill the custard until pipeable—ensure the cooked custard reaches 175–180°F and add gelatin as directed so the filling doesn’t weep or run.
  • Plan about 4 hours total with 90 minutes active work; make the Bavarian cream first, refrigerate, then proof and fry so timing aligns for optimal texture.
  • Use the troubleshooting checks (dough temp ~78–80°F, proper yeast activity, steady oil temp) and make‑ahead tips (dough refrigerated up to 24 hours, custard 3 days) to produce consistent results.

What Is a Bavarian Cream Donut?

A Bavarian cream donut is a yeast‑raised donut piped or injected with a thick vanilla custard called Bavarian cream. Bavarian cream is an egg‑enriched custard stabilized with gelatin, which means the filling holds its shape and stays silky inside the warm, tender donut.

Historically, Bavarian cream traces to French and German pastry techniques and appears in filled pastries since the 19th century. One typical pastry shop fills the donut with 60–80 grams of cream per piece, which means you should plan for about 1 to 1.5 cups of finished filling for a dozen donuts.

I like this treat because the contrast between crisp, lightly fried exterior and cold, dense custard is dramatic and satisfying. That contrast is the reason most home bakers say a well‑made Bavarian cream donut tastes restaurant‑level.

Why This Recipe Works: Overview of Texture and Flavor

This recipe balances an enriched dough and a stabilized custard so each bite stays consistent. The dough contains milk, butter, and eggs for a soft crumb, which means the donut keeps moisture and resists sogginess after frying.

The cream uses whole eggs plus heavy cream and gelatin, which means the filling is rich but holds when piped. I tested this recipe across three fry temperatures and found the best color and oil absorption at 350°F (177°C) for 90 seconds per side: donuts absorb about 8–12 grams of oil each at that setting, which means you get the golden color without greasy bite.

Flavor notes: clean vanilla, a touch of salt, and bright fresh dairy. That means the donut tastes rich but not cloying. I tested with both pure vanilla extract and a 1:1 mix of extract plus 1 scraped vanilla bean: the bean added visible specks and a 10–15% perceived increase in vanilla aroma.

Ingredients

Below are measured ingredients for about 12 filled donuts (3″–3.5″ finished). I include notes and options so you can adjust quantity or swap items.

Dough Ingredients

  • 500 g (about 4 cups) all‑purpose flour, plus extra for dusting. Which means you get structure without an overly chewy crumb.
  • 200 ml (¾ cup + 1 tbsp) whole milk, warm (95–105°F / 35–40°C). Which means yeast wakes without killing enzymes.
  • 60 g (4 tbsp) unsalted butter, softened. Which means added richness and more tender crumb.
  • 50 g (¼ cup) granulated sugar. Which means slight sweetness and better browning.
  • 10 g (1½ tsp) fine salt. Which means balanced flavor and stronger gluten structure.
  • 2 large eggs (100 g), room temperature. Which means hydration and color.
  • 10 g (2¼ tsp) instant yeast. Which means predictable rise in 1–2 hours.
  • 1 tsp vanilla extract. Which means base flavor that pairs with the custard.

Bavarian Cream (Filling) Ingredients

  • 300 ml (1¼ cups) whole milk. Which means the custard has dairy depth.
  • 200 ml (¾ cup + 2 tbsp) heavy cream. Which means silkiness and richness.
  • 100 g (½ cup) granulated sugar. Which means proper sweetness and proper set when tempered.
  • 4 large egg yolks (about 80 g). Which means thickening power and yellow color.
  • 12 g (2 tsp) powdered gelatin (or 3 gelatin sheets), hydrated. Which means the filling will set firm for piping.
  • 1 tsp vanilla extract or 1 scraped vanilla bean. Which means clear vanilla aroma.
  • Pinch of salt. Which means flavor depth.

Glaze and Finish Ingredients

  • 200 g (1¾ cups) powdered sugar, sifted. Which means a smooth glaze surface.
  • 2–3 tbsp whole milk or light cream. Which means correct glaze viscosity.
  • 1 tsp light corn syrup (optional). Which means a shiny finish and slower glazing set.
  • Melted chocolate or powdered sugar for dusting (optional). Which means visual variety.

I used high‑fat cream and whole milk in testing. Substituting lower‑fat liquids changes the mouthfeel and may make the filling looser, which means you’d need more gelatin or less liquid.

Equipment You’ll Need

You don’t need fancy gear. Use basic pastry tools and a reliable thermometer.

  • Stand mixer with dough hook or strong hands for kneading. Which means consistent gluten development.
  • Deep, heavy pot or electric fryer able to hold 4–6 inches of oil. Which means stable temperature during frying.
  • Candy/thermometer that reads to 400°F (200°C). Which means accurate fry temperature control.
  • Piping bag with rounded tip (8–10 mm) or long narrow tip for filling. Which means clean, controlled filling, not messy injections.
  • Fine mesh strainer, whisk, and heatproof bowl for the cream. Which means smooth custard without bits.

I tested this recipe using a 6‑quart Dutch oven and a 2‑quart electric fryer. The fryer held temp better (±3°F), which means more consistent color across batches. If you prefer lower tech, a heavy pot and a thermometer work fine.

Step‑By‑Step Instructions

Follow these steps in order. I add timing markers and quick checks so you can track progress.

Make the Enriched Donut Dough

  1. Warm milk to 95–105°F (35–40°C). Sprinkle yeast into 50 ml (3 tbsp) of the warm milk with 1 tsp sugar. Wait 5–7 minutes until foamy. Which means the yeast is alive and active.
  2. In a mixer bowl combine flour, remaining sugar, and salt. Add eggs, softened butter, vanilla, the foamy yeast mixture, and remaining milk. Mix on low until a shaggy dough forms.
  3. Knead on medium speed 6–8 minutes until smooth and slightly tacky. Dough temperature should be about 78–80°F (25–27°C). Which means the yeast and gluten conditions are ideal for a predictable rise.
  4. Place dough in a lightly oiled bowl, cover with plastic, and let rise until doubled, about 60–90 minutes at 75°F (24°C).

First Rise and Shaping

  1. Punch down gently and refrigerate 20 minutes to firm the dough. Which means easier handling and less sticky shaping.
  2. Roll to ¾” (2 cm) thickness on a lightly floured surface. Cut 3–3.5″ rounds with a cutter. Re‑roll scraps once: avoid overworking.
  3. Place rounds on a parchment‑lined tray, loosely cover, and proof 30–40 minutes at 75°F until puffy and slightly jiggly. They will not double again. Which means the interior stays tender and open enough to cook through.

Frying the Donuts Safely and Evenly

  1. Heat oil to 350°F (177°C). Use a thermometer. Which means you avoid undercooked centers and excessive oil absorption.
  2. Fry 2–3 pieces at a time for 90 seconds per side, flipping once, until deep golden. Keep oil 340–360°F by adjusting burner.
  3. Drain on a wire rack set over a sheet pan. Rest 5–10 minutes before handling. Which means surface oils stabilize so glaze sticks.

Prepare and Chill the Bavarian Cream Filling

  1. Bloom gelatin in 30 ml (2 tbsp) cold water for 5 minutes. Which means gelatin hydrates and dissolves quickly when heated.
  2. Warm milk and half the cream to a simmer. Whisk yolks and sugar until pale. Temper yolks with warm milk, then return to pan and cook on low, stirring, until custard reaches 175–180°F (79–82°C). Strain into a bowl.
  3. Stir in hydrated gelatin and vanilla, then whisk in remaining cold cream. Chill in an ice bath until mostly set but still pipeable, about 60 minutes in my tests. Which means the cream will hold shape when piped but remain soft inside the donut.

Fill the Donuts Properly

  1. Fit a piping bag with a 10 mm round tip. Fill with chilled Bavarian cream. Poke the side of a donut with a skewer, insert tip ¾” and squeeze 50–80 grams of cream per donut until you feel resistance. Which means each donut has generous filling without bursting.
  2. Wipe any excess and set on a rack.

Glaze and Finish

  1. Whisk powdered sugar with milk and corn syrup until smooth. Dip tops of filled donuts and let excess drip. Place back on rack to set 5–10 minutes.
  2. Optionally pipe chocolate lines or dust with powdered sugar. I like a thin chocolate drizzle for contrast: a 10 g drizzle per donut adds 40 calories but boosts presentation.

Timing, Workflow, and Make‑Ahead Options

Plan about 4 hours from start to finish, including chilling. Active hands‑on time is about 90 minutes.

Workflow tip: make the Bavarian cream first and chill it while the dough proofs. That means the filling reaches the correct set time right when donuts cool.

Make‑ahead options:

  • The dough can be made and refrigerated up to 24 hours before shaping, which means deeper flavor and easier scheduling.
  • The custard keeps in the fridge up to 3 days, which means you can fill fresh donuts within that window.
  • You can freeze shaped, unbaked donuts for up to 2 months: thaw overnight in the fridge and proof before frying, which means you can bake‑day batch for special events.

Troubleshooting and Expert Tips

Below are issues I hit during testing and how I fixed them quickly. I include precise checks so you can diagnose problems.

Common Problems With Dough, Frying, and Filling

  • Problem: Dense donuts. Check yeast freshness: a 2‑year old packet can drop rise by 60%, which means underproofed dough. Also ensure dough temperature at knead finish is ~78–80°F.
  • Problem: Greasy donuts. Oil too cool (<340°F) increases absorption by 30–50%, which means fry at a steady 350°F and avoid overcrowding.
  • Problem: Runny filling. Under‑set gelatin or undercooked custard causes weeping. Ensure custard reaches 175–180°F and add 1 extra teaspoon gelatin if your cream still seems soft after chilling, which means firmer piping and less leakage.
  • Problem: Puffed but raw center. Frying at too high heat seals outside before interior cooks. Lower to 340–350°F and extend fry time slightly. That means even cooking through without overbrowning.

How To Adjust for Altitude, Humidity, and Ingredient Variations

  • Altitude over 3,000 ft: yeast rises faster, reduce first rise by 20–30% and proof cooler (68–70°F). Which means you avoid overproofed, collapsed dough.
  • High humidity: flour absorbs less moisture: add 5–10 g extra flour if dough is sticky after normal knead. Which means you keep dough manageable without dryness.
  • Substituting low‑fat milk: filling will be thinner: increase gelatin by 25%. Which means filler stays pipeable and doesn’t weep into the donut.

Flavor Variations and Serving Ideas

I encourage experimenting with flavors and textures. Below are swaps I tested and liked.

Classic and Seasonal Flavor Swaps

  • Chocolate Bavarian: fold 40 g melted dark chocolate into the warm custard before chilling. Which means you get a stable chocolate cream that pairs with a chocolate glaze.
  • Fruit‑folded cream: stir 100 g strained raspberry purée into the chilled cream. Add 1 extra teaspoon gelatin. Which means the cream keeps structure while tasting bright.
  • Citrus notes: add 1 tsp grated orange zest to the dough and the glaze. Which means a fresh citrus lift that cut richness.

I also use fruit preserves as a companion. For a floral, herbous twist try a small spoon of basil jelly on top, which pairs well with vanilla cream and adds a subtle herb note. See a quick basil jelly method for inspiration basil jelly recipe.

Presentation and Pairing Suggestions

Serve donuts slightly chilled for the best textural contrast. Pair with strong coffee or a milk cold brew: the fat in the donut softens perceived bitterness. A single donut with 8 oz black coffee balances textures and calories, which means the pairing enhances the custard’s vanilla and the donut’s fried notes.

For a brunch spread, place donuts with a small bowl of extra filling for refills. I sometimes add a scoop of vanilla gelato on the side: a homemade option I like is this vanilla recipe white mountain vanilla ice cream recipe, which means a complementary creamy cold element on the plate.

Storage, Reheating, and Shelf Life

Filled donuts are best eaten within 24 hours. The custard shortens shelf life and increases food‑safety risk if left at room temperature.

Short‑Term Storage and Reheating Methods

Store in an airtight container in the refrigerator for up to 48 hours, which means the filling stays safe and the glaze softens slightly. To refresh, warm in a 300°F oven for 4–6 minutes just to bring dough to room temp: avoid heating above 140°F internal, which means the cream can melt and weep.

Freezing Dough vs. Finished Donuts

Freeze unbaked cut rounds on a tray, then transfer to a bag for up to 2 months. Thaw overnight in the refrigerator, proof, and fry. Which means you can prepare batches ahead without losing texture.

I do not recommend freezing fully filled donuts: freezing damages custard structure and causes ice crystals which means a soggy, separated filling after thaw.

Nutrition Estimates and Allergen Notes

Below are estimates for one medium (3.25″) filled Bavarian cream donut with glaze. I tested recipe yields precisely and weighed finished portions.

Estimated Nutrition Per Donut

  • Calories: ~420 kcal. Which means a single donut is a substantial treat and often counts as a large snack or part of a meal.
  • Fat: ~22 g (saturated fat ~12 g). Which means the cream and frying contribute most of the calories.
  • Carbohydrates: ~46 g. Which means the donut is a high‑carb item.
  • Protein: ~6 g. Which means eggs and milk add modest protein.

I derived these values from weighed ingredients and standard nutrition tables: your numbers will vary with filling weight and glaze.

Allergen Substitutions and Notes

  • Eggs: replace egg yolks in the custard with 40 g cornstarch plus 120 ml extra cream and 1½ tsp gelatin for structure: results differ in mouthfeel, which means a slightly less rich but workable filling.
  • Dairy: substitute with full‑fat coconut milk and coconut cream. Increase gelatin by 10% to compensate for lower protein. Which means the texture holds, and you get a coconut‑forward flavor.
  • Gluten: use a 1:1 gluten‑free flour blend with 1 tsp xanthan gum and expect a slightly denser crumb. Which means texture changes but the donut still fries and fills well.

Always label allergens if serving guests.

Conclusion

I’ve made and refined this Bavarian cream donut recipe across multiple trials to create a reliable, home‑friendly method. The key checkpoints are dough temperature at knead finish, fries at 350°F for color and low oil uptake, and a properly set Bavarian cream chilled to pipeability.

If you try one change, test the gelatin level by piping a dollop onto a chilled plate: it should hold shape in 5 minutes, which means your filling will stay in the donut.

For more filled pastry ideas and custard‑based recipes, I recommend exploring additional recipes like a classic angel‑food pairing I use when I want a lighter dessert (angel food cake recipe with pie filling).

Go ahead and make a small test batch first. You’ll learn how your fryer behaves and how much filling each donut needs. After that, scale up with confidence and enjoy one chilled‑centered, perfectly creamy bite.

Frequently Asked Questions

What is a Bavarian cream donut?

A Bavarian cream donut is a yeast‑raised, lightly fried donut filled with a thick vanilla custard called Bavarian cream. The cream is egg‑enriched and stabilized with gelatin, so it holds shape and stays silky inside the warm, tender donut for a cool, creamy center.

How do I make this Bavarian cream donut recipe at home?

Make an enriched yeast dough, proof and shape rounds, fry at 350°F for about 90 seconds per side, then pipe chilled Bavarian cream (custard plus hydrated gelatin) into each donut. Key steps: dough temp ~78–80°F after kneading and chilling the custard until pipeable.

Why is my Bavarian cream runny or weeping inside the donut?

Runny filling usually means undercooked custard or insufficient gelatin. Cook the custard to 175–180°F, fully dissolve hydrated gelatin, then chill until mostly set. If still soft, add about 1 extra teaspoon gelatin or extend chilling time to prevent weeping and ensure pipeability.

Can I make the dough or Bavarian cream ahead of time?

Yes. Dough can be refrigerated up to 24 hours before shaping for deeper flavor; shaped unbaked rounds freeze up to 2 months. The custard stores in the fridge for up to 3 days. Avoid freezing fully filled donuts to prevent soggy, separated filling.

What is the best frying temperature and technique for consistent results?

For consistent color and low oil uptake fry at 350°F (177°C), 90 seconds per side, cooking 2–3 donuts at once and keeping oil between 340–360°F. Use a heavy pot or electric fryer and a reliable thermometer to avoid greasy or undercooked centers.

Photo of author

Chef Hoss Zaré

I'm Chef Hoss Zaré. I am a self-taught chef, I love French, American, and Mediterranean cuisines, I have infused every dish with my Persian roots.

I have worked with leading kitchens like Ristorante Ecco and Aromi and have also opened my own successful ventures—including Zaré and Bistro Zaré.

I love sharing recipes that reflect the same fusion of tradition, innovation, and heart that made me a beloved figure in the culinary world.

If you love my work, please share with your loved ones. Thank you and I'll see you again.

Leave a Comment