Preheat oven to 350°F. Grease and flour a 9 x 5-inch loaf pan. Set aside.
In a large bowl, whisk together sugar, oil, and eggs. Add pumpkin and vanilla; whisk to combine. Sprinkle baking soda and salt over top; whisk until well blended. Stir in flour, cinnamon, nutmeg, allspice, cloves, and ginger; be careful not to over-mix. Gently fold in cranberries and nuts.
Transfer batter to the prepared pan. In a small bowl, stir together the granulated sugar and cinnamon for the topping. Sprinkle on top of the batter.
Bake for 50-55 minutes for dark or nonstick pans or about 60-70 minutes for glass, ceramic, or light pans. The bread is done when a toothpick inserted in the center comes out clean. Tent the loaf with foil during the final 15-20 minutes of baking if the top starts to get too dark. Remove the bread from the pan and cool on a wire rack before slicing and serving.
Notes
Do not over-mix the batter. It should come together so that everything is combined, but then stop stirring! Mixing too much will result in a dry, dense loaf.
The total baking time will vary depending on the type of loaf pan that you use. A dark metal, nonstick pan cooks the bread faster, so it may be done within 50-60 minutes. By contrast, a lighter metal pan, a glass pan, or a ceramic pan can easily require up to 70 minutes of baking in a 350°F oven. You can tell that your loaf is cooked through when you insert a toothpick or long stick deep into the center of the loaf and it comes out clean.
If using frozen cranberries, you will likely need to extend the baking time by a few extra minutes.
I use canned Libby’s 100% pure pumpkin, but you can substitute with 1 cup of fresh homemade pumpkin puree.
Make sure that you use 100% pure pumpkin puree, which is different from canned pumpkin pie filling or pumpkin pie mix. The pure pumpkin puree is unsweetened and doesn’t include any spices or other seasonings.