Start by cleaning and drying your apples well so that the caramel properly sticks to them.
Heat a medium saucepan over medium-high heat. Add the brown sugar, corn syrup, and water. Cook the mixture until it turns golden brown and reaches 235°F (soft ball stage) on a candy thermometer. This should take about 10 minutes. Note: Don’t stir the mixture. Just swirl the pan to ensure it doesn’t burn.
Next, add the butter and heavy cream slowly. It will bubble and may splatter. Stand back! Note: Again, no need to stir. Just swirl the pan to mix.
The temperature of the caramel will drop when the cream is added. Cook the caramel again on medium-high heat until it reaches the soft-ball stage again (235°F). This should take another 5-7 minutes. Again, don’t stir the caramel, just swirl the pan as needed.
Once the mixture reaches 235°F, remove it from the heat and gently stir in the vanilla and salt. You don’t want to add bubbles to the caramel so don’t stir too vigorously.
Transfer the caramel to a slow cooker set on the “low/keep warm” setting. Stir the caramel occasionally to ensure it is warm all the way through. This caramel can be kept warm for up to two hours.
Place a popsicle stick through the center of the apple. Dip the apple in the caramel and swirl it around to coat on all sides. Before the caramel sets, add your desired toppings.
Place the apples on a parchment-lined sheet pan sprayed with nonstick spray and allow them to set before enjoying.
Store uneaten caramel apples in an airtight container in the refrigerator for up to 3 days.