There are 4 ways to get from Johannesburg to Francistown by plane, bus, 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.
Fly to Francistown Airport
best- Fly from Johannesburg International Airport (JNB) to Francistown Airport (FRW)plane JNB - FRW
3h 33m$272–420Bus
cheapest- Take the bus from Newtown Bus Terminus to Francistown Bus Rankbus
8h 30m$35–45Drive 697.2 km
- Drive from Johannesburg to Francistowncar 697.2 km
8h 22m$98–141Fly to Bulawayo, drive
- Fly from Johannesburg International Airport (JNB) to Bulawayo (BUQ)plane JNB - BUQ
- Drive from Bulawayo (BUQ) to Francistowncar
4h 13m$244–374
Johannesburg International Airport (JNB) to Francistown Airport (FRW) flights
Comparing Your Travel Options
The cheapest way to get from Johannesburg to Francistown is to bus which costs $35 - $45 and takes 8h 30m.
The fastest way to get from Johannesburg to Francistown is to fly which takes 3h 33m and costs $270 - $420.
Yes, there is a direct bus departing from Newtown Bus Terminus and arriving at Francistown Bus Rank. Services depart twice a week, and operate Wednesday and Sunday. The journey takes approximately 8h 30m.
The distance between Johannesburg and Francistown is 586 km. The road distance is 697.2 km.
The best way to get from Johannesburg to Francistown without a car is to bus which takes 8h 30m and costs $35 - $45.
It takes approximately 3h 33m to get from Johannesburg to Francistown, including transfers.
Johannesburg to Francistown bus services, operated by Khanda Express, depart from Newtown Bus Terminus station.
The best way to get from Johannesburg to Francistown is to fly which takes 3h 33m and costs $270 - $420. Alternatively, you can bus, which costs $35 - $45 and takes 8h 30m.
Johannesburg to Francistown bus services, operated by Khanda Express, arrive at Francistown Bus Rank station.
Yes, the driving distance between Johannesburg to Francistown is 697 km. It takes approximately 8h 22m to drive from Johannesburg to Francistown.
What companies run services between Johannesburg, South Africa and Francistown, Botswana?
Air Botswana, South African Airways, and Airlink fly from Johannesburg International Airport (JNB) to Francistown Airport (FRW) twice daily. Alternatively, Khanda Express operates a bus from Newtown Bus Terminus to Francistown Bus Rank twice a week. Tickets cost $35–45 and the journey takes 8h 30m.
- Website
- airbotswana.co.bw
Flights from Johannesburg International Airport to Francistown Airport via Gaborone
- Ave. Duration
- 4h 11m
- When
- Wednesday, Friday, and Sunday
- Estimated price
- $230–320
- Website
- flyairlink.com
Flights from Johannesburg International Airport to Bulawayo
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- $200–600
- Website
- fastjet.com
Flights from Johannesburg International Airport to Bulawayo
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- $180–270
- Phone
- +267 2416471
- khandasexpress@yahoo.com
Bus from Newtown Bus Terminus to Francistown Bus Rank
- Ave. Duration
- 8h 30m
- Frequency
- Twice a week
- Estimated price
- $35–45
- Schedules at
- khandaexpress
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 Travelling to the UK: What do I need to know?, Is ride-sharing platform BlaBlaCar right for you?, and How to get from Gatwick Airport into central London - to help you get the most out of your next trip.
Booking & Getting There
There are 31+ hotels available in Francistown.