I teach 2 SAT math courses. One is given in my school; every Junior takes it. The other is given over the summer. I'm not positive (since I don't run the course) but I think the cost is about $600 for 7 three hour classes.
As to whether or not it's worth it: a LOT of that depends on your son or daughter. As is the case in so many things, kids tend to get out of the course what they put into it.
I will tell you that I teach my SAT classes very differently than I teach my regular math classes. My regular classes are all about process. I want my kids to learn to reason their way through a math problem, and to master each step of the mathematical process being taught.
The SAT class is all about the quickest way to get the correct answer. We talk a lot about the tricks and the problem types that commonly appear.
So, for example, each week we come across a math problem, usually # 5 or 6 or 7, that's there mostly to waste time. I point it out each time we come across it. On a classroom test, I would try to be sure that each of my students knew how to get the correct answer. In SAT class, we talk about skipping that question and coming back to it if time allows-- the 3 minutes you spend on that one problem may mean 2 others you don't get to answer.
If you find the right class, I think they can be well worth the money. But you've got to get teachers who not only know their subject, but who also know the ins and outs of the SAT.
As to the timing, I would suggest the summer between Junior and Senior years. Let him take the SATs in May of Junior year without the course; you may find that he is more attentive once the scores come in and he knows how far he is from where he wants to be. Then he can take the SATs again in early October.