Laravel upgrades

Laravel 11 end of life: what to do now

Laravel 11 stopped receiving security fixes on March 12, 2026. If you are still on it, the practical question is whether to stop at Laravel 12 or go straight to Laravel 13. For most applications we would go to 13.

By itmarkerz Technologies. Updated 30 October 2026.

Where Laravel 11 stands

The framework gives each major release 18 months of bug fixes and two years of security fixes. Laravel 11 was released on March 12, 2024, so both windows have closed. These dates come from the Laravel release notes; our Laravel versions page tracks the rest.

Laravel versions, supported PHP versions and support end dates
LaravelPHPBug fixes untilSecurity fixes until
138.3–8.5Q3 2027March 17, 2028
128.2–8.5August 13, 2026February 24, 2027
118.2–8.4September 3, 2025March 12, 2026

Why Laravel 12 is a poor place to stop

Laravel 12 looks like the cautious choice, but its bug-fix window closed on August 13, 2026 and its security fixes end on February 24, 2027. Stopping there buys a few months, and then you pay for a second upgrade project.

Laravel 13 has security fixes until March 17, 2028. Laravel’s own release notes describe it as a relatively minor upgrade in effort, so the extra step rarely adds much to the work of reaching 12.

The exception is hosting. If you can’t move off PHP 8.2 yet, Laravel 13 is out of reach until you can, because it needs PHP 8.3 or later. In that case, go to 12 now and put the PHP move on the calendar: php.net ends 8.2 security support on 31 December 2026.

What the jump from 11 changes

The upgrade guides for each step list these as the changes most likely to reach application code.

From 11 to 12

  • HasUuids now generates version 7 UUIDs. If you need to keep the ordered version 4 format, switch to the HasVersion4Uuids trait.
  • Carbon 2 support is gone, so any code still on Carbon 2 moves to Carbon 3.
  • The image validation rule no longer accepts SVG files unless you allow them explicitly.
  • With no local disk defined in your config, the disk root moves to storage/app/private.

From 12 to 13

  • The CSRF middleware is now PreventRequestForgery. The old names remain as deprecated aliases, but test and route exclusions should move across.
  • A new serializable_classes cache option is set to false by default. Applications that store PHP objects in the cache must list those classes.
  • MySQL and MariaDB upsert calls with an empty uniqueBy now throw an exception.

Our Laravel 12 to 13 guide goes through the second step in detail.

How to decide this week

  1. Run composer why-not laravel/framework ^13.0. It names the packages holding you back.
  2. Check which PHP versions your host offers. PHP 8.3 or later opens the route to Laravel 13.
  3. Run composer audit to see known advisories against what you have installed today.
  4. Be honest about your tests. Little coverage means more manual checking, whichever version you pick.

If you would rather hand this over, our Laravel upgrade service starts with a free assessment and ends in a fixed quote. Published prices run $799–$2,999+ in USD, invoiced in USD, GBP, EUR or INR, depending on the size of the application, and the cost guide explains what moves the number.

Upgrades we have delivered

Questions

Will my Laravel 11 application stop working?

No. Nothing switches off. Laravel 11 stopped receiving security fixes on March 12, 2026, so a vulnerability found in the framework after that date is not patched for your version. The application keeps running with that exposure.

Can I skip Laravel 12 and go straight to 13?

You end up on 13 in a single project, but you still need to read both upgrade guides, because the changes in 12 apply to your code too. Composer only needs the final version constraint.

Do I have to change PHP as well?

Only if you are on PHP 8.2 and targeting Laravel 13, which supports PHP 8.3–8.5. Laravel 12 still accepts 8.2, but php.net ends 8.2 security support on 31 December 2026, so moving PHP is worth planning either way.

Still on Laravel 11?

Send us the repository or your composer.json and we will tell you whether going straight to 13 is realistic, and give you a fixed price.

We reply within one business day (IST).