There are few things in life better than a warm, gooey cinnamon roll fresh from the oven. Soft, pillowy dough wrapped around a buttery cinnamon sugar filling and smothered in silky cream cheese frosting? Absolute perfection.
These homemade cinnamon rolls are bakery-level good — soft, fluffy, lightly sweet, and perfectly gooey in the center. After years of testing and tweaking, this recipe delivers rolls that taste even better than Cinnabon.
If you’ve ever been intimidated by working with yeast, don’t worry. I’ll walk you through it. The process takes a little patience, but the results are completely worth it.

Why These Cinnamon Rolls Are the Best
Ultra-Soft Dough
Made with bread flour for structure and chew, this enriched dough is tender and fluffy thanks to milk, butter, and egg.
Perfect Cinnamon Filling
A rich blend of brown sugar, butter, cinnamon, and a pinch of salt creates a caramelized, gooey swirl.
Luscious Cream Cheese Frosting
Tangy, smooth, and perfectly sweet — it melts into the warm rolls and takes them over the top.
Ingredients You’ll Need
For the Dough
- Bread flour (or all-purpose flour)
- Granulated sugar
- Instant yeast
- Salt
- Milk
- Unsalted butter
- Egg
For the Cinnamon Sugar Filling
- Unsalted butter (room temperature)
- Brown sugar
- Ground cinnamon
- Pinch of salt
For the Cream Cheese Frosting
- Cream cheese (room temperature)
- Unsalted butter (room temperature)
- Powdered sugar
- Milk
- Vanilla extract
- Pinch of salt
How to Make Homemade Cinnamon Rolls
1. Make the Dough
Mix flour, sugar, yeast, and salt. Warm the milk and butter until just warm (not hot), then add to the dry ingredients along with the egg. Beat until combined.
Switch to a dough hook and knead for about 10 minutes until smooth and elastic. The dough should pass the “windowpane test” — when stretched thin, you can see light through it without tearing.
Let rise for 1 hour, or until doubled in size.
2. Make the Filling
Mix softened butter, brown sugar, cinnamon, and salt into a smooth paste.
3. Roll & Shape
Roll the dough into a 12×18-inch rectangle. Spread the filling evenly to the edges.
Roll tightly into a log and cut into 12 equal rolls (a sharp knife or unflavored dental floss works perfectly).
Place in a 9×13-inch pan and let rise again for 1 hour.
4. Bake
Bake at 350°F for about 30 minutes, until golden brown. The centers should be soft but not raw.
Let cool slightly.
5. Make the Frosting
Beat cream cheese, butter, powdered sugar, milk, vanilla, and salt until smooth and fluffy.
Spread over warm rolls and watch it melt into every swirl.
Tips for Perfect Cinnamon Rolls
- Use fresh yeast. Expired yeast = flat rolls.
- Don’t rush the rises. Yeast needs time to create fluffy texture.
- Don’t overbake. Slightly underbaked centers are ideal — they’ll continue cooking as they cool.
- Eat warm. Always.
Make Ahead Option
You can prep the rolls the night before. After cutting and placing them in the pan, cover and refrigerate overnight instead of letting them rise.
In the morning, let them sit at room temperature for about 1 hour before baking.
Storage Tips
- Store unfrosted rolls in an airtight container.
- Keep frosting separate if storing long-term.
- Reheat in the microwave for 20–30 seconds before serving.
- Slightly underbaking helps them stay soft longer.
- Homemade Cinnamon Rolls (Soft + Fluffy!)
Yield: 12 rolls
Prep Time: 30 minutes (+ rise time)
Bake Time: 30 minutesIngredients
For the Dough
4 ½ cups (585g) bread flour (or all-purpose flour)
⅓ cup (70g) granulated sugar
1 packet (2 ¼ tsp) instant yeast
1 teaspoon salt
1 ½ cups (360g) milk
6 tablespoons (84g) unsalted butter
1 large egg, room temperature
For the Filling
½ cup (113g) unsalted butter, room temperature
⅔ cup (142g) packed light brown sugar
2 tablespoons ground cinnamon
Pinch of salt
For the Cream Cheese Frosting
4 oz cream cheese, room temperature
½ cup (113g) unsalted butter, room temperature
3 cups (336g) powdered sugar
2 tablespoons milk
1 teaspoon vanilla extract
Pinch of saltInstructions
Make the Dough
In a stand mixer, whisk together 2 cups flour, sugar, yeast, and salt.
Warm milk and butter together until just warm (not hot).
Add milk mixture and egg to dry ingredients. Mix until combined.
Switch to dough hook. Add 1 ½ cups flour and knead. Add remaining 1 cup flour and knead until dough pulls away from sides.
Knead 8–10 minutes until smooth and elastic (passes windowpane test).
Place in lightly greased bowl, cover, and let rise 1 hour or until doubled.Make the Filling
Mix softened butter, brown sugar, cinnamon, and salt into a smooth paste.Shape the Rolls
Roll dough into a 12×18-inch rectangle.
Spread filling evenly to edges.
Roll tightly into a log from the long side.
Cut into 12 rolls.
Place in a parchment-lined 9×13-inch pan.
Cover and let rise 1 hour until doubled.Bake
Preheat oven to 350°F.
Bake 30 minutes until golden brown.
Cool 10–15 minutes.Make the Frosting
Beat cream cheese and butter until smooth.
Add powdered sugar, milk, vanilla, and salt.
Beat until fluffy and spreadable.




