There are lots of bus options and times; here's all you need to know.

Esa página está disponible también en español.

Photo 1 of 4. Click to view slideshow.
Direct Buses from San Jose to Puerto Viejo leave from Terminal Atlántico Norte. The station is a bit decrepit but the buses are large and modern.

Buses from San Jose to Puerto Viejo

There are many different bus terminals in San Jose. Direct buses for Puerto Viejo leave from the Terminal de Autobus Atlantico Norte located on Calle 12 between Avenidas 7 and 9 in Barrio Mexico in San Jose. This is a little confusing since Puerto Viejo is in the Atlantic coast South but the name wasn't changed when the bus company serving Puerto Viejo moved there. If taking a taxi there to be completely clear you can ask for "parada del bus de MEPE, para Puerto Viejo Talamanca, antigua parada de bus de San Carlos" (see map).

Caution: there are two towns called Puerto Viejo. You want Puerto Viejo de Talamanca (also known as Puerto Viejo de Limon). The bus company that comes here is Transportes MEPE.

Last time we checked, ticket prices were 5,995 colones (about $10.00 US) for this approximately 4.5 hour trip and the bus makes one 15 minute stop at the MEPE terminal in Limon for bathrooms and something to eat. The trip to Cahuita from San Jose is a little less (5155₡, about $9.00 US) and takes 4 hours. Only the noon bus continues on to Cocles, Chiquita, Punta Uva and Manzanillo (the others turn around and continue to BriBri and Sixaola). So if you're staying south of town either get the noon bus or take a taxi or local bus to your hotel. The schedule is below.

tips and warningsStarting Nov 28, 2012 express buses to Puerto Viejo and Cahuita leave from Terminal Atlantico Norte (sometimes locally referred to as "Antigua parada de bus de San Carlos") located on Calle 12 between Avenidas 7 and 9 in Barrio Mexico in San Jose. Buses to Limon leave from the Caribbean Bus Terminal located on Calle Central about 8 blocks North of the Parque Central. Many websites and travel guides still specify the old terminal for buses to Puerto Viejo so make sure you go to the correct terminal.

Transportes MEPE direct service between San José and Puerto Viejo:

tips and warningsTemporary schedules are in effect while the Covid 19 crisis continues to affect tourism and travel. Please see the notes in the table below as to what services are currently running. We recommend you check the current schedule at the MEPE ticket office.

The service notice to the right also shows the revised schedule of San José express buses and is current as of Dec 11, 2021

Operating? San José
Puerto Viejo Bribri Sixaola
yes/sí 06:00 09:30 10:00 10:30 11:00
yes/sí 08:00 12:00 12:30 --- ---
yes/sí 10:00 13:30 14:00 14:30 15:00
Fr/Sa/Su 12:00 16:00 16:30 ---- ----
yes/sí 14:00 17:45 18:15 18:45 19:15
yes/sí 16:00 19:45 20:15 20:45 21:15
no 18:00 21:45 22:15 22:45 23:15

Operating? San José
Cahuita Puerto Viejo Manzanillo
Fr/Sa/Su 12:00 16:00 16:30 17:30

Tickets can be purchased in San Jose at the Atlantico Terminal (open daily from 5:30 am to 6:00 pm, look for the ticket office, not the bus stop). Transportes MEPE San José office phone number is +506 2257 8129 or you can reach them via WhatsApp at +506 7285 2592.

In the direction San José to the Caribbean, seats are reserved so please look for your assigned seat number on your ticket.

If the express bus schedule does not meet your needs, you can also take one of the very frequent buses to Limon (about 3 hours) and then transfer there to a bus heading to Puerto Viejo which will take another 1 1/2 hours or so. Please see detailed instructions for this method below.

Schedules are subject to change but scheduled departure times don't change often. Buses normally run full schedules every day with only Easter Sunday and Christmas Day having shortened schedules. Sometimes extra buses are added at peak times. However pickup time at intermediate stops (including Puerto Viejo) and the length of the trip can vary based on weather or road conditions. Confirm the schedule when purchasing your ticket or call ahead.

Transportes MEPE does not sell tickets online or by phone. Buses do occasionally sell out although the company will sometimes add extra buses leaving San José if needed. It's also possible at the last minute that they will only offer you a standing ticket which is not a pleasant way to make the trip.

There are some third party services who offer prepurchase of tickets. The one we have good experience with includes pickup at the airport or area hotels. A driver will meet your flight at the airport with your bus ticket already purchased so you are guaranteed a ticket and bring you to the bus terminal in San Jose where you catch your bus. To get more information or purchase this service:

Taxi/Bus Service: Schedule and Prices

Bus leaving from the main bus stop in Puerto Viejo

Buses from Puerto Viejo/Cahuita to San José

Tickets for the return express buses are available in person only at the bus stop in Puerto Viejo, the bus station in Cahuita or you can purchase them before you leave San Jose. They can be purchased for your return date at any time. They do occasionally sell out so if your date is fixed it is recommended to purchase your ticket at least 1 day in advance. However note that when travelling from the Caribbean to San José your seat is not reserved so if seating is important to you, push your way to the front of the line!

If you have bought your ticket in advance then it is possible to flag down the bus at one of its intermediate stops (e.g. in Playa Negra or Hone Creek but not just anywhere along the route) on the day of travel but this can be a little stressful as the express buses don't always routinely stop at those stops and you won't know why/if the bus is late so I'd recommend you just take a taxi into Puerto Viejo and board at the main bus stop.

tips and warningsStarting Dec 16, 2019 the schedule for the first three buses from Sixaola to San José has changed. The schedule below has been adjusted but other sources may show the old times (including MEPE\'s own website) so please use this schedule or the notices posted on the MEPE ticket offices for the current info.

tips and warningsCovid schedule adjustments are still in effect. The schedule below indicates which buses are currently operating.

Transportes MEPE direct service between Puerto Viejo and San Jose:

Operating? Sixaola
Bribri Puerto Viejo Cahuita San José
yes/sí 02:00 02:30 03:00 03:30 07:30
yes/sí 04:30 05:00 05:30 06:00 10:00
Sa/Su/Mo ---- ---- 07:30 08:00 11:30
yes/sí 08:00 08:30 09:00 09:30 13:00
yes/sí 11:00 11:30 12:00 12:30 16:30
no 12:00 12:30 13:00 13:30 17:30
yes/sí 15:00 15:30 16:00 16:30 20:30

Operating? Manzanillo
Puerto Viejo Cahuita San José
Sa/Su/Mo 07:00 07:30 08:00 11:30

The phone number for the Transporte MEPE office in Puerto Viejo is +506 2750-0023 and for Cahuita it is 2755-1011.

Note that the bus stations in San José are unfortunately where dishonest taxi drivers seem to gather waiting for tourists to overcharge. Please read our Costa Rica taxi guide for tips.

Connecting via Limon

There are also frequent buses (generally every half hour) between San Jose and Limon operated by Grupo Caribeños. They leave from the Caribbean Bus Terminal in San Jose located on Calle Central about 8 blocks North of the Parque Central (a different terminal from the express buses). From Limon you can catch a connecting bus to Puerto Viejo. The trip to Limon usually takes 2 1/2 to 3 hours and the bus to Puerto Viejo another 1 1/2 hours.

Note that in Limon you will need to transfer from the Grupo Caribeños bus terminal where the San José buses arrive to the MEPE terminal which is a few blocks away. If you have much luggage at all, take a taxi (it should cost no more than $2). It is not recommended to walk around Limon with conspicous amounts of luggage, it could make you a target. Before you head to Limon though, make sure there will be a connecting bus to Puerto Viejo otherwise you'll be stuck in Limon overnight or taking a taxi. The phone number of the Transportes MEPE office in Limón is +506 2758-1572.

See the local transport page for the bus schedules from Limon on to Puerto Viejo.

Other Bus Schedules

To get to Puerto Viejo on the bus from other locations such as Arenal or Pacific Beach towns you will need to first take a bus to San Jose. If you're coming from Arenal you can save time and hassle by instead taking a van shuttle or booking a rafting trip.

For routes in other parts of Costa Rica, you can find bus schedules and pickup locations for every public bus in Costa Rica from the official Costa Rica tourism board site here.

Looking for other transport options?

There are plenty of other ways to get here: tourist van shuttles (Interbus and others), whitewater rafting, private service, driving, flying and more. Check our transport overview page for more information.