Public Transport in Costa Rica
Costa Rica has an extensive and affordable public bus system connecting San Jose to virtually every town in the country. Buses are the primary mode of transportation for locals and a budget-friendly option for travelers. Long-distance buses depart from various terminals around San Jose, not from a single central station. Service quality ranges from basic to comfortable coach-style buses on major routes.
Can I get around Costa Rica by bus?
Yes. Costa Rica has an extensive and affordable bus network connecting San Jose to nearly every town. Fares range from about $1 to $14 USD depending on distance. Buses are the primary transportation for locals.
Payment
Cash only (colones) on most buses. Exact change is helpful but not always required. Some urban San Jose buses accept a rechargeable card.
General Tips
- Buy tickets in advance for popular routes during holidays and weekends (Semana Santa, Christmas)
- Arrive at the terminal 30-60 minutes early to get a seat, especially on routes without reserved seating
- Long-distance buses usually have overhead luggage storage and undercarriage compartments
- Keep valuables close to you; petty theft can occur on crowded buses
- Most bus terminals have small shops, sodas (restaurants), and restrooms
- Buses generally run on time for departures but can be delayed by traffic and road conditions
- Sunday and holiday schedules are significantly reduced
- Download the Moovit app for urban San Jose bus routes and schedules
- Direct (directo) buses are faster than normal/colectivo buses that make all stops
- Air-conditioned buses are available on some major routes (Tracopa, Grupo Taca)
- Last buses depart earlier than you might expect; plan return trips carefully
Major Bus Routes from San Jose
| Route | Duration | Price | Frequency |
|---|---|---|---|
| San Jose to La Fortuna/Arenal Autotransportes San Jose - San Carlos | 4-4.5 hours | Approximately 3,000-3,500 colones (~$5-6 USD) | Approximately every 1-2 hours from 5:00 AM to 6:30 PM |
| San Jose to Manuel Antonio/Quepos Tracopa or Grupo Morales | 3.5-4 hours (direct), 5+ hours (normal) | Approximately 5,000-6,500 colones (~$9-11 USD) | Multiple daily departures, roughly every 2-3 hours from 6:00 AM to 7:30 PM |
| San Jose to Monteverde/Santa Elena Transmonteverde | 4-5 hours | Approximately 3,000-4,000 colones (~$5-7 USD) | 2 daily departures, typically 6:30 AM and 2:30 PM |
| San Jose to Puerto Viejo de Talamanca Autotransportes MEPE | 4.5-5.5 hours | Approximately 6,000-7,500 colones (~$10-13 USD) | 4-6 departures daily, from approximately 6:00 AM to 4:00 PM |
| San Jose to Tamarindo Empresa Alfaro / Tralapa | 5-6 hours | Approximately 6,500-8,000 colones (~$11-14 USD) | 2-3 daily departures, typically early morning and midday |
| San Jose to Liberia Pulmitan de Liberia | 4-4.5 hours | Approximately 4,500-6,000 colones (~$8-10 USD) | Frequent departures throughout the day, roughly every 1-2 hours from 6:00 AM to 8:00 PM |
| San Jose to Jaco Transportes Jaco / Grupo Morales | 1.5-2.5 hours (via Ruta 27) | Approximately 2,500-3,500 colones (~$4-6 USD) | Multiple daily departures, approximately every 2 hours from 5:00 AM to 7:00 PM |
| SJO Airport (Alajuela) to San Jose Tuasa (Station Wagon bus / Alajuela - San Jose route) | 30-50 minutes depending on traffic | Approximately 600-700 colones (~$1 USD) | Every 5-15 minutes during the day (this is the Alajuela-San Jose bus that passes the airport) |
| San Jose to Samara/Nosara Empresa Alfaro | 5-6 hours to Samara, 6+ hours to Nosara | Approximately 6,000-8,000 colones (~$10-14 USD) | 1-2 daily departures, typically around noon |
| San Jose to Limon Autotransportes Caribeños | 3-3.5 hours | Approximately 3,500-4,500 colones (~$6-8 USD) | Frequent departures roughly every 30-60 minutes from 5:00 AM to 7:00 PM |
Route Details
San Jose to La Fortuna/Arenal
- From
- Terminal 7-10 (Calle 12, Avenida 7-9)
- To
- La Fortuna de San Carlos
- Operator
- Autotransportes San Jose - San Carlos
- Duration
- 4-4.5 hours
- Price
- Approximately 3,000-3,500 colones (~$5-6 USD)
- Frequency
- Approximately every 1-2 hours from 5:00 AM to 6:30 PM
Some buses go via Ciudad Quesada (San Carlos) with a transfer. Direct buses are available but less frequent. The route passes through the Central Valley highlands before descending to the northern lowlands.
San Jose to Manuel Antonio/Quepos
- From
- Terminal Tracopa (Calle 5, Avenida 18-20) or Terminal 7-10
- To
- Quepos / Manuel Antonio
- Operator
- Tracopa or Grupo Morales
- Duration
- 3.5-4 hours (direct), 5+ hours (normal)
- Price
- Approximately 5,000-6,500 colones (~$9-11 USD)
- Frequency
- Multiple daily departures, roughly every 2-3 hours from 6:00 AM to 7:30 PM
Direct buses (directo) are significantly faster. The route goes via Ruta 27 and the Pacific coast highway. Manuel Antonio is about 7 km past Quepos; local buses connect Quepos to the park entrance.
San Jose to Monteverde/Santa Elena
- From
- Terminal 7-10 (Calle 12, Avenida 7-9)
- To
- Santa Elena (Monteverde)
- Operator
- Transmonteverde
- Duration
- 4-5 hours
- Price
- Approximately 3,000-4,000 colones (~$5-7 USD)
- Frequency
- 2 daily departures, typically 6:30 AM and 2:30 PM
Limited departures; book or arrive early. The last section of the road to Monteverde is steep, winding, and partially unpaved. An alternative route is bus to Tilaran or Las Juntas and then a local bus/taxi to Santa Elena. From La Fortuna, a popular option is the Jeep-Boat-Jeep transfer across Lake Arenal.
San Jose to Puerto Viejo de Talamanca
- From
- Terminal Caribeños / Gran Terminal del Caribe (Calle Central, Avenida 13)
- To
- Puerto Viejo de Talamanca (Caribbean coast)
- Operator
- Autotransportes MEPE
- Duration
- 4.5-5.5 hours
- Price
- Approximately 6,000-7,500 colones (~$10-13 USD)
- Frequency
- 4-6 departures daily, from approximately 6:00 AM to 4:00 PM
Route goes via Limon on the Caribbean coast (Ruta 32 through Braulio Carrillo National Park). Some buses stop in Cahuita before continuing to Puerto Viejo. Ruta 32 is prone to landslides in rainy season. Direct buses are available.
San Jose to Tamarindo
- From
- Terminal Alfaro (Calle 14, Avenida 3-5) or Terminal Tralapa
- To
- Tamarindo (Guanacaste)
- Operator
- Empresa Alfaro / Tralapa
- Duration
- 5-6 hours
- Price
- Approximately 6,500-8,000 colones (~$11-14 USD)
- Frequency
- 2-3 daily departures, typically early morning and midday
Long route through Guanacaste. Alternative: take a bus to Liberia (more frequent) and then a connecting bus to Tamarindo. Some buses may require a transfer in Santa Cruz.
San Jose to Liberia
- From
- Terminal Pulmitan (Calle 24, Avenida 5-7)
- To
- Liberia (Guanacaste)
- Operator
- Pulmitan de Liberia
- Duration
- 4-4.5 hours
- Price
- Approximately 4,500-6,000 colones (~$8-10 USD)
- Frequency
- Frequent departures throughout the day, roughly every 1-2 hours from 6:00 AM to 8:00 PM
One of the most frequent long-distance routes. Comfortable, air-conditioned buses available. Liberia is the gateway to Guanacaste beaches and Rincon de la Vieja. Liberia also has an international airport (Daniel Oduber/LIR).
San Jose to Jaco
- From
- Terminal 7-10 or Terminal Tracopa
- To
- Jaco (Central Pacific)
- Operator
- Transportes Jaco / Grupo Morales
- Duration
- 1.5-2.5 hours (via Ruta 27)
- Price
- Approximately 2,500-3,500 colones (~$4-6 USD)
- Frequency
- Multiple daily departures, approximately every 2 hours from 5:00 AM to 7:00 PM
One of the closest beach towns to San Jose, making this a popular and frequent route. Goes via the Ruta 27 toll highway. Buses continue to Herradura and some to Quepos.
SJO Airport (Alajuela) to San Jose
- From
- Juan Santamaria International Airport (SJO), Alajuela
- To
- San Jose (downtown, Avenida 2)
- Operator
- Tuasa (Station Wagon bus / Alajuela - San Jose route)
- Duration
- 30-50 minutes depending on traffic
- Price
- Approximately 600-700 colones (~$1 USD)
- Frequency
- Every 5-15 minutes during the day (this is the Alajuela-San Jose bus that passes the airport)
The cheapest way to get from the airport to San Jose. The bus stop is located on the main road outside the airport (not inside the terminal). Walk out of the terminal, cross to the main highway, and flag down the Alajuela-San Jose bus. Not ideal with heavy luggage. Taxis and Uber are more convenient alternatives ($25-40 USD to central San Jose).
San Jose to Samara/Nosara
- From
- Terminal Alfaro (Calle 14, Avenida 3-5)
- To
- Samara or Nosara (Nicoya Peninsula)
- Operator
- Empresa Alfaro
- Duration
- 5-6 hours to Samara, 6+ hours to Nosara
- Price
- Approximately 6,000-8,000 colones (~$10-14 USD)
- Frequency
- 1-2 daily departures, typically around noon
Limited schedule. Alternative: bus to Nicoya and transfer to a local bus to Samara or Nosara. Roads in the Nicoya Peninsula can be rough; some sections are unpaved.
San Jose to Limon
- From
- Gran Terminal del Caribe (Calle Central, Avenida 13)
- To
- Puerto Limon (Caribbean coast)
- Operator
- Autotransportes Caribeños
- Duration
- 3-3.5 hours
- Price
- Approximately 3,500-4,500 colones (~$6-8 USD)
- Frequency
- Frequent departures roughly every 30-60 minutes from 5:00 AM to 7:00 PM
Frequent and reliable service. Route passes through Braulio Carrillo National Park on Ruta 32. Limon is the gateway to Caribbean coast destinations (Cahuita, Puerto Viejo, Manzanillo). Connecting buses available in Limon.