Pistachio Cake Made from Scratch
You are going to love this one. Pistachio cake that’s made from scratch with real ground pistachios, butter, and buttermilk. This cake has a soft, moist crumb, a rich pistachio flavor, and is dressed with simple vanilla icing. There’s no cake mix, pistachio pudding, or food coloring.

What I love most about this cake is its flavor. With the icing, it reminds me of pistachio ice cream! I’m serious! The pistachios come through beautifully, blending with the butter and vanilla to give the cake a rich, creamy taste, and it’s something my family and I often crave.
I make it in a Bundt pan and finish it with a vanilla icing that sets nicely on the cake. I’ll also show you how I grind the pistachios, prepare the Bundt pan, and get the icing to the right consistency.
What Makes This Pistachio Cake Special?
The pistachio flavor comes from real nuts. I grind them into fine crumbs and add them directly to the batter, so you can taste pistachio throughout the cake.
I also use both butter and oil. The butter gives the cake its wonderful flavor, while the oil helps it stay moist, even after refrigeration. Buttermilk adds tenderness, and the vanilla works beautifully with the pistachios.
Don’t expect a bright green cake. Without food coloring, the color is naturally subtle, and that’s exactly how I like it.

Ingredients You’ll Need
You can find the exact measurements in the recipe card below.
- Pistachios: Use shelled, unsalted pistachios. Grind them into fine crumbs, but stop before they turn into a paste.
- All-purpose flour: Regular all-purpose flour works well and gives this cake a tender crumb.
- Unsalted butter: Adds a rich buttery flavor that complements the pistachios.
- Oil: Helps the cake retain its moisture.
- Buttermilk: Gives the cake a soft, tender texture.
- Eggs: Two large eggs help give the cake structure.
- Fine sugar: Creams easily with the butter.
- Vanilla: I prefer vanilla with pistachio, although you can use almond extract if you enjoy that combination.
- Baking powder and baking soda: Help the cake rise.
- Salt: Balances the sweetness and brings out the other flavors.
For the icing, you’ll need confectioners’ sugar, vanilla, and milk or water.
How to Make Pistachio Cake From Scratch
Step 1 – Grind the pistachios
Place the shelled pistachios in a food processor and pulse until they become fine crumbs.
Don’t run the processor continuously. Pistachios contain natural oils, and processing them for too long can turn them into pistachio paste.
Step 2 – Combine the dry ingredients
In a bowl, mix the flour, baking powder, baking soda, and salt. Add the ground pistachios and stir until evenly distributed.
Step 3 – Cream the butter and sugar
In another bowl, beat the softened butter and sugar for 4 to 5 minutes, until lighter in color and fluffy. Add the oil and beat for another minute.
Step 4 – Add the eggs
Add the first egg and beat until combined. Add the second egg and vanilla, then beat again. Scrape the sides and bottom of the bowl and beat for another 2 minutes.
Step 5 – Add the flour and buttermilk
With the mixer on low speed, add part of the flour mixture, followed by some buttermilk. Continue alternating in three additions until everything is combined.
Don’t overmix. Once the flour goes in, mix only as much as needed to bring the batter together.
Step 6 – Prepare the Bundt pan
Coat the inside of your Bundt pan thoroughly with softened butter, making sure you reach every groove. Dust with flour and tap out the excess.
Spoon in the batter. Run a butter knife gently through it to release large air pockets, then tap the pan lightly against the counter.
Step 7 – Bake
Bake at 325°F (162°C) for approximately 40 minutes, or until a skewer inserted into the cake comes out clean.
Place the pan on a cooling rack and leave the cake in the pan for 7 minutes before carefully releasing it.
Allow the cake to cool completely before adding the icing.

How to Keep Pistachio Cake From Sticking to a Bundt Pan
A decorative Bundt pan makes a beautiful cake, but those little grooves need attention.
Here’s how I prepare mine:
- Use softened butter, not melted butter. Brush it generously over the inside of the pan, especially the grooves.
- Dust with flour. Rotate the pan until every buttered surface is coated.
- Remove the excess. Turn the pan upside down and tap it firmly to remove loose flour.
- Add the batter promptly. I prefer preparing the pan just before filling it, especially in a warm kitchen where butter can soften further and slide down the sides.
After baking, let the cake rest in the pan for 7 minutes. Gently loosen the edges before turning it out.
Taking a little extra care with the pan is worth it. You want those lovely Bundt details on the cake, not stuck inside the pan!
How to Make the Vanilla Icing
I prefer a simple vanilla icing for this cake. It adds sweetness and a creamy flavor without covering the taste of the pistachios.
The important thing is getting the consistency right.
- Sift the confectioners’ sugar into a bowl.
- Add the vanilla and 1 tablespoon of milk or water. Mix well.
- Gradually add the second tablespoon, mixing until the icing is smooth and thick but still pourable.
- Check the consistency with a spoon. The icing should fall slowly within a few seconds, not run off like water.
Make sure the cake is completely cool before adding the icing. Otherwise, it can melt and soak into the cake.
My little trick for beautiful icing drips: Place the cake on its serving plate and pour the icing over the top. Put a folded kitchen towel on the counter, then gently tap the plate against the towel. This encourages the icing to flow down the sides without making it too thin.

Tips for a Moist Pistachio Cake
- Use room-temperature ingredients. Softened butter, eggs, and buttermilk combine more easily into the batter.
- Grind the pistachios finely. Large pieces can interrupt the soft texture, while fine crumbs distribute the flavor throughout the cake.
- Cream the butter and sugar properly. Give them the full 4 to 5 minutes before adding the oil.
- Avoid overmixing after adding the flour. Mix on low speed and stop once everything is combined.
- Preheat the oven fully. The cake needs a properly heated oven to rise and bake evenly.
- Check for doneness. Oven temperatures vary, so use a skewer rather than relying on the baking time alone.
- Cool before icing. Even a slightly warm cake can make the icing run too quickly.
Can I Use Salted Pistachios?
I prefer unsalted pistachios because they give me better control over the flavor.
If you have salted pistachios, you can rub them gently between two damp kitchen towels to remove some of the surface salt. Pat them thoroughly dry before grinding.
If you’re using salted pistachios with unsalted butter, omit the added salt from the cake batter.

How to Store Pistachio Cake
At room temperature: Keep the uniced cake in an airtight container for up to 2 days. If your kitchen is particularly warm, refrigerate it instead.
In the refrigerator: Wrap the cake well and store it in an airtight container for up to 4 days. I find that this cake stays wonderfully moist even after refrigeration. If it’s already iced, allow the icing to set before covering it.
In the freezer: I prefer freezing the cake without icing. Wrap it tightly in plastic wrap, followed by aluminum foil, and place it in a freezer-safe bag. Freeze for up to 1 month.
Thaw the cake at room temperature until completely defrosted, then add the icing.


Pistachio Cake From Scratch
Ingredients
For the Pistachio Cake
- 1 cup + 3 tablespoons all-purpose flour
- ¾ cup shelled pistachios unsalted
- ¾ cup + 2 tablespoons fine sugar
- 1 teaspoon baking powder
- ½ teaspoon baking soda
- ½ teaspoon salt
- ½ cup unsalted butter at room temperature
- 2 tablespoons cooking oil
- 2 large eggs at room temperature
- ¾ cup buttermilk at room temperature
- 1 teaspoon vanilla extract
For the Vanilla Icing
- 1⅓ cups confectioners’ sugar
- ½ teaspoon vanilla extract
- 2 tablespoons milk or water
Instructions
Make the Pistachio Cake
- Bring the refrigerated ingredients to room temperature. Preheat the oven to 325°F (162°C).
- Pulse the pistachios in a food processor until finely ground. Don’t process them into a paste.
- In a bowl, whisk together the flour, baking powder, baking soda, salt, and ground pistachios.
- In a separate bowl, beat the butter and sugar for 4 to 5 minutes, until light and fluffy. Add the oil and beat for another minute.
- Add the first egg and beat until combined. Add the second egg and vanilla, then beat again. Scrape the bowl and continue beating for 2 minutes.
- With the mixer on low speed, alternately add the flour mixture and buttermilk in three additions. Mix just until combined, then scrape the sides and bottom of the bowl.
- Grease and flour an 8-inch-wide, 5-inch-deep Bundt pan, coating all the grooves. Tap out the excess flour.
- Spoon the batter into the pan. Run a butter knife gently through the batter to release large air pockets, then tap the pan lightly against the counter.
- Bake on a rack below the oven’s middle position for approximately 40 minutes, or until a skewer inserted into the cake comes out clean.
- Place the pan on a cooling rack for 7 minutes. Gently loosen the edges and carefully turn out the cake. Let it cool completely before icing.
Make the Vanilla Icing
- Sift the confectioners’ sugar into a bowl and add the vanilla.
- Add 1 tablespoon of milk or water and whisk until combined.
- Gradually add the remaining tablespoon until the icing is thick, smooth, and slowly falls from a spoon.
- Pour over the completely cooled cake.
- To encourage the icing to flow down the sides, gently tap the serving plate against a folded kitchen towel.
Notes
- Pistachios: Unsalted pistachios are best. If using salted pistachios with unsalted butter, omit the added salt.
- Salted butter: Omit the salt from the recipe.
- Buttermilk substitute: Milk can be used instead. The original recipe also allows adding 1½ tablespoons of sour cream to the milk.
- Egg alternative: Instead of 2 large eggs, use 2 whole medium eggs and 1 egg yolk.
- Flavor: Vanilla is my preference, but almond extract can be used instead.
- Cake color: The cake has a naturally subtle color. No food coloring is needed.
- Pan preparation: Thoroughly butter and flour every groove of the Bundt pan for easier release.
- Icing: Add it only after the cake has cooled completely.

A show stopper! I love pistachios and wish I could have a slice 🙂 Well done, Muna!
Hey beautiful, thanks for your kind comment, I wish I can send you some 🙂
Hi,
Great recipe.. when should we add oil in the process..? You haven’t specified about it in the recipe card..
Hi Sunitha, you can find it in step #5. Thank you 🙂
Thanks for your quick revert..😊 I tried the recipe and it was the best cake I ever baked…it’s true and the cake was fluffy, moist and fabulous…..thanks for sharing this great recipe. ..
All thanks to you Sunitha 🙂
hi muna,
can we substitute any other nuts in place of pistas in this recipe?
thank you
I never used other nuts, but pistachio has a lot of oil in it and adds moisture to the cake, other nuts may not give the same result.
Hi Muna. Can I use gluten free flour in this recipe?
Yes, you can most gluten free flour brands work great with this recipe.
Can Coconut sugar be substituted for fine sugar, Plant based butter substituted for unsalted butter, and substitute full fat canned Coconut milk or Almond milk for Buttermilk? Thank you Munaty.
Hi Freda, I know that coconut sugar is a good substitute for regular sugar, but I’m afraid the ingredients you have mentioned as susbstitutes may alter the texture of the cake. I have never tried them in this recipe before.
Hi Muna,
Can dairy free plant based butter (has sodium) be used instead of regular salt free butter for this recipe? Thank you.
Hi Freda, You can use plant based butter or even oil in this recipe, if it has salt omit it from the recipe.