For all the exams you have to schedule your exam date ahead
by going to Prometric Website
or Calling Prometric in the case of Step 1, Step 2 CK.
In the case of Step 2 CS you should be logging to this page in the NBME website
(for US students) or this page in the ECFMG website
They always tell us that we should schedule the test well ahead before the exam (like for example two months), but we all know that's not practical at all as we never know when we are going to be ready (by acing the NBME for example, or by finishing our study plan with our CS partner) only perhaps a week or few days before the exam.
When you go to the scheduling website you'll most likely see that seats are occupied all for the next 2 to 3 weeks and perhaps for over two months specially in the case of CS.
So, we tend to schedule well ahead so that we make sure to have the seat, but there's a nice trick here.
You'll often find a seat next week or even tomorrow!
Why? because many be people just drop out few days before their schedule as they just realized they are not ready.
So in most instances and almost all locations you can find yourself a seat within the next week or this week or even tomorrow.
So here's an example of scheduling your CS exam;
In the screen above you can see that on the left you get to choose the center and on the right you see the monthly calendar. This web page is not static it's dynamic and so whenever you click on a center (don't hit refresh in your browser) or click on a next or previous month, the appointments get updated.
When you click on a center name the system takes you to the nearest possible scheduling date for that center. So if you keep clicking on center names like changing from Phily to Chicago every minute you will see a change in the available seats. Keep in your mind that there are thousands of people logging in to that scheduling site every minute.
Also you can make the page refreshing procedure automated by following this trick here http://www.usmle-forums.com/usmle-step-2-cs-forum/9069-trick-check-cs-dates-availability.html
Early appointments (tomorrow or next week) will show up in the system for few minutes (and perhaps few seconds!) only and will disappear immediately as those thousands will immediately pick them up.
So you have to have some patience and you should allocate at least 3 to 5 hours of your time to do this. Sit in front of your computer screen and keep changing the pages and all of a sudden you'll see an available date tomorrow or next week. Once you see that immediately click on it.
You can also increase your chances if you keep searching in all 5 centers instead of keeping your search in the center of your preference. I think that spending few bucks more on a domestic flight and a motel is far better than losing all "the money" by waiting another 2 or 3 months!
But remember that once you get your early appointment you have to pay $150 to change it, so you must be sure that you are ready for tomorrow or for next week.
Good luck in getting your date!