Do not exchange anywhere in the US and do not exchange in the SJO airport currency exchange windows, they are a ripoff.
There is only 1 place in the airport that gives good rates, and that's a small bank booth on the departure level. But you have to exit arrivals, cross the street to the garage, and take the escalator back up and enter the departures terminal. When you enter, you'll see a square booth (lots of red) on the right side marked BAC (Bank of San Jose). There they will exchange at the current rate or very very close to it. You will need your passport.
The current official exchange rate can be found here:
http://www.bncr.fi.cr/BN/index.asp?c=homeLook for the table in the center of the page that has the current rates. The COMPRA (buy rate) is how many colones you can buy for 1 USD, used when exchanging dollars to colones. The VENTA (sell rate) is how many colones it will cost you to buy back 1 USD, used when exchanging colones to dollars.