The best time to buy a Christmas tree depends on your personal preference and how you plan to use the tree. If you're looking for a fresh cut tree, the best time to buy is typically late November to early December, as the trees will still be fresh and full of needles. If you're looking for an artificial tree, the best time to buy is typically after Christmas, when prices are usually discounted. However, many retailers will begin to discount artificial trees as early as the beginning of November, so you may be able to find a good deal before Christmas.