Best islands to visit in the Zanzibar archipelago and how to get to each.
The Zanzibar archipelago is made of 4 main islands and several islets surrounding each island. Of the islands ( Unguja, Pemba, Mafia, and Latham island), only Latham is still uninhabited.
Zanzibar Island ( Unguja island)
Unguja is the largest island and is commonly referred to as Zanzibar island. It's surrounded by several islets but only these are three are inhabited: Mnemba, Tumbatu, and Uzi islands.
Mnemba Island is a famous scuba diving site ( They also offer diving courses here) and is popular for its atoll. Its marine reserve is home to a diverse population of Indian ocean wildlife including humpback whales, green sea turtles, dolphins, whale sharks, and coral reef fish. This island is North East of Unguja. Boats headed to the island cross from Muyuni beach which is 90 minutes drive from Stone Town, the capital of Zanzibar island. Boat crossing from Muyuni beach to Mnemba island takes 20 minutes. Nungwi town on Zanzibar's north coast is the closest town to Muyuni beach. The only accommodation available on the island is 11 guest cottages owned by Mnemba island resort. This makes finding accommodation here quite difficult especially during peak seasons. Most people visit Mnemba as a day trip from Zanzibar.
Tumbatu Island is located Northwest of Unguja. Boats headed to Tumabatu leave from Mkokotoni beach, it's only a 2 km crossing and takes less than 10 minutes by speedboat. Tumbatu is one of the oldest Swahili settlements and is cheaper to visit compared to Zanzibar. The island has two villages Jongowe to the south and Gomani to the North. Transport between the two villages is by boat or bicycle. There are no vehicles on this island.
Uzi Island is connected by a causeway from Unguja Ukuu ruins. Most of this island is privately owned and part of it is under conservation.
Caution: This island is not a tourist area. Some tour companies scam tourists by charging high rates for Uzi island tours yet there's no activity you'll do while on the island. However, during low tide, you can cross using the causeway or boat from Unguja, see the island and get back to Unguja. There's no accommodation available on Uzi island.
Pemba is the second largest island on the archipelago a 100 kilometers North-East of the main island of Unguja.
There are two ways of getting to Pemba.
There are ferry trips from all towns in Unguja to Pemba. Ferry trips take at least 4 hours depending on where the ferry docks in Pemba. Most ferries dock in Chake Chake, Wete, or Mkoani. Chake Chake is the island's capital and where the only airport in Pemba is located. There's also a ferry to Wete from Wasini island in Kenya twice weekly.
Pemba is popular for the best diving spots on the Tanzanian coast and clove farming.
Almost all islets around Pemba are uninhabited and not easily accessible by public transport.
Mafia Island is located south of Zanzibar. The main town in Mafia island is Kilindoni, everything on the island is accessible by tuk-tuk if you stay in Kilindoni. There's a small airport, flights are only available from Dar es Salaam. Coastal aviation and Auric air are currently the only airlines operating this route.
There are also ferries serving Mafia island from the small village of Nyamisati. Ferry fare is approximately $8, ferry rides take 4 hours. Ferry scheduled are not consistent and depend on tides, there's a single daily trip either in the morning or afternoon depending on tides. Nyamisati is a 4 hours drive from Dar es Salaam. You'll find buses to Nyamisati at Bagala bus station in Dar es Salaam.