There are 5 ways to get from Port Elizabeth to Johannesburg by plane, bus, train or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Fly to Johannesburg  •  2 h 27 min

  1. Fly from Port Elizabeth (PLZ) to Johannesburg (JNB) PLZ - JNB

$71 - $263

Cheapest option

Bus, train  •  25 h 24 min

  1. Take the bus from Port Elizabeth to East London
  2. Take the train from East London to Johannesburg Park

$17 - $35

3 alternative options

Fly to Lanseria  •  4 h 5 min

  1. Fly from Port Elizabeth (PLZ) to Lanseria (HLA) PLZ - HLA

$176 - $462

Bus  •  15 h 20 min

  1. Take the bus from Port Elizabeth to Johannesburg

$30 - $55

Drive  •  11 h 44 min

  1. Drive from Port Elizabeth to Johannesburg 663.7 miles

$100 - $150

Questions & Answers

Yes, there is a direct bus departing from Port Elizabeth and arriving at Johannesburg. Services depart once daily, and operate every day. The journey takes approximately 15 h 20 min.

More details

The distance between Port Elizabeth and Johannesburg is 894 km. The road distance is 1061.9 km.

Get driving directions

The best way to get from Port Elizabeth to Johannesburg without a car is to bus which takes 15 h 20 min and costs .

More details

It takes approximately 2 h 27 min to get from Port Elizabeth to Johannesburg, including transfers.

More details

Port Elizabeth to Johannesburg bus services, operated by InterCape, depart from Port Elizabeth station.

More details

The best way to get from Port Elizabeth to Johannesburg is to fly which takes 2 h 27 min and costs . Alternatively, you can bus, which costs and takes 15 h 20 min.

Mode details

The quickest flight from Port Elizabeth Airport to Johannesburg Airport is the direct flight which takes 1 h 30 min.

Search flights

Port Elizabeth to Johannesburg bus services, operated by InterCape, arrive at Johannesburg station.

More details

Yes, the driving distance between Port Elizabeth to Johannesburg is 1062 km. It takes approximately 11 h 44 min to drive from Port Elizabeth to Johannesburg.

Get driving directions

Safair, Mango, British Airways and South African Airways offer flights from Port Elizabeth Airport to Johannesburg Airport.

Search flights

Map of how to get from Port Elizabeth to Johannesburg.
Launch map view
  • Distance: 558.6 miles
  • Duration: 2 h 27 min

What companies run services between Port Elizabeth, South Africa and Johannesburg, South Africa?

South African Airways, British Airways and two other airlines fly from Port Elizabeth to Johannesburg hourly. Alternatively, InterCape operates a bus from Port Elizabeth to Johannesburg twice daily. Tickets cost $35 - $55 and the journey takes 15 h 20 min. Greyhound ZA also services this route once daily.

Airlines
South African Airways
Website
flysaa.com
Flights from Port Elizabeth to Johannesburg
Ave. Duration
1 h 37 min
When
Every day
Estimated price
$55 - $420
Flights from Port Elizabeth to Johannesburg via East London
Ave. Duration
2 h 35 min
When
Monday to Friday
Estimated price
$55 - $440
Flights from Port Elizabeth to Johannesburg via Durban
Ave. Duration
3 h 10 min
When
Wednesday and Friday
Estimated price
$55 - $440
Flights from Port Elizabeth to Lanseria via Durban
Ave. Duration
3 h 25 min
When
Monday, Thursday, Friday and Sunday
Estimated price
$170 - $700
Flights from Port Elizabeth to Lanseria via Johannesburg, Durban
Ave. Duration
5 h 50 min
When
Sunday
Estimated price
$85 - $180
Flights from Port Elizabeth to Lanseria via Capetown
Ave. Duration
7 h 20 min
When
Monday to Friday
Estimated price
$85 - $180
British Airways
Website
britishairways.com
Flights from Port Elizabeth to Johannesburg
Ave. Duration
1 h 35 min
When
Every day
Estimated price
$65 - $450
Safair
Website
flysafair.co.za
Flights from Port Elizabeth to Johannesburg
Ave. Duration
1 h 40 min
When
Every day
Estimated price
$55 - $290
Flights from Port Elizabeth to Lanseria via Capetown
Ave. Duration
6 h 35 min
When
Saturday
Estimated price
$90 - $200
Mango
Website
flymango.com
Flights from Port Elizabeth to Johannesburg
Ave. Duration
1 h 40 min
When
Every day
Estimated price
$55 - $410
Flights from Port Elizabeth to Lanseria via Johannesburg, Durban
Ave. Duration
5 h 50 min
When
Sunday
Estimated price
$85 - $180
Comair
Website
comair.co.za
Flights from Port Elizabeth to Lanseria via Durban
Ave. Duration
3 h 45 min
When
Monday, Tuesday, Wednesday, Thursday, Friday and Sunday
Estimated price
$75 - $280
Flights from Port Elizabeth to Lanseria via Capetown
Ave. Duration
4 h 30 min
When
Every day
Estimated price
$110 - $230
Train operators
Shosholoza Meyl
Phone
086 000 8888
Website
shosholozameyl.co.za
Train from East London to Johannesburg Park
Ave. Duration
20 h 1 min
Frequency
3 times a week
Estimated price
$17 - $35
Schedules at
shosholozameyl.co.za
2nd Class
$17 - $25
1st Class
$29 - $40
Bus operators
InterCape
Phone
+27 (0)21 380 4400
Email
info@intercape.co.za
Website
intercape.co.za
Bus from Port Elizabeth to Johannesburg
Ave. Duration
15 h 20 min
Frequency
Twice daily
Estimated price
$35 - $55
Schedules at
intercape.co.za
Greyhound ZA
Phone
+27 11 611 8000
Email
enquiries@greyhound.co.za
Website
greyhound.co.za
Bus from Port Elizabeth to Jonannesburg
Ave. Duration
15 h 45 min
Frequency
Once daily
Estimated price
$30 - $45
Schedules at
greyhound.co.za
Baz Bus
Phone
+27 21 422 5202
Email
info@bazbus.com
Website
bazbus.com
Bus from Port Elizabeth to East London
Ave. Duration
4 h 15 min
Frequency
4 times a week
Schedules at
bazbus.com

Want to know more about travelling around the world?

Rome2rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including How to get from Gatwick Airport into central London, Heading to Europe? Read this before you buy a Eurail Pass and Best ways to travel around Australia - to help you get the most out of your next trip.

More Questions & Answers

There are 930+ hotels available in Johannesburg. Prices start at $41 USD per night.

More details

The best way to get from Port Elizabeth to Port Elizabeth Airport is to taxi which takes 4 min and costs .

More details