Ferries
Dar es Salaam - Zanzibar (Stone Town)
Azam Marine
Schedule
Multiple daily departures, roughly 7:00 AM - 3:30 PM; crossing ~1.5-2 hours
Price
~USD 35-50 non-resident (economy), plus ~USD 5 port fee
The most frequent operator on the main route. Book the afternoon ferry in high season - morning sailings sell out.
Zanzibar (Stone Town) - Dar es Salaam
Azam Marine (Kilimanjaro fast ferry)
Schedule
Return legs throughout the day, roughly 9:30 AM - 4:30 PM; crossing ~1.5-2 hours
Price
~USD 35-50 non-resident (economy)
Buy tickets at the official office beside the port, not from beach touts, and arrive 45+ minutes early for security checks.
Dar es Salaam - Zanzibar (Stone Town)
Zan Fast Ferries
Schedule
Daily departures morning and afternoon; crossing ~1.5-2 hours
Price
~USD 30-45 non-resident (economy)
A second operator on the same corridor - handy as a fallback when Azam is fully booked. Check the day's sea-condition warnings; sailings can be cancelled when it is rough.
Zanzibar (Stone Town) - Pemba (Mkoani)
Azam Marine
Schedule
Typically 1-2 sailings daily, morning departure; crossing ~2 hours
Price
~USD 45-60 non-resident
The main link to Pemba island. Schedules shift seasonally - confirm the day before at the port office.
Dala Dala
Stone Town - Nungwi / Kendwa (north coast)
Fare: ~TZS 4,000-5,000 (about USD 1.5-2)
REALISTIC EXPECTATIONS
This is the cheapest way north but the slowest: expect 1.5-2.5 hours with stops, a full minibus at rush hours, and luggage squeezed on your lap or the roof. There is no fixed timetable - the dala dala leaves when it is full. Pay the conductor in cash and keep small notes.
Stone Town - Paje / Jambiani (southeast coast)
Fare: ~TZS 4,000-6,000 depending on distance
REALISTIC EXPECTATIONS
You will likely change dala dalas once along the way (usually at Bambi or Koani junction). Comfort is basic, music is loud, and the last departure back to Stone Town is typically mid-to-late afternoon - miss it and you are negotiating a taxi.
Stone Town - Bububu (short north-western hop)
Fare: ~TZS 1,000-2,000
REALISTIC EXPECTATIONS
A short, frequent local run useful for reaching the beaches just outside town. Board at the Darajani market stand; the ride takes 20-40 minutes and can get standing-room-only by mid-morning.
Taxis & Transfers
Airport (ZNZ) - Stone Town
~7 km, 15-25 minutes. Agree the fare before getting in: roughly TZS 25,000-40,000 (USD 10-15) to town. Most hotels arrange pickups for a similar price.
Airport (ZNZ) - North coast (Nungwi / Kendwa)
~55-60 km, 1-1.5 hours. Expect USD 35-50 one way. Night transfers cost more; confirm the price covers all passengers, not per person.
Airport (ZNZ) - Southeast coast (Paje / Jambiani)
~55 km, about 1 hour via the new road. Roughly USD 35-45 one way. Ask for air conditioning - afternoon heat on the east road is serious.
Ferry terminal - Stone Town hotels
The port is a 10-20 minute walk from most Stone Town hotels, but porters and touts meet every ferry. Keep bags zipped, decline unsolicited 'help' with luggage, and use the official taxi rank if you need a ride.