How far in advance depends on the times you want to go. As was said, if you want to go at peak times like Christmas, New Years, Spring Break, etc you will have to reserve well in advance. Off season is not so critical, but has been getting busier. We go off season every year and book our next trip right after returning from the previous one.