Old San Juan city walls and palm trees beside calm blue water in Puerto Rico

Cheap Flights from Miami (MIA) to San Juan (SJU)

  • About 1,045 miles
  • About 2.6 hours
  • Best months: Jan, Mar, Dec

Your search is ready

Want deals for this trip? Leave your email and we will send price alerts. It is optional: you can skip it and see prices now.

See our privacy policy. Prices open on our booking partner's site in a new tab.

San Juan is calling, and Miami travelers have plenty of options. Airlines on MIA to SJU include JetBlue, Spirit and American. Expect about 2.6 hours in the air and fares from $112 when you book at the right moment.

Tips for finding a lower fare

  • Try booking a Tuesday or Wednesday departure to San Juan; those days are quieter on most carriers.
  • Use a fare calendar and look at a full month before choosing dates.
  • Compare the total trip cost, including bags and seat fees, not just the base fare to SJU.

Airlines on this route

JetBlue, Spirit, American

Things to see in San Juan

  • Condado Beach
  • El Yunque

Frequently asked questions

When is the cheapest time to fly from Miami to San Juan?

Fares on MIA to SJU are often lower in Jan, Mar and Dec. Prices move with demand, so compare a few dates on the partner site before you decide.

How long is the flight from MIA to SJU?

A nonstop flight takes about 2.6 hours. Itineraries with a connection take longer, depending on the layover.

Which airlines fly from Miami to San Juan?

Carriers we commonly see on this route include JetBlue, Spirit and American. Schedules and availability change, so check current options when you search.

How far ahead should I book MIA to SJU?

For most domestic trips, booking about 1 to 3 months ahead gives a good balance of price and choice. Holiday travel is better booked earlier.

Is the price I see here the final price?

No. Fares shown on this page are indicative and change often. The final price, taxes and fees are shown on the partner site at booking.

Get a custom quote

Tell us about your trip and a travel agent will call or text you with options. This is a request, not a booking, and fares are not guaranteed.

See our privacy policy.