This post may contain affiliate links. Please read our disclosure policy.
Homemade caramel fudge the way it should be — creamy, rich, and melt-in-your-mouth smooth.

This old-fashioned caramel fudge is made with just 4 main ingredients: sugar, butter, milk, and sweetened condensed milk. No fancy gear, no candy thermometer. Just a bit of patience and some good stirring (okay, a lot of stirring) — and you get that golden, buttery, slightly chewy texture that’s impossible to stop eating.
It’s the kind of treat I make when I want something nostalgic but still impressive enough to gift. And if you love this, you might also like my healthy chocolate fudge or homemade caramel sauce — both super simple and just as satisfying.

Watch how to make it
Ingredients

- Condensed milk: The secret to that ultra-creamy, melt-in-the-mouth finish. I used my recipe homemade condensed milk, but store-bought works just as well.
- Sugar – I used demerara sugar for a richer caramel flavor, but light brown or regular white sugar work just fine too.
- Unsalted Butter: Helps create that smooth, creamy texture. If you’re using salted butter, just skip the added pinch of salt later.
- Whole milk – Loosens the mixture as it cooks. Stick with full-fat dairy for the best texture.
- Sea salt: Just a pinch helps balance the sweetness. You can also sprinkle a little flaky salt on top for a salted caramel finish.
See the printable recipe card below for full information on ingredients and quantities.
How to make caramel fudge
Melt and simmer the ingredients: Add the sugar, butter, milk, and sweetened condensed milk to a saucepan over low heat. Stir gently as the butter melts and everything starts to combine. Once smooth, bring the mixture to a soft boil and simmer for about 10 minutes, stirring constantly. Scrape the bottom and sides of the pan regularly to keep it from catching or burning.

Check for the right temperature (the soft ball stage): The fudge is ready when it hits about 240–245ºF (115–120ºC). If you have a candy thermometer, clip it to the side of the pan. I sometimes use an infrared thermometer — both work!
No thermometer? No problem. Just drop a tiny spoonful of the mixture into a bowl of ice water. If you can roll it into a soft ball that holds its shape and doesn’t stick to your fingers, it’s ready. If it’s still runny or too sticky, let it simmer for a few more minutes and test again.

Cool and whisk: Once the fudge reaches the soft ball stage, take it off the heat and let it sit for a few minutes to cool slightly. If you’re adding anything extra — like vanilla, flaky salt, or chopped nuts — now’s the time to stir them in.
Then, whisk the mixture until it thickens. This can take up to 10 minutes, and you’ll feel it start to lose its shine and get heavier as it sets. The longer you whisk, the more crumbly the fudge will be once cooled — so stop as soon as it turns matte and starts to hold shape.

Pour, Set, and Slice: Pour the mixture into a parchment-lined tray — I used an 8-inch (20 cm) square pan. Spread it out evenly and press the top down gently with a spoon or spatula to smooth it out.
Cover the surface with another piece of parchment, then let it cool at room temperature. Once it’s no longer warm, transfer it to the fridge and chill until firm.
When set, slice into small bite-sized squares. I usually go for 1 to 1.5 inches, but no need to be exact — just make them snackable!

Store: Place the caramel fudge cubes in an airtight container and keep them in the fridge, pantry, or a cool cupboard. They’ll stay fresh for at least 2 weeks (even longer in the fridge).
If you’re gifting them, wrap the squares in wax paper or pop them into a festive tin — they make a beautiful treat for birthdays, holidays, or homemade hampers.

FAQs
No — they’re not the same. This recipe needs sweetened condensed milk for that thick, creamy texture. Evaporated milk won’t give the same result.
No problem. After simmering for around 10 minutes, drop a little of the mixture into a bowl of ice-cold water. If you can roll it into a soft ball that doesn’t stick to your fingers, it’s ready.
Usually, yes! Return it to the pan, add a splash of water (up to ½ cup), and reheat it gently. Let it simmer again and test for the soft ball stage. Then cool and beat as before.
If it still doesn’t set, don’t toss it — drizzle it over ice cream, spread it on toast, or turn it into a next-level caramel sauce.
Yes! Wrap the pieces individually and store them in an airtight container. They’ll keep in the freezer for up to 2 months. Let them thaw in the fridge before serving.
Recipe notes
- Use a non-stick saucepan – I like using a heavy, high-quality non-stick pan to make cleanup easier. A heavy-bottomed stainless steel pan also works well for even heat distribution.
- Choose the right tools – Metal spoons heat up fast while stirring. A wooden spoon or silicone spatula is much more comfortable for this.
- Whisk or beat the fudge – Once it’s off the heat, whisk the mixture to cool and thicken it. I prefer whisking over beating with a spoon — it’s faster and gives a smoother result.
- Line the tray properly – Don’t skip this! Parchment paper makes it so much easier to remove the fudge once it sets. Let the paper overhang the sides so you can lift it out cleanly.
More caramel treats to try
If you try this caramel fudge recipe, let me know how it goes in the comments below. I’d appreciate a recipe card rating and would love to see your recipe recreations – tag me on Instagram @Alphafoodie!

Caramel Fudge
Equipment
- Baking tray (8 inches/20 cm), covered with parchment paper hanging over the sides
Ingredients
- 1 can sweetened condensed milk (13–14 oz can)
- ⅔ cup whole milk
- 2 ¼ cups sugar demerara, turbinado, light brown, etc
- ½ cup butter unsalted
Instructions
- Add the condensed milk, milk, sugar, and butter to a saucepan. Heat over low heat and stir until everything melts together and the mixture becomes smooth and creamy.
- Bring to a soft boil and simmer for 10 minutes, stirring constantly to prevent burning. Scrape the bottom of the pan regularly.
- Check that the mixture reaches 240–245ºF (115–120ºC) using a thermometer.If you don’t have a thermometer, drop a small spoonful into a bowl of ice water. If it forms a soft ball that doesn’t stick to your fingers, it’s ready. If not, continue simmering for a few more minutes and test again.
- Remove from the heat and let it cool for a few minutes.
- Whisk the mixture using an electric mixer or wooden spoon until it thickens, turns matte, and begins to set. This may take up to 10 minutes.
- Pour the mixture into a parchment-lined 8-inch (20 cm) tray and smooth the top. Cover with another sheet of parchment. Let it cool to room temperature, then transfer to the fridge to chill until fully set.
- Slice into 1–1.5 inch squares and enjoy or store in an airtight container.
Video
Notes
Nutrition
Nutrition information is automatically calculated, so should only be used as an approximation.
I just have a quick question, how many oz/lbs does this recipe make? I’m planning to give this recipe to people in 4 oz containers and I don’t want to make too much. Thank you!
Hi Katherine,
The recipe yields approximately 16 oz (1 lb) of caramel fudge. If you’re planning to package it in 4 oz containers, this batch would fill about four containers. I hope this helps.
@Alphafoodie i have a quick question, do these go stale easily
Hi there,
You can keep the fudge in an airtight container at room temperature for up to 2 weeks or in the refrigerator for about 3 weeks.
only down side was having to convert it to cups. my kids loved this fudge ty
Hey Jessica! I’m so glad your kids loved the fudge! I totally get the cup conversion can be a pain, but it’s awesome to hear everyone enjoyed it! 🙂
I love this recipe. Easy to make and very tasty thank you
Glad you enjoyed it, Amelia!