These classic nanaimo bars are a staple holiday treat you need to make!
A holiday favourite, my Mom makes these Nanaimo Bars every year at Christmas.
This Nanaimo Bar recipe is by far a fan favourite and is requested by family and friends each holiday season!
While I love to make these snickerdoodle bars and shortbread cookies during the holidays, these nanaimo bars are always first on my list. With a creamy custard filling sandwiched between two chocolate layers, you can’t go wrong.
Why you’ll love this nanaimo bars recipes
- It’s a tried, tested and true recipe my Mom has made for the last 30 years!
- These bars are a no bake dessert so you don’t need to turn on the oven.
Ingredients needed to make this recipe
Butter: you’ll need unsalted butter for the base layer and custard layer
Sugar: white sugar is used in the base layer
Cocoa powder: rich cocoa powder gives the base layer it’s chocolately flavour
Semisweet chocolate: melted semi-sweet chocolate is the best for the top layer of these bars
Egg: one egg is whisked and then added to the base layer
Custard powder: custard powder is key to the iconic colour of the middle layer
Icing sugar: icing sugar is whipped with the custard powder and butter for the creamy middle layer
Graham crumbs: graham cracker crumbs bring the base layer together
Coconut: shredded coconut is also added to the base
Walnuts: finely chopped walnuts add a nice crunch to the base layer
Step by step process to make homemade nanaimo bars
Step 1: Make the base layer –
Grease and then line an 8×8 baking pan with parchment paper and set aside. In a saucepan, melt butter, sugar & cocoa powder, stirring until combined. Set aside. Next in a bowl, combine graham crumbs, coconut and walnut – stir with a fork to combine. Pour melted butter/sugar/cocoa mixture onto dry mixture and mix until fully combined. Lastly, beat an egg with the vanilla, then add to the rest of the base. Mix until combined fully and spread/press into the bottom of your pan. Set aside in the fridge while you make the custard layer.
Step 2: Make the custard layer –
Cream the butter in an electric mixer with the paddle attachment at medium-high about 1 minute (if you do not have a mixer, whisk vigorously until creamy, a couple of minutes). Add icing sugar, half-cup at a time, mixing until combined after each addition. Next, add the custard powder until combined. Then, add the milk to reach a smooth consistency. Make sure to scraped the bottom of the mixing bowl a few times to ensure everything is being incorporated. Spread the custard evenly on the base and place in the fridge while you make the topping.
Step 3: Make the top layer –
Melt chocolate with butter in a saucepan over low heat. Once melted set aside & immediately take your base/middle out of the freezer. Pour the melted chocolate over the custard & spread evenly immediately. Place in freezer for 30 minutes to let fully set. Then, take it out for about 10 minutes before cutting into squares.
Expert tips for making nanaimo bars
- If you can’t find graham cracker crumbs, you can use a blender or food processor to crush up graham crackers into a crumb texture.
- You can make the custard layer but mixing by hand if you dont have a stand mixer; a hand mixer would also work.
- If you like a stronger custard flavour, feel free to add more custard powder to the custard layer mixture & taste to your liking.
Common Questions
Can these nanaimo bars be made ahead of time?
YES! Make and store these bars in the freezer for up to two weeks in an airtight container. Need them for a quick dessert during the holidays? Take them out of the freezer about an hour before serving.
Which custard powder should I use?
I’ve always used bird’s custard powder which gives the custard filling of the bars their signature bright yellow colour. I would not recommend any other powder as you will not get the classic nanaimo bar filling as seen in the photos.
Can I make these gluten free?
You can use gluten free graham cracker crumbs to replace the regular graham crumbs and make sure all of your other ingredients are gluten free. Since the gluten free graham crumbs have a slightly different taste than regular graham crumbs, you may want to add up to 1-2 tbsp more cocoa powder to the base mixture to enhance the chocolate flavour (taste and adjust as you see fit).
Storage
Store these in the freezer for up to two weeks in an airtight container.
More holiday treats to love from the blog:
The Best Fudgy Chocolate Brownie Cookies

Classic Nanaimo Bars Recipe (no bake holiday treat)
Ingredients
For the base layer
- 1/2 cup unsalted butter, softened/room temperature
- 1/4 cup sugar
- 3 tbsp cocoa powder
- 1 egg, beaten
- 1 tsp vanilla extract
- 2 cups graham crumbs
- 1 cup shredded coconut
- 1/2 cup finely chopped walnuts
For the custard layer
- 1/2 cup unsalted butter, softened/room temperature
- 2 cups icing sugar
- 3 1/2 tbsp custard powder
- 2 tbsp milk (room temperature)
For the top chocolate layer
- 6 oz semisweet baker’s chocolate or 1 cup semi-sweet chocolate chips
- 2 tsp butter
Instructions
Make the base layer
- Grease and then line an 8x8 baking pan with parchment paper and set aside.
- In a saucepan, melt butter, sugar & cocoa powder, stirring until combined. Set aside.
- Next in a bowl, combine graham crumbs, coconut and walnut – stir with a fork to combine. Pour melted butter/sugar/cocoa mixture onto dry mixture and mix until fully combined. Lastly, beat an egg with the vanilla, then add to the rest of the base. Mix until combined fully and spread/press into the bottom of your pan. Set aside in the fridge while you make the custard layer.
Make the custard layer
- Cream the butter in an electric mixer with the paddle attachment at medium-high about 1 minute (if you do not have a mixer, whisk vigorously until creamy, a couple of minutes). Add icing sugar, half-cup at a time, mixing until combined after each addition. Next, add the custard powder until combined. Then, add the milk to reach a smooth consistency. Make sure to scrape the bottom of the mixing bowl a few times to ensure everything is being incorporated. Spread the custard evenly on the base and place in the fridge for 20 minutes.
Make the top chocolate layer
- Melt chocolate with butter in a saucepan over low heat. Once melted set aside & immediately take your base/middle out of the fridge. Pour the melted chocolate over the custard & spread evenly immediately. Place in fridge for at least 30 minutes to let fully set. Then, take it out for about 10 minutes before cutting into squares.
Renita
Surely that should be two tablespoons (Tbsp) of butter?
Jess
Are you referring to the butter as a part of the top chocolate layer? I can attest that the amounts here are correct as it is a family recipe 🙂 But there are many ways to make a chocolate topping for sure!
Robyn
Hey Jess is that a 1/4 c walnuts?