Shift with red gradient lettering

Upgrade Laravel 7.x to Laravel 8.x

The Laravel 8.x Shift automates the upgrade of your Laravel application from Laravel 7.x to Laravel 8.x. Using the Laravel 8.x Shift to automatically upgrade your Laravel application has an estimated time savings of 2 hours.

Laravel 8.x is the latest stable release. This means both Laravel and the Laravel 8.x Shift will continue to receive updates. Subscribe to a Shifty Plan to stay current forever.

Screenshot of a pull request with atomic commits for each change of the Laravel 8.x Shift


  • A Laravel application running Laravel 7.x.
  • A server running PHP 7.3 or higher.

Core Upgrades

The Laravel 8.x Shift automates many of the upgrades listed in the Laravel Upgrade Guide, including:

  • Upgrading changes in core files, including the HTTP Kernel, Exception Handler, and Service Providers.
  • Replacing references to the deprecated Resource class.
  • Renaming core methods to their new names.
  • Namespacing the Factories and Seeders.
  • Detecting backward incompatibilities within your application code.
  • Updating composer.json for Laravel 8.x and PHP 7.3.

Additional Upgrades

In addition to the Core Upgrades, the Laravel 8.x Shift performs additional upgrades beyond those listed in the Laravel Upgrade Guide, including:

  • Adopting the Laravel code style.
  • Modernizing PHP syntax, such as the short array syntax.
  • Converting to class based factories.
  • Using class based and array syntax routes.
  • Merging the deprecated model $dates property into $casts.
  • Automating and detecting changes required for PHPUnit 9.
  • Updating core config files to their Laravel 8 versions.
  • Bumping your dependency constraints for popular packages.

Manual Upgrades

There are some upgrades the Laravel 8.x Shift can not perform automatically. When Shift detects these it adds a detailed comment on the Pull Request to help guide any additional upgrade steps.

While Shift attempts to detect and automate the updates for popular community packages, you may need to update some of your dependencies manually. Always review the changelog for your dependencies for any additional updates.

Sign in with any of the following services to connect Shift with your Laravel project.

Don't use one of these services?

Temporarily push your project to a free, private repository on one of these cloud-based services or upgrade your project locally with Shift for Docker.