I know what you’re thinking: zucchini in a dessert bar? That sounds like something your aunt brought to a potluck in 1998. I thought the same thing until I made these for a Sunday afternoon gathering — and three people asked for the recipe before they even finished their first piece. The bars are tender, spiced, and exactly sweet enough, and the caramel frosting is the kind of thing you’ll want to eat with a spoon. The zucchini? Completely invisible in every good way. You could tell no one and no one would know.
The short version: Moist spiced bars with a thick caramel frosting that hide a full cup of shredded zucchini — and everyone asks for seconds.
I’ve made these four times this summer and the pan is always scraped clean. My picky seven-year-old ate two before I even got a photo.
- Serves: 12 bars (one 9×13 pan)
- Hands-On Time: 20 min | Total Time: 55 min (including cooling)
- Difficulty: Easy — even on a lazy Saturday
- Cost per serving: ~$0.65
- Calories: ~310 per bar
- Dietary Notes: Naturally nut-free; can adapt dairy-free
(Photo above: overhead shot of six rectangular bars on a white ceramic plate, caramel frosting thick and glossy, a sprinkle of flaky salt catching the light from a kitchen window, one bar lifted slightly to show the tender crumb.)
The Trick That Keeps These Bars from Getting Soggy

Zucchini is mostly water, which is the enemy of a good bar — unless you handle it right. I grate the zucchini on the large holes of a box grater, then press it between paper towels to draw out the excess moisture. That one step takes thirty seconds and changes everything. Without it, you get a dense, wet bar that never sets up properly. With it, the bars bake up light, fluffy, and completely zucchini-free in texture.
The second trick is the balance of spices. Cinnamon, nutmeg, and a pinch of cloves warm up the flavor so the zucchini just disappears into the background. It’s the same principle as a good carrot cake: the vegetable is a moisture delivery system, not a flavor player. I don’t add raisins or nuts — they compete with the caramel frosting. Let the frosting be the star.
These bars come out of the oven smelling like fall, even in August. That’s the kind of magic I can get behind.
Everything You Need (And a Few Notes From Me)
- 1 cup all-purpose flour: Standard spoon-and-level. Don’t scoop from the bag — you’ll get too much. I use White Lily because it gives a softer crumb, but any all-purpose works.
- ½ teaspoon baking powder + ½ teaspoon baking soda: They work together to give lift and spread. Check your baking soda is fresh — I learned that one the hard way.
- 1 teaspoon cinnamon + ¼ teaspoon nutmeg + pinch of cloves: The spice trio that makes these taste like a snickerdoodle had a baby with a zucchini bread. My kids love when I add a tiny extra shake of cinnamon on top before baking — makes the kitchen smell incredible.
- ¼ teaspoon salt: Balances sweetness. Don’t skip.
- ½ cup unsalted butter, melted: Use butter, not oil. It tastes better and makes the bars tender. If you’re dairy-free, use a good vegan butter — I’ve tested it and it works.
- ¾ cup granulated sugar + ¼ cup packed brown sugar: The brown sugar adds moisture and a hint of molasses that plays well with the caramel frosting. I’ve used all granulated in a pinch — still good, but missing that little depth.
- 2 large eggs, room temp: Let them sit out for 15 minutes. Cold eggs can make the batter seize. I microwave them in a bowl of warm water for 30 seconds if I forget — totally fine.
- 1 teaspoon vanilla extract: Real, not imitation. It makes a difference.
- 1 cup shredded zucchini (from about 1 medium zucchini): Squeeze out the moisture as described. I don’t peel it — the green flecks are pretty and no one notices.
- For the caramel frosting: ¼ cup unsalted butter, ½ cup packed brown sugar, 3 tablespoons milk (or cream), 1½ cups powdered sugar, ½ teaspoon vanilla, pinch of salt.
- Optional finish: Flaky sea salt — I use Maldon. It’s the one garnish that makes these look intentional.
The Setup (It’s Minimal, I Promise)
- 9×13-inch baking pan — metal or glass, both work. If using glass, reduce oven temp to 325°F and bake about 5 minutes longer.
- Box grater — large holes. No need for anything fancy.
- Paper towels — for squeezing the zucchini. You’ll want two or three layers.
- Electric mixer — hand or stand. You can whisk by hand but the caramel frosting needs some beating to get silky.
That’s it. No food processor required. No stand mixer needed for the bars.
Let’s Make Them (Step by Step)
This goes fast once you have the zucchini squeezed and the butter melted. Read through once before you start — the caramel frosting comes together while the bars cool.
Preheat + prep: Preheat the oven to 350°F. Grease a 9×13 pan or line it with parchment paper (leave overhang for easy lifting).
- Shred and squeeze the zucchini: Grate the zucchini on the large holes of a box grater. Place the shreds in the center of a clean kitchen towel or a stack of paper towels. Gather the edges and twist firmly over the sink — you’ll see a surprising amount of liquid come out. Repeat with fresh paper towels if needed until the zucchini feels dry to the touch. Set aside. (📸 Photo tip: You want the zucchini looking fluffy and dry, not wet and clumpy. That’s the sign you did it right.)
- Mix the dry ingredients: In a medium bowl, whisk together the flour, baking powder, baking soda, cinnamon, nutmeg, cloves, and salt. Set aside.
- Mix the wet ingredients: In a large bowl, whisk the melted butter with both sugars until smooth — it’ll look a little grainy and that’s fine. Whisk in the eggs one at a time, then the vanilla. The mixture should look glossy and smooth.
- Combine wet and dry: Pour the dry ingredients into the wet and stir with a spatula until just combined — a few streaks of flour are okay. Fold in the shredded zucchini. The batter will be thick and slightly fluffy. Scrape it into the prepared pan and spread evenly. (📸 Photo tip: Use an offset spatula to smooth the top. The even layer helps the bars bake uniformly.)
- Bake: Bake for 22–26 minutes, until a toothpick inserted in the center comes out with moist crumbs (not wet batter). The edges should be golden and starting to pull away from the pan. Cool the bars completely in the pan on a wire rack — about 30 minutes. Don’t rush this step; warm bars will absorb the frosting and turn gooey.
- Make the caramel frosting: While the bars cool, melt ¼ cup butter in a small saucepan over medium heat. Add ½ cup packed brown sugar and 3 tablespoons milk (or cream). Stir constantly until the mixture comes to a gentle simmer — about 2 minutes. Remove from heat and let it cool for 3 minutes. Stir in 1½ cups powdered sugar and ½ teaspoon vanilla. Beat with an electric mixer (or a strong arm and a whisk) until smooth and thick. If it’s too thin, add a little more powdered sugar; if too thick, add a few drops of milk. I’ve accidentally made it too thin once — I just chilled it for 10 minutes and it thickened up beautifully.
- Frost and finish: Spread the caramel frosting over the cooled bars. Let it set for about 10 minutes, then sprinkle with flaky sea salt if you have it. The salt cuts the sweetness and makes the whole thing look finished — not just frosted.
- Slice and serve: Run a knife under hot water, wipe dry, then slice. The hot knife gives clean edges. I cut 12 rectangles (3 rows by 4). Serve at room temperature.
Sunday Prep = Stress-Free Dessert All Week
These bars are perfect for meal prep because they actually get better on day two — the flavors meld and the zucchini disappears even more. I bake a double batch on Sunday and we have snacks until Wednesday. My secret: I wrap individual bars in plastic wrap so the kids can grab one for lunch or an after-school treat without me having to portion anything.
- Fridge: Store in an airtight container layered with parchment. They keep up to 5 days. Pop a slice in the microwave for 10 seconds to soften the frosting before eating — trust me.
- Freezer: Yes! Freeze the unfrosted bars (well wrapped) for up to 3 months. Thaw at room temperature, then make a fresh batch of caramel frosting. That way the frosting stays silky and doesn’t get grainy.
- Reheat: Microwave a single bar for 10–15 seconds. Don’t go longer or the frosting gets runny. The bars are also lovely cold straight from the fridge — that’s my private preference.
Things I Wish I’d Known the First Time
- Don’t over-mix the batter: Stir until the flour is mostly incorporated — a few streaks are okay. Over-mixing develops gluten and makes the bars tough. I did it once and they came out like hockey pucks. Not my best moment.
- Cool completely before frosting: I know you want to eat them now. I know. But warm bars + caramel frosting = a melty mess. Let them sit at least 25 minutes. I pop the pan in the fridge for 15 minutes if I’m in a hurry — that works too.
- Flaky salt is not optional: The first time I made these, I forgot the salt and they were good. The second time I remembered, and my husband said “these are the best bars you’ve ever made.” The salt hits the sweetness right before it gets cloying. It’s the one garnish that pulls the whole dessert together.
- Make extra frosting: The recipe makes just enough for a generous layer. If you’re one of those people who likes a thick frosting mountain (I see you, I am you), multiply the caramel frosting by 1.5. I have zero judgment.
Swaps That Actually Work
- Dairy-Free: Use melted vegan butter (Miyoko’s or Earth Balance) and a dairy-free milk (oat or cashew work best). The frosting might be a touch softer — chill the bars before serving. This version is what I make for my sister-in-law and she’s never complained.
- Gluten-Free: Swap the all-purpose flour for a 1:1 gluten-free baking blend (I like King Arthur Measure for Measure). Don’t use a single flour like coconut or almond — the texture will be dense and greasy. Add an extra tablespoon of milk to the batter. My gluten-free friend said these are “better than my grandma’s zucchini bread.” High praise.
- Kid-Friendly (no salt, less sweet): Skip the flaky salt on top and reduce the granulated sugar to ⅔ cup. The bars are still sweet enough. My kids eat them for breakfast — I don’t tell them there’s zucchini. Sheer parenting genius.
- Spiced Up (adult version): Add ½ teaspoon cardamom to the dry ingredients and use dark brown sugar instead of light. The cardamom adds a warm, almost floral note that pairs beautifully with caramel. I make this version when it’s just adults around.
Questions I Get About These Bars All the Time
Q: Why did my bars turn out dense and wet?
A: Ugh, I’ve been there. The likely culprit is not squeezing enough moisture out of the zucchini. You want to really wring it until no more liquid drips out. Another possibility: your baking soda or powder is old. Test by dropping a pinch into hot water — it should fizz vigorously. If it doesn’t, it’s time to replace them. You’ve got this next time!
Q: Can I make these without eggs?
A: Yes! I’ve tested this with a flax egg (1 tablespoon flaxseed meal + 3 tablespoons water per egg, let sit 10 minutes). The bars are slightly more fragile but still delicious. They won’t puff up as much, so bake them an extra 2–3 minutes. I’ve also used a chia egg and it’s fine. Just expect a slightly denser texture.
Q: How long do these last? Can I freeze them?
A: At room temperature, 2 days in an airtight container. In the fridge, they keep 5 days. For freezing, I recommend freezing the unfrosted bars (up to 3 months) and making fresh frosting when you’re ready to serve. If you freeze them frosted, the caramel can get grainy as it thaws. But if you’re desperate, wrap each bar tightly in plastic, then foil — they’ll be fine for up to a month.
Q: What do you serve with these?
A: Honestly, they’re a standalone snack — coffee or milk is all you need. For a summer dessert, I serve them with a scoop of vanilla ice cream and maybe a few fresh berries on the side. The contrast of cold ice cream and tender bar is magical. For a brunch, put them out on a cake stand alongside a fruit platter. They also travel beautifully — I’ve brought them to picnics and they hold up perfectly.
More Recipes My Family Makes on Repeat
If you liked these bars, here are a few others that get the same reaction at our table:
- Brown Butter Banana Bread — The only banana bread recipe I’ll ever use, with a nutty brown butter glaze that’ll make you forget about chocolate.
- Lemon Blueberry Zucchini Muffins — The perfect breakfast muffin — tender, not too sweet, and the lemon cuts through the richness.
- Salted Caramel Chocolate Chip Cookies — The cookie version of this bar, with pools of caramel and a flaky salt finish.
I hope these become a staple in your kitchen the way they have in mine. If you try them, drop a comment below — I love hearing how they turn out for you! And tag me on Pinterest or Instagram so I can see your creation.
📌 Caramel frosted zucchini bars that stay moist without turning soggy — save this recipe for your next late-summer gathering or meal prep Sunday.

Caramel Frosted Zucchini Bars
Equipment
- 9×13-inch Baking Pan
- Box grater
- Paper towels
- Electric mixer
- Small saucepan
Ingredients
For the Bars
- 1 cup all-purpose flour
- 1/2 teaspoon baking powder
- 1/2 teaspoon baking soda
- 1 teaspoon cinnamon
- 1/4 teaspoon nutmeg
- 1 pinch cloves
- 1/4 teaspoon salt
- 1/2 cup unsalted butter, melted
- 3/4 cup granulated sugar
- 1/4 cup packed brown sugar
- 2 large eggs, room temp
- 1 teaspoon vanilla extract
- 1 cup shredded zucchini (from about 1 medium zucchini)
For the Caramel Frosting
- 1/4 cup unsalted butter
- 1/2 cup packed brown sugar
- 3 tablespoons milk or cream
- 1 1/2 cups powdered sugar
- 1/2 teaspoon vanilla extract
- 1 pinch salt
Optional Finish
- Flaky sea salt (like Maldon)
Instructions
- Preheat the oven to 350°F. Grease a 9×13-inch pan or line with parchment paper with overhang for easy lifting.
- Grate the zucchini on the large holes of a box grater. Place the shreds in a clean kitchen towel or stack of paper towels and squeeze firmly over the sink to remove as much moisture as possible. Repeat if needed until the zucchini feels dry. Set aside.
- In a medium bowl, whisk together the flour, baking powder, baking soda, cinnamon, nutmeg, cloves, and salt.
- In a large bowl, whisk the melted butter with both sugars until smooth. Whisk in the eggs one at a time, then the vanilla, until glossy and smooth.
- Pour the dry ingredients into the wet and stir with a spatula until just combined — a few streaks of flour are fine. Fold in the shredded zucchini. The batter will be thick. Scrape into the prepared pan and spread evenly with an offset spatula.
- Bake for 22–26 minutes, until a toothpick inserted in the center comes out with moist crumbs (not wet batter). Cool the bars completely in the pan on a wire rack — about 30 minutes.
- While the bars cool, make the caramel frosting: In a small saucepan over medium heat, melt 1/4 cup butter. Add 1/2 cup packed brown sugar and 3 tablespoons milk or cream. Stir constantly until the mixture comes to a gentle simmer — about 2 minutes. Remove from heat and let cool for 3 minutes. Stir in 1 1/2 cups powdered sugar and 1/2 teaspoon vanilla. Beat with an electric mixer until smooth and thick. Adjust consistency with more powdered sugar or milk as needed.
- Spread the caramel frosting over the cooled bars. Let set for about 10 minutes, then sprinkle with flaky sea salt if desired. Slice with a hot, dry knife into 12 rectangles. Serve at room temperature.






