Preheat your oven to 350°F (175°C). Line a baking sheet with parchment paper for easy removal of the toffee.
In a medium saucepan, melt the butter over medium heat. Once melted, whisk in the brown sugar, granulated sugar, heavy cream, vanilla extract, and salt. Stir until the mixture is smooth and well combined.
Increase the heat to medium-high and bring the mixture to a boil. Allow it to boil without stirring for about 5 minutes. Use a thermometer to check the temperature; it should reach around 300°F (hard crack stage).
Remove the saucepan from heat and pour the toffee mixture over the prepared baking sheet. Use a spatula to spread it evenly across the pan.
In a separate bowl, mix the crushed graham crackers with cinnamon and sprinkle it evenly over the warm toffee. Let it sit for about 5 minutes to set slightly.
If using chocolate chips, melt them in a microwave-safe bowl for 30-second intervals, stirring in between until smooth. Drizzle the melted chocolate over the coated toffee and use a spatula or knife to swirl it through.
Allow the toffee to cool completely at room temperature, or place it in the refrigerator for about 15 minutes to speed up the process.
Once set, break the toffee into pieces and serve.
For added flavor, try sprinkling a bit of sea salt on top of the chocolate before it sets.
Store any leftover toffee in an airtight container at room temperature for up to one week.