If you're coming to Essaouira from a nearby big city in Morocco including Marrakech or Agadir we love to recommend a safe, reliable and inexpensive mode of transportation. We recommend either SupraTour Bus or CTM Bus! Our first recommendation is SupraTour and we'll let you know exactly why below.
These buses are reliable, timely, comfortable, safe and affordable. Basically everything a travel could desire!
The price per person for a one way trip from Marrakech to Essaouira ranges from 70-95dh or roughly (7-10Euro) and takes 3 hours. You stop half way through at a cafe for a restroom break and optional snack.
The reason we typically recommend SupraTour Bus is because its drop-off location in Essaouira is very convenient. SupraTour Bus station is right next to Bab Marrakech in the Medina of Essaouira so if you're like most tourists who are staying in the Medina, this option drops you off at an ideal location!
The CTM Station isn't as close of SupraTour but about a 30 minute walk or a 0.70 Euro taxicab ride away from the Medina.