Skip to content
KETOFOCUS.

Sweater weather calls for keto comfort food. Get Cozy →

Keto Toffee

Every holiday season I break out this buttery, crunchy keto toffee — salty, chocolate-covered candy that snaps clean when you break it, at 0.1g net carbs. A few ingredients, a candy thermometer, and 10 minutes on the stove.
  • 0.1gnet carbs
  • 0.3gprotein
  • 15minutes
  • 20servings

This post may contain affiliate links. See my disclosure policy.

If you love the sweet, buttery crunch of toffee but want to skip the sugar, this is the recipe I come back to every Christmas. I've been making it for years, and it's always the first thing to disappear from the dessert table. With just butter, Swerve brown sugar, a splash of vanilla, and sugar-free chocolate chips, you get a batch of crunchy, salty-sweet candy that snaps clean when you break it apart. The process is similar to making keto caramel candy, except you heat the mixture higher to the hard-crack stage for a firm candy instead of soft, chewy caramels.

Candied toffee in a pile topped with chocolate and nuts.

The sweetener you use makes or breaks this recipe. I use Swerve brown sugar because erythritol-based sweeteners crystallize hard when they cool, which is exactly what you need for that toffee snap. Allulose won't work here. I've tested it, and allulose makes chewy caramels, not crunchy toffee. Splenda brown sugar has maltodextrin in it, which doesn't set the toffee base firmly enough for the chocolate layer to bond on top. If you want this to turn out right, stick with an erythritol-based brown sweetener like Swerve or Lakanto golden.

If you've never made candy before, the thermometer part sounds intimidating. I get it. But here's what I've learned after making this more times than I can count: clip the thermometer to the side of the pan and leave it there. Every time I used to lift it to check, I got a different reading because I was measuring the air temperature, not the candy. Once I stopped touching it, my batches got consistent. The temperature climbs fast at first, then crawls as the moisture cooks off. When it hits 300 degrees, you're at the hard-crack stage. I've actually had my best results pulling closer to 310-315 with Swerve brown, which gives an even firmer snap. Use a heavy-bottomed saucepan and keep the heat at medium or lower. Thin pans create hot spots that cause the butterfat to separate.

My kids and I love the finished toffee with the chocolate spread on top, a generous layer of flaked salt, and crushed pecans pressed in while the chocolate is still warm. That salty-sweet contrast is the whole point. If you're into low-carb candy making, this sits right alongside my keto fudge and keto candy recipes as a holiday go-to.

What is English toffee?

Toffee is a hard candy made from butter and sugar, coated in chocolate. True English toffee doesn’t include nuts, but in most American versions, nuts get added for extra crunch. You’ll see almonds, peanuts, pecans, or walnuts depending on the recipe. I use pecans in mine because they pair well with the chocolate, but if you want it traditional, just skip the nuts.

My go-to sugar-free chocolate brands

I always use sugar-free chocolate to keep the carbs down. Here are the brands I’ve tested on this recipe:

I’ve used all four on this recipe and they all melt well on hot toffee. For a different flavor, try white chocolate or milk chocolate instead. If you like chocolate-forward treats, my keto chocolate mousse uses similar sugar-free chips.

A pile of keto toffee with crushed pecans on top.

What is the hard-crack stage?

Candy making is real science. The highest temperature you reach determines the texture. Between 300 and 310 degrees Fahrenheit, almost no water remains in the syrup. This is the hard-crack stage, and it’s what gives toffee, peanut brittle, and lollipop suckers their firm snap.

If you don’t reach 300 degrees, the candy comes out softer and more pliable, like saltwater taffy. I’ve made that mistake and ended up with chewy candy instead of crunchy toffee.

Here’s what I’ve learned about erythritol-based sweeteners specifically: they don’t behave exactly like sugar at these temperatures. Swerve brown won’t reach the same rock-hard brittleness as traditional toffee even at 300 degrees. I’ve had my best results pushing to 310-315 degrees with Swerve before pulling the pan off heat. The texture lands somewhere between saltwater taffy and true toffee, with a satisfying crunch that holds up well.

How to store and gift this toffee

I store mine in an airtight container at room temperature for up to a week. After that the quality starts to drop off. In the fridge, it lasts 2-3 weeks easily.

For longer storage, freeze the toffee in an airtight container or freezer bag for up to 3 months. It thaws quickly and tastes just as good.

TIP: If you’re stacking layers in a container, separate them with wax paper so they don’t stick together. This is especially important if you’re gifting it. I pack mine in cookie tins with wax paper between layers, keep the tin in the fridge until I’m ready to hand it off, and it always arrives in perfect shape. If you’re looking for more treats to add to a holiday gift box, my nanaimo bars and keto no-bake cookies also store and travel well.

How to make sugar-free toffee

  1. Add butter, sweetener, water, and salt to a heavy-bottomed saucepan and bring to a boil over medium heat.
  2. Stir occasionally and cook until the candy thermometer reads 300 degrees F.
  3. Remove from heat, stir in vanilla, and pour into a parchment-lined baking dish. Spread it out evenly and work fast.
  4. Let the toffee sit for several minutes until it starts turning opaque. Sprinkle chocolate chips evenly on top and cover with foil to trap heat.
  5. Once the chocolate softens, spread it evenly over the toffee and top with flaked salt and crushed pecans.
  6. Cover and refrigerate for 1-2 hours to set, then break into pieces.

Pro Tip: If the chocolate doesn’t melt after covering with foil, remove the foil and place the dish under the broiler for 30-60 seconds.

A dish filled with broken pieces of toffee with a creamer and milk behind.

Key ingredients and what to know about each

  • Butter: I use unsalted. Salted butter makes the recipe too salty, and salt levels vary from brand to brand.
  • Brown sugar-free sweetener: I use Swerve brown sugar, which bakes like regular brown sugar with no added sugars. This is the one sweetener I’ve tested that reliably hits hard-crack stage.
  • Sugar-free chocolate chips: Any sugar-free chocolate works here. If you only have a bar, crush it into small pieces.
  • Salt: Fine-grained salt goes into the toffee mixture. Flaked salt goes on top. I always go heavier on the flaked salt than you’d think. The salty-sweet contrast is what makes this addictive.
  • Pecans: Slivered almonds, crushed walnuts, or pumpkin seeds also work. If you love pecans in candy, try my keto coconut joys next.
Discover more keto recipes on our channel Hundreds of keto recipe videos, with step by step instructions and the tips that make keto easy.
KetoFocus
The recipe

Keto Toffee

Print Pin
Prep 5 min Cook 10 min Total 15 min Serves 20

Ingredients

Servings 20

Keto Toffee Ingredients

Step by Step Instructions

  1. Prepare baking dish

    Prepare a square baking dish or ¼ sheet baking tray by spraying cooking spray first then lining it with parchment paper. Set aside.

    A quarter baking tray lined with parchment paper.
  2. Boil ingredients

    In a large saucepan, add butter, sweetener, water and salt. Heat over medium heat and bring to a boil.

    For this step

    • 1 cup butter (unsalted)
    • 1 cup brown sugar free sweetener
    • 2 tablespoons water
    • 1/2 teaspoon salt
    A small saucepan with melted butter and brown sugar inside.
  3. Hard crack stage

    Continue to let cook, stirring occasionally until temperature on a candy thermometer reads 300 degrees Fahrenheit.

    A candy thermometer inside a saucepan with bubbled caramel mixture.
  4. Pour caramel

    Once temperature reaches 300 degrees, remove from heat. Immediately stir in vanilla and pour into prepared baking dish. Evenly spread toffee mixture and let sit for several minutes until the toffee starts to harden on the top. The toffee will turn opaque as it cools.

    For this step

    • 1 teaspoon vanilla extract
    Spreading toffee mixture in a baking tray with a spatula.
  5. Add chocolate

    When the majority of the toffee is opaque, sprinkle chocolate chips evenly over the toffee. Cover dish with aluminum foil and let sit for 4-5 minutes to help melt the chocolate.

    For this step

    • 7 oz sugar free chocolate chips
    Dark chocolate chips are sprinkled over a hot toffee mixture in a baking tray.
  6. You made it to the top!

    Remove the foil, and spread the melted chocolate evenly over the toffee. Top with flaked salt and crushed pecans. Cover again and place in the refrigerator to further set for 1-2 hours.

    For this step

    • 1 tablespoon sea salt flakes
    • 1/3 cup crushed pecans
    Spreading melted chocolate using a spatula.

Nutrition

Per serving: 1 piece

Calories
143
Fat
14.5g
Protein
0.3g
Total carbs
6g
Net carbs
0.1g

Nutrition is an estimate calculated from the ingredients listed. Brands vary, so check labels if you track closely.

Frequently Asked Questions

Can I use allulose instead of Swerve for this recipe?

I've tested allulose in this recipe and it won't give you toffee. Allulose doesn't crystallize when it cools, so instead of a hard, snappy candy, you end up with soft, chewy caramels. Delicious on their own (I have a keto caramel candy recipe if that's what you're after), but not toffee. For the hard-crack texture you need here, stick with an erythritol-based sweetener like Swerve brown or Lakanto golden.

Why does my sugar-free toffee stay soft and not harden?

Nine times out of ten, this is the sweetener. I've found that erythritol-based brown sweeteners like Swerve are the only ones that reliably hit hard-crack stage and set up firm. Monkfruit-allulose blends, Splenda brown, and straight allulose all make softer candy because they don't crystallize the way erythritol does. If you used Swerve and it's still soft, your thermometer might not be reading accurately, or you pulled it before truly hitting 300 degrees. I've had better results going to 310-315 with Swerve brown.

Can I substitute white sugar-free sweetener instead of brown?

I've made this with white Swerve and it works, but you lose the golden-brown color that makes toffee look like toffee. The brown sweetener also gives a slightly deeper, more caramel-like flavor that I prefer. If white is all you have, go for it. The texture will be the same.

Is toffee the same as caramel?

I make both, and they're different candies. My caramel candy uses cream and heats to the firm-ball stage for a soft, chewy texture. This toffee skips the cream, uses butter and sweetener only, and heats much higher to the hard-crack stage for a crunchy snap. Similar flavors, completely different textures.

My butter separated in the toffee mixture. How do I fix it?

I've had this happen when I rushed the heat. The fix: whisk in a tablespoon or two of hot water and keep stirring. If it's too far gone, pour the whole mixture into a food processor and blend until it comes back together (one of my readers saved a batch this way and I've used the trick myself since). To prevent it, use a heavy-bottomed saucepan and keep the heat at medium or lower. Thin pans create hot spots that cause the butterfat to break.

Can I make this without a candy thermometer?

I wouldn't try it. With regular sugar you can sort of judge by color, but erythritol-based sweeteners don't change color the same way. My early batches without a thermometer came out tacky in the middle because I was guessing. A basic clip-on candy thermometer costs a few dollars and takes all the guessing out. Clip it to the side of the pan and don't lift it to check. Lifting reads the air temperature, not the candy.

Why is my toffee grainy after cooling?

Erythritol can re-crystallize if the mixture cools unevenly or too slowly. I've found that packing the brown sweetener firmly when measuring (the way you'd pack brown sugar) gives more consistent results. Don't over-stir once the mixture reaches temperature either. Stir occasionally while it's heating, but once you pour it into the dish, leave it alone and let it set undisturbed.

Does this taste like a Heath bar?

It's the closest sugar-free version of a Heath bar I've landed on. That buttery toffee snap under a layer of chocolate, with flaked salt on top, hits the same salty-sweet note I grew up loving in the real thing. The flaked salt is what pushes it from good to genuinely Heath-bar-like, so I never skip it. I've crushed a few pieces over a bowl of sugar-free ice cream and it tastes just like the candy-bar topping I used to buy.

Where can I find sugar-free toffee?

You mostly can't, which is why I make my own. Sugar free toffee is nearly impossible to find in stores, and this homemade version takes 5 minutes of prep and 10 minutes on the stove. A batch makes 20 pieces at 0.1 g net carbs each, and it keeps for a week at room temperature or 2-3 weeks in the fridge.

How to make keto candy at home?

A candy thermometer and a sweetener that crystallizes, like Swerve brown, are the two things that matter. For this toffee I boil 1 cup of butter with 1 cup of sugar free brown sweetener, 2 tablespoons of water, and 1/2 teaspoon of salt until the thermometer reads 300 degrees, then top with sugar free chocolate, flaked salt, and crushed pecans. The stove part takes 10 minutes.

Browse by ingredient
Similar recipes

People who cooked Keto Toffee also made

Reviews

Tap to rate

4.5 from 33 ratings, 24 written

Made this recipe?

Replying to Jill

Your rating

Ned

Well I nailed the hard crack stage on the first try and I have never been so proud of myself. The snap on this is incredible!

Reply

Lynette

I thought I followed the recipe exactly but my toffee was disgustingly too sweet and the toffee became a crumbly mess. Any ideas what went wrong?

Reply

Annie Lampella

Lynette, that crumbly texture is usually erythritol recrystallizing as it cools, and grainy crystals taste sweeter than they should. Which brown sweetener did you use? Swerve is the only one I get a clean snap from. Pack it firmly when you measure, and once you hit 300 degrees, stop stirring and pour fast.

Reply

Samantha

Watching it go from liquid to matte as it cools is weirdly satisfying. First candy attempt and somehow didn’t ruin it. Does the fridge help the chocolate set faster without wrecking the snap?

Reply

Annie Lampella

I refrigerate mine all the time and the snap holds. That crunch comes from the toffee layer, not the chocolate, so cold temps don’t touch it. About 10-15 minutes and the chocolate is fully set.

Reply

Samantha

Oh interesting, so it’s the toffee layer making that sound. Good to know the fridge is fine.

Reply

Todd

Espresso powder in the chocolate sounds like it’d push this into mocha territory, but a teaspoon just deepens it without tasting like coffee. The toffee’s sweet enough that the bitterness works with it instead of taking over. Made it twice now and can’t go back to plain chocolate.

Reply

Annie Lampella

Todd, two is where it tips into mocha for me. One teaspoon, that’s the line. The sweet toffee carries the bitterness instead of fighting it.

Reply

Todd

Good to know two tips it over. Sticking with one teaspoon.

Reply

Brandon

Making this this weekend and realized I don’t have a candy thermometer. Is there a cold water test or something to look for when it hits hard crack stage?

Reply

Brandon

Ordered one. Good call, I definitely would have eyeballed it and ended up with a sticky mess.

Reply

Annie Lampella

The cold water test should give you rigid threads that snap when you hit hard crack, but erythritol doesn’t read like regular sugar in the bowl, so it’s harder to read. My early batches came out tacky in the middle. Pure guessing. Grab a $10 digital thermometer before this weekend if you can.

Reply

Christina

Used a 9×9 dish and the toffee came out thicker than expected. Not complaining, but the snap is different at that thickness — less clean shatter, more of a satisfying chunk. Recipe doesn’t specify which size and it matters more than you’d think. Chocolate and pecans are excellent either way, but quarter sheet next time for more surface area.

Reply

Annie Lampella

Go with the quarter sheet. I should have called that out in the recipe, the 9×9 makes the toffee sit almost twice as thick and the snap completely changes. Thinner pour, cleaner break.

Reply

Chelsea

Around 275 degrees the kitchen starts smelling like a candy shop. Four batches in, I’ve learned to just trust the thermometer. Don’t pull it early. The toffee sets up so much harder at true hard crack, and I’ve stopped being surprised by how thin the layer looks when you pour it out. The flaky sea salt sounds like a finishing touch. It’s not. It changes how you taste the chocolate.

Reply

Annie Lampella

Four batches in and you get it. The thin layer when you pour freaks people out. I get messages every holiday season from people convinced something went wrong because there’s so little in the pan. Waiting for true hard crack instead of pulling at 270 is the whole difference between something that snaps and something that bends. The salt is not optional. I’ve made that mistake.

Reply

Christine

batch two. the kids have radar.

Reply

Annie Lampella

Two batches minimum. The snap when you break a piece off carries through the whole house.

Reply

Yuki

Tried swapping the pecans for slivered almonds since I had a bag I needed to use up, and the thinner slices meant almost every piece got both chocolate and almond in the same bite. I’d never used a candy thermometer and kept hovering over it, but 300 was easy to spot once the color changed. Four stars only because I poured it a little slow and one section ended up thicker than the rest. Already planning to do it right next time.

Reply

Annie Lampella

Slivered almonds spread flatter so more of the surface catches the chocolate, that’s actually a smarter swap. Next time pour the whole batch at once and just tilt the pan to even it out instead of trying to spread while you’re going.

Reply

Riley

My husband broke off a piece, heard it crack, and just stood there eating the rest. Didn’t ask what was in it, didn’t say a word about keto. Double batch next time, probably with walnuts.

Reply

Annie Lampella

That silent eating tells you everything. I’d toast the walnuts first, dry pan, 3 minutes. Raw against the chocolate doesn’t land the same.

Reply

Angela

I was convinced the sugar-free brown sweetener would never actually hit hard crack, every other keto toffee I’ve tried just turns into sad sticky candy. This one snapped clean. Like, actual toffee snap.

Reply

Annie Lampella

I’ve tested allulose in this and it just makes chewy caramels. Erythritol-based is the only one that actually gets there.

Reply

Dina

My daughter snapped off a piece and ran to tell her friend about it. Three months in and I had no idea keto candy could actually crack like that.

Reply

Annie Lampella

That crack is the whole point. Hard-crack stage on the thermometer is the only way to get it. My kids do the same thing.

Reply

Brian

My girlfriend is dairy-free so I’m thinking coconut oil instead of butter. Would it still get to the hard crack stage at 300 degrees the same way, or does the swap mess with that?

Reply

Annie Lampella

Coconut oil hits hard crack at 300 just fine. It separates more easily than butter though, so if oil starts pooling on top, pull off heat and whisk in a tablespoon of warm water fast. Flavor will be a little more neutral without the butter but the snap is the same.

Reply

Chris

Made a batch last Sunday and my teenager (who rates everything I cook as ‘fine’) pulled me into the kitchen asking what the crunchy stuff on top was. She meant the flaky sea salt, which honestly cracked me up. She has never once acknowledged a topping in her life. I’d give it five stars but my first attempt scorched around 280 because that temperature climbs fast once it gets going. Second batch I stayed right on it. And when it set up, that snap when you break it off is exactly what toffee is supposed to do.

Reply

Annie Lampella

A teenager walking into the kitchen voluntarily is the real five-star review. And yeah, it jumps fast toward the end. I hover right over mine from about 260 on.

Reply

Fatima

Every other keto toffee I tried came out grainy, but hitting 300 degrees exactly made all the difference.

Reply

Annie Lampella

300 is the number. Even 295 and mine stays a little soft in the center. The sweetener has almost no margin for error compared to real sugar.

Reply

K

Does the swerve brown sugar you use have allulose or just erythritol? When I followed your swerve Amazon link, I noticed the item pictures list nutrition/ingredient facts for 2 different types of swerve. Not your fault of course, but I want to make sure I use the correct item for the recipe. Thanks!

Reply

Annie Lampella Recipe author

I see what you are talking about. It looks like they have two different formulas out. I think both will work for this recipe.

Reply

Jill

Been making this and my husband and I love it!!!
The only thing we’ve noticed is we need to keep it in the refrigerator because when we leave it out the chocolate tends to get soft. We use brown sugar Splenda. We do everything else exactly like the recipe says. I’ve never used swerve. Do you know why the chocolate does this? We would love to give it away as gifts, but because the chocolate does that it’s hard to give it away if it’s gooey.
Thank you for this wonderful recipe!

Reply

Annie Lampella

Yeah, it’s almost definitely the Splenda. Brown sugar Splenda has maltodextrin in it, which doesn’t set the toffee base the same way erythritol does, so the chocolate on top never fully bonds to a firm layer. Swerve brown crystallizes hard when it cools, that’s what gives toffee that snap and keeps the chocolate stable. For gifting, try Swerve or Lakanto golden. The texture difference is pretty noticeable!

Reply

Angie

I made this today, and i feel the toffee part could have gone longer…higher than 300°. I have made candy all my life & this did not come to hard crack stage at 300°. Maybe because I used Swerve brown sugar replacement? I’m guessing the sweeteners may need more time than true sugar. It came to a very soft, crystallized stage. It also didn’t harden quickly. It took about an hour for it to become completely opaque. I used a brand new digital candy thermometer, so I don’t think that was the issue.

Reply

Annie Lampella

Yep, erythritol-based sweeteners don’t behave like sugar at high temps. 300° with Swerve is not the same as 300° with real sugar. I’ve had the best luck going to 310-315° with Swerve brown, then pulling it quickly. The long harden time is normal. Did it eventually get crunchy, or did it stay soft?

Reply

Laura

I’ve made this twice.

First time, I made it with the chocolate and it came out perfect. Trick is to melt butter on lower medium heat and after all ingredients are in slowly graduate to high for boil.

However, I loved the nuts and didn’t care for the chocolate so I made it without chocolate the second time. Reminds me of fudge with nuts. I added chopped hazelnuts and it’s now a family favorite.

If you stick to the instructions, no need to premix. This is a wonderful recipe.

Reply

Annie Lampella

Hazelnuts with toffee is such a good combo. And yeah, the slow heat ramp is exactly right (I learned that the hard way too). The chocolate-free version is almost a different recipe.

Reply

Marlene

Followed the instructions to a T and it came out just fine. I read through some of the comments. Some people just don’t know how to read or how to bake. This toffee is incredible. I just wish there was a keto saltine you could come up with so I can make that Christmas crack I keep seeing. My sister makes some and it is to die for!

Reply

Annie Lampella

Christmas crack is on my list. The saltine part is genuinely hard – most keto crackers go soft once the toffee soaks in. Still testing.

Reply

Keep going

More Dessert Recipes

See all 176 Dessert recipes

Get new recipes from Annie

One email a week. Unsubscribe whenever you like.