Shift with red gradient lettering

Frequently Asked Questions

Does Shift upgrade everything?

Not everything.

Shift attempts to upgrade your Laravel application so you just need to run composer update. However, given the dynamic nature of PHP, the infinite possibilities of code customizations, and changes within third-party dependencies, this is not always possible. When Shift can not reliably perform a change, a detailed comment will be added to the Pull Request for you to review.

Does Shift do more than the Laravel Upgrade Guide?


The Laravel Upgrade Guide focuses on new features and breaking changes, treating the rest as optional. Over time, only following the Laravel Upgrade Guide accumulates technical debt.

Shift upgrades all changes. This ensures your project is fully up-to-date with your version of Laravel and there are no future surprises. The goal is for your project to be as if it were running that version of Laravel all along.

Can I upgrade multiple versions at once?

To improve context and focus, Shifts are run incrementally. Doing so allows you to verify each upgrade to ensure you don't miss anything.

For tips on completing Shifts efficiently and running multiple Shifts, watch the Reviewing the Shift Pull Request and Upgrading old Laravel applications videos.

What if my project is not on Bitbucket/GitHub/GitLab?

Currently, these are the services which allow you to quickly connect your Laravel application to Shift.

All of these services offer free private repositories. You may always push a temporary copy of your repository to one of these services in order to run Shift.

Why does Shift need write access to my repositories?

Shift requires write access to create a new branch and open a Pull Request. This allows the process to be seamlessly automated from start to finish.

Once you merge the Pull Request, you are welcome to deauthorize the Laravel Shift application.

Does Shift keep a copy of my code?


Your code only lives on the Shift server while the upgrade process is running - less than a minute on average. After it completes, your code is forcefully removed from the Shift server. We're talking rm -rf *.

What if my boss/client/legal/paranoia won't let me share my project?

Some code comes with policies or agreements which prevent you from sharing it in any way.

That's why there's Shift for Docker - so you may run any Shift against one of your Laravel applications locally.

Can I pay with PayPal?


Simply start your order process. Once you reach checkout, send payment via PayPal to and include your Shift number.

Can I run the same Shift more than once?

All Shifts are single use. This is by design. For example, you don't need to upgrade the same version twice.

Of course if there is an issue, or you believe the automation might be improved by making some changes first, you may request a rerun by sending your Shift number to support.

What happens if things go wrong?

If a Shift fails, you will receive immediate feedback on how to resolve the problem yourself. Once you have, you may rerun your Shift again. If the rerun fails, you may contact support to take a look.

How may I contact Shift for additional support?

For basic support feel free to message @laravelshift on Twitter or email

If you want hands-on support with upgrading your application, Laravel, or PHP, check out the Human Shifts.

Still have questions?

No problem! Message @laravelshift on Twitter or email

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.