The best time to buy a Christmas tree is usually in the late fall or early winter, just before the holiday season starts. This is when the trees are freshest and have had time to properly grow. It's also a good time to ensure that the tree will be available when you need it. If you wait until the Christmas season is in full swing, you may have a harder time finding a tree that is still in good condition.