Chocolate oat bars
Chewy chocolate oat bars with a cocoa oat crust, a smooth chocolate filling, and a crumbly oat topping baked in an 8-inch square pan. The bars slice cleanly after cooling and taste like a cross between an oatmeal cookie and a soft brownie bar, with a buttery base and a glossy chocolate center.

Estimated calories and US ingredient costs.
This recipe is designed for an 8-inch square pan and cuts into 12 bars. Doubling works best in a 9-by-13-inch pan, but keep the oven at 350 F and expect a longer bake, about 30 to 36 minutes, because the chocolate layer is thicker. Do not simply halve the pan depth without checking doneness, since thin bars overbake quickly.
Your whole cook, in one place.
Ingredients, steps and a live timeline. Ready for 12 people.
Make the next one yours.
Create a custom meal with what you have.
Read the traditional recipe
Ingredients
For 12 people
- 1 1/2 cups old-fashioned rolled oats
- 1 1/4 cups all-purpose flour
- 1/2 cup packed light brown sugar
- 1/3 cup granulated sugar
- 1/3 cup unsweetened cocoa powder
- 1/2 tsp fine salt
- 1/2 tsp baking soda
- 3/4 cup unsalted butter, melted
- 1 large egg
- 2 tsp vanilla extract
- 1 1/4 cups semisweet chocolate chips
- 1/2 cup sweetened condensed milk
- 2 tbsp unsalted butter
- 1 tbsp milk
Method
- Prep the pan and ovenHeat the oven to 350 F. Line an 8-inch square baking pan with parchment, leaving overhang on two sides for lifting. Lightly grease the parchment and exposed pan so the bars release cleanly.
- Mix the oat crust and toppingIn a medium bowl, stir together the rolled oats, flour, brown sugar, granulated sugar, cocoa powder, salt, and baking soda. Pour in 3/4 cup melted butter, 1 large egg, and 1 tsp vanilla extract. Stir until the mixture looks evenly moistened and clumps when pressed. It will be thick and slightly sticky.
- Form the baseReserve about 1 1/2 cups of the oat mixture for the topping. Press the remaining mixture firmly into the bottom of the prepared pan in an even layer. Use the bottom of a measuring cup to compact it so the base bakes into a sturdy crust instead of crumbling.
- Make the chocolate fillingIn a small saucepan over low heat, combine the chocolate chips, sweetened condensed milk, and 2 tbsp butter. Stir constantly until the chocolate is melted and the mixture is smooth and glossy, 3 to 5 minutes. Remove from the heat and stir in 1 tsp vanilla extract and 1 tbsp milk. The filling should be spreadable, not runny; if it feels too thick to spread, warm it for 10 to 15 seconds more over low heat.
- Layer and topSpread the chocolate filling over the crust in an even layer, reaching the corners. Crumble the reserved oat mixture over the top, leaving some chocolate peeking through. Do not press the topping down hard; a loose layer bakes into a tender, craggy finish.
- Bake until setBake for 24 to 28 minutes, until the topping looks dry at the edges and the center is set with only a slight soft spot, not wet or glossy. The bars should not look jiggly when you gently shake the pan. Avoid overbaking or the chocolate layer can turn dry and the crust gets hard.
- Cool completely before slicingSet the pan on a rack and cool until barely warm, about 1 hour. Then refrigerate for at least 1 additional hour to fully set the chocolate layer. Lift out using the parchment, place on a cutting board, and slice into 12 bars with a sharp knife wiped clean between cuts for neat edges.
- Serve and storeServe the bars at room temperature for the softest texture, or chilled for firmer, fudgier slices. Store leftovers in an airtight container in the refrigerator for 3 to 4 days and reheat only if desired, not for safety. For the cleanest presentation, dust the top lightly with a pinch of cocoa before serving, using only the baked bars themselves as the finish.
Before you cook
What to get ready
Mixing bowls, scoop or measuring spoon, lined baking tray or bar pan and cooling rack.
Line the pan for lifting and reserve the topping mixture before pressing the base.
If something needs adjusting
Bars fall apart when cut
Cool fully before lifting and slicing; hot chocolate filling has not set.
Different trays brown at different speeds
Check early with dark pans and leave space between portions. Let the tray cool before loading a second batch.
Store for later
Cool completely before storing in an airtight container. Freeze portions for longer storage; refrigerate bars with a moist dairy filling rather than leaving them on the counter.
Make the ingredients go further
Use remaining oats in breakfast and freeze extra bars individually.
Next use for your ingredients: Overnight oats →
Calculate this meal with your own prices →
Cooking notes updated October 24, 2026. How we create recipes.
Tips, swaps and questions
A little kitchen know-how
For thicker, more bakery-style bars, chill the assembled pan for 10 minutes before baking so the butter starts cold and the layers stay distinct. If you want a less sweet result, use bittersweet chips, but keep the condensed milk unchanged because it is what makes the filling set smoothly without graininess.
Make it work for you
Swap 1/2 cup of the rolled oats for an equal weight of quick oats if that is what you have, but expect a slightly tighter, less chewy topping. You can also replace the semisweet chips with chopped dark chocolate; the filling will taste less sweet and may need the full chilling time to slice cleanly.
Use more of your rolled oats and all-purpose flour in oatmeal raisin cookies.
Why did my chocolate layer look soft after baking?
A soft-looking center is normal when the bars come out of the oven. The filling finishes setting as it cools, and the chocolate layer firms further after chilling. If the bars still seem loose after cooling, they were likely underbaked or cut too soon. Bake until the edges are dry and the center no longer looks wet, then cool completely before slicing.
Times are estimates. Check ingredients for allergens. For safe temperatures and storage, see FoodSafety.gov.