Drush only supports one install method. It requires that your Drupal site be built with Composer and Drush be listed as a dependency.

See the Drush 8 or Drush 9 docs for installing prior versions of Drush.

Install a site-local Drush and Drush Launcher.

  1. It is required that Drupal sites be built using Composer, with Drush listed as a dependency. Popular starter templates for that include drupal-project (Drush is included) and recommended-project (Drush must be added). If your Composer project doesn't yet depend on Drush, run composer require drush/drush to add it. After this step, you may call Drush via vendor/bin/drush.
  2. Optional. To be able to call drush from anywhere, install the Drush Launcher. That is a small program which listens on your $PATH and hands control to a site-local Drush that is in the /vendor directory of your Composer project.

See Usage for details on using Drush.


Drush 9+ cannot run commandfiles from Drush 8 and below (e.g. See our guide on porting commandfiles. Also note that alias and config files use a new .yml format in Drush 9.

Drupal Compatibility

Drush Version Drush Branch PHP EOL Drupal versions
6 7 -8.3 8.4+ 9
Drush 10 master 7.1+ TBD
Drush 9 9.x 5.6+ May 2020
Drush 8 8.x 5.4.5+ ⚠️
Drush 7 7.x 5.3.0+ Jul 2017
Drush 6 6.x 5.3.0+ Dec 2015
Drush 5 5.x 5.2.0+ May 2015

Supported and recommended
⚠️ Supported but not recommended
Compatible but no longer supported

❶: EOL date for Drush 8 tbd, but estimated to be in concert with Drupal 7 EOL.