The official currency is the colon, but American dollars are usually accepted as well.  You are generally better off paying in colones, and it's great to have small change on hand. The only reason why you should pay in dollars is if the price is in dollars. A lot of people will bring money to change or travelers checks to change, but you'll get the best rates by withdrawing cash in colones with your ATM card ( every town has at least one ATM). Credit cards are also accepted at most hotels and stores.  However, this depends on the area you are visiting.  More remote areas may be less apt to have restaurants and hotels equipped for credit card transactions.  This is due to inconsistent electrical service (which is required to get authorization on credit cards) and difficulty for businesses in collecting on credit card slips.  The merchant fees for credit cards are very high in Costa Rica from 7-9%.  Therefore, you will usually get better deals using cash or travelers checks.

If you really want to change money the old-fashioned way,  public banks such as Banco Nacional and Banco de Costa Rica have a better rate, but are usually slow and have long boring lines (but have lots of ATM machines, which are much faster). Private Banks such as Banco Cuscatlan, Banco de San Jose, Banco Banex are faster and give a better service.  HSBC aquired Banex several years ago.

Travelers checks are accepted at many super markets, pharmacies(farmacias) and can be cashed at local  banks.  The fee is usually very reasonable for cashing travelers checks but can vary depending on where you cash them.  You'll usually do better to cash a lump sum every few days at a bank. Bank costs for exchanging travelers checks are around 1%, sometimes with an additional flat fee of $US 1-5 per transaction. Banks are typically open from 9:00 a.m. until 4:00 p.m. but try to visit in late morning to avoid before & after work and lunchtime rushes that can cause long lines. Your passport is required-sometimes copies are accepted.