Laravel 12 New Features: What SaaS Builders Need to Know in 2026
Laravel 11 reached end-of-life on March 12, 2026. If your SaaS is still on 11.x, you're running on unsupported software right now.
Most upgrade guides list features. This one tells you which features actually matter for a SaaS product, which breaking changes will bite you if you ignore them, and how to start a fresh Laravel 12 SaaS from the right foundation in 2026.
Here's what you'll walk away with:
- The 3 breaking changes you need to fix before upgrading
- The 4 Laravel 12 new features worth getting excited about
- A step-by-step upgrade path for existing Laravel 11 SaaS apps
- How to start a new Laravel 12 SaaS from scratch with the right stack
Laravel 12 released on February 24, 2025. I've been building on it since day one at Laracopilot. Here's what's actually changed.
Why Laravel 12 matters more than previous releases (for SaaS builders)
"Laravel 12 is a maintenance release" is technically true. It's also misleading.
For SaaS builders specifically, three things happened in this release that change how you build:
-
Laravel 11 EOL is now. As of March 12, 2026, Laravel 11 gets no bug fixes. Security fixes stop February 24, 2027. Any SaaS still on 11.x is accumulating risk with every week that passes.
-
WorkOS AuthKit ships in a starter kit. Enterprise SSO, passkeys, and social auth, free up to 1 million monthly active users. This used to require days of integration work. Now it's a starter kit selection.
-
The upgrade is fast. The Laravel team is explicit: "Most apps upgrade without code changes." There are three real breaking changes. That's the full list.
Skipping this upgrade isn't a conservative choice. It's a compounding liability.
The 3 breaking changes you need to fix before upgrading
Before touching anything else, audit your app for these three issues. They're the only things that will actually break.
1. UUIDv7 replaces UUIDv4 in HasUuids
If any of your Eloquent models use the HasUuids trait, Laravel 12 now generates UUIDv7 (time-ordered) instead of UUIDv4 (random) by default.
This is an improvement. UUIDv7 is time-ordered, which means better index performance in multi-tenant tables. Composite indexes on [tenant_id, created_at] benefit significantly. Benchmarks show query times dropping from 200ms to 15ms with proper UUIDv7 indexing on high-volume multi-tenant tables.
But it's a breaking change if you have existing data with UUIDv4 values and your code makes assumptions about UUID ordering.
If you need to revert to UUIDv4 (for backward compatibility with existing datasets):
use Illuminate\Database\Eloquent\Concerns\HasVersion4Uuids as HasUuids;
For new SaaS projects: don't revert. UUIDv7 is what you want.
2. Carbon 3 is mandatory
Laravel 12 requires Carbon 3. If your app uses Carbon 2, you need to audit before upgrading.
The likely culprits:
- Third-party packages that depend on Carbon 2 — check
composer.jsonfor conflicts - Date helper methods that changed between Carbon 2 and 3
- Tests that rely on specific Carbon behavior for date arithmetic
Run composer outdated before upgrading. Any package pinned to Carbon 2 needs to be updated or replaced first.
Most major Laravel packages updated to Carbon 3 compatibility within weeks of release. If a package you depend on is still Carbon 2 only, that's your first problem to solve.
3. SVG uploads are blocked by default
The image validation rule no longer accepts SVG files. This is a security improvement: SVGs can contain JavaScript and have historically been used in upload-based XSS attacks.
If your app allows SVG uploads (user avatars, logos, icon uploads), you now need to opt in explicitly:
// Option 1: Validation rule
'avatar' => 'image:allow_svg'
// Option 2: File validation
File::image(allowSvg: true)
If you allowed SVG uploads before and never added this opt-in, those uploads silently fail after upgrading. Check your upload forms before you deploy.
The 4 Laravel 12 new features that actually matter for SaaS
Once you've handled the breaking changes, here's what to actually get excited about.
1. New starter kits — Breeze and Jetstream are deprecated
Laravel 12 ships with entirely rebuilt starter kits. Breeze and Jetstream still work, but they're no longer the recommended starting point. The new defaults are:
Frontend stacks (Inertia 2 + TypeScript + shadcn):
- React starter kit
- Vue starter kit
- Svelte starter kit
Livewire stack:
- Livewire starter kit with Flux UI and Volt
This is a meaningful improvement. The previous starters felt bolted together. The new React/Vue/Svelte kits use Inertia 2 and TypeScript out of the box — the actual stack most teams want. The Livewire kit's Flux UI integration is genuinely polished.
For any new SaaS project in 2026, start with one of these. Generating the full scaffold with these new starter kits from the command line takes under 10 minutes. With Laracopilot, you describe the SaaS and get the scaffold, models, admin panel, and tests generated automatically on top of the starter kit — closer to 8 minutes for the entire foundation.
2. WorkOS AuthKit — enterprise auth from day one, free up to 1M users
This is the Laravel 12 new feature that most upgrade guides undercover.
WorkOS AuthKit handles:
- Social auth (Google, GitHub, Microsoft)
- Passkeys (WebAuthn)
- SSO (SAML/OIDC for enterprise clients)
- MFA
- User management
Free for up to 1 million monthly active users. For comparison, building even basic SSO support used to take 2–3 days of integration work and often required a paid Auth0 or Okta plan.
It ships as a starter kit option. When you run laravel new myapp, you can select WorkOS AuthKit as your authentication stack.
The SaaS use case: if you're targeting enterprise clients who require SSO, this removes a feature that previously cost weeks to build and $500+/month to run. Now it's a day-one checkbox.
One important note: WorkOS AuthKit replaces the standard Laravel auth for the starter kit — it's not a drop-in addition. If you're on an existing app, weigh the migration cost against the auth features you need. For new projects, the answer is simple: pick WorkOS if you have any enterprise ambition.
Building a new Laravel 12 SaaS? Laracopilot scaffolds complete Laravel 12 projects with your chosen starter kit, WorkOS auth, UUIDv7 models, and Filament admin panel — generated from a prompt in under 8 minutes. Try it free.
3. UUIDv7 — better performance in multi-tenant databases
This was mentioned as a breaking change. But for new SaaS projects, it's purely good news.
UUIDv7 is time-ordered: the first 48 bits are a Unix timestamp, which means new rows are inserted in chronological order. For a multi-tenant SaaS with thousands of rows per tenant, this dramatically reduces index fragmentation.
A single-database multi-tenancy setup using global scopes can scale to 100+ tenants before you need to consider database-per-tenant architecture. The UUIDv7 performance improvement compounds as your tenant count grows.
The pattern that works:
protected static function booted(): void
{
static::addGlobalScope('tenant', function (Builder $builder) {
if (auth()->check() && auth()->user()->tenant_id) {
$builder->where('tenant_id', auth()->user()->tenant_id);
}
});
}
Combined with a composite index on [tenant_id, status] and UUIDv7 primary keys, query performance on multi-tenant tables improves 30–40% compared to the same setup with UUIDv4.
4. AI/agentic development — what's here now vs. what's coming
Laravel 12 includes the foundation for AI-native application development. This is the most forward-looking part of the release.
What's shipping now:
- Laravel AI SDK: Official first-party package for integrating AI features into Laravel applications
- MCP (Model Context Protocol) support: Laravel apps can act as MCP servers, connecting directly to Claude and other AI clients
- Laravel Boost: AI-powered development tooling to accelerate building within the framework
What to understand about timing: these features are early-stage. The AI SDK is functional but the ecosystem is still maturing. MCP support opens up interesting possibilities for AI-powered Laravel tools (Laracopilot uses this pattern), but you won't use it in a standard CRUD SaaS.
For most SaaS builders, the practical value of this in 2026 is: the framework is being built for AI-native applications. If you're building something with AI at the core — an AI assistant, a document processing tool, an agentic workflow — Laravel 12 now has first-party support for that. That's the right foundation.
How to upgrade a Laravel 11 SaaS to Laravel 12 (step by step)
The official Laravel upgrade guide covers the full details. Here's the practical path.
Prerequisites
Before upgrading:
- PHP 8.2 or higher: Laravel 12 requires PHP 8.2–8.5. Check your current version:
php --version - Audit Carbon 3 compatibility: Run
composer outdatedand identify any packages still on Carbon 2 - Identify HasUuids models: Search your codebase for
HasUuids, decide whether to let UUIDv7 take over or revert specific models to UUIDv4 - Identify SVG upload fields: Check all file input fields in your app
The upgrade process
Step 1: Update composer.json
laravel/framework: ^12.0
Step 2: Run the upgrade
composer update
Step 3: Address breaking changes in order
- Update any
HasUuidsmodels that need the UUIDv4 alias - Update Carbon 2 date handling to Carbon 3 syntax
- Add
allow_svgto any SVG upload validation rules
Step 4: Clear and rebuild caches
php artisan config:clear
php artisan cache:clear
php artisan route:clear
php artisan view:clear
php artisan migrate --force
php artisan queue:restart
Step 5: Run your test suite
If you have Pest or PHPUnit tests covering your core flows (you should), this is where they pay off. Run the full suite before deploying to staging.
When Ravi's team at a B2B SaaS startup upgraded their 18-month-old Laravel 11 application to Laravel 12 in February 2026, the whole process took one afternoon. Two of their three models used HasUuids — they added the HasVersion4Uuids alias to both to preserve existing IDs. One admin panel had an SVG logo upload field, one line fix. Carbon 3 had zero conflicts. They were on 12.x and deployed to production by 5pm. The Laravel team's claim that "most apps upgrade without code changes" is close to accurate. The exceptions are documented. The upgrade is fast.
How to start a new Laravel 12 SaaS from scratch
If you're starting fresh, this is the cleanest moment you'll have. The right decisions now save months later.
Choosing your stack
React starter kit: Best for SaaS with complex frontend interactivity, teams with React expertise, or apps where the UI is a key differentiator. The Inertia 2 + TypeScript + shadcn stack is production-grade.
Livewire starter kit: Best for SaaS where development speed matters more than frontend sophistication, or teams that want to stay PHP-first. Flux UI is much better than Livewire's previous UI options.
Vue starter kit: Valid choice if you have Vue expertise. Same modern stack as the React kit.
My recommendation for most SaaS MVPs: start with the Livewire kit. It's faster to build features in Livewire + Volt for typical SaaS CRUD (billing flows, dashboards, admin panels). Migrate to React when you need frontend complexity you can justify.
WorkOS vs standard auth — when to use which
Use WorkOS AuthKit if:
- You're targeting mid-market or enterprise customers
- SSO is on your product roadmap (even 6 months out)
- You want passkeys support without building it
Use standard Laravel auth if:
- You're consumer-facing with simple email/password auth
- You're validating with a small cohort before adding enterprise features
- You have existing auth infrastructure you're migrating from
The migration from standard auth to WorkOS isn't trivial after launch. Make this call before you start.
Scaffold the foundation with Laracopilot
The new Laravel 12 starter kits are better than Breeze and Jetstream, but they're still blank slates. You still need to add models, migrations, Filament admin panels, policies, API resources, and Pest tests.
At Laracopilot, you describe the SaaS in plain language. It generates the full scaffold: models with UUIDv7, migrations, Eloquent relationships, Filament v3 admin panel, API resources, authentication, and Pest tests — all on the Laravel 12 stack you've chosen. The output is production-ready Laravel code pushed directly to your GitHub.
That's the 8-minute path to a working Laravel 12 SaaS foundation. Everything after that is your actual product.
Laravel 12 vs Laravel 13 — should you wait?
No.
Laravel 13 is expected in Q1 2027. Building on Laravel 12 now doesn't create a difficult upgrade path. Laravel's upgrade policy is designed for annual upgrades with minimal breaking changes. If 12.x to 11.x took an afternoon, 12.x to 13.x will be similar.
The opportunity cost of waiting is real: your app runs on 12.x bug fixes until August 2026 and security fixes until February 2027. Building on 11.x (EOL) when 12.x is available isn't caution. It's accumulated risk.
Build on 12.x now. Upgrade to 13.x next year when it's stable and your team has capacity.
The bottom line on Laravel 12 for SaaS builders in 2026
Three things to do this week:
-
If you're on Laravel 11: Audit the three breaking changes (UUIDv7, Carbon 3, SVG uploads), run the four-step upgrade, and deploy. Most teams finish in one afternoon.
-
If you're starting a new SaaS: Pick the React or Livewire starter kit, decide on WorkOS vs standard auth upfront, and use UUIDv7 from the beginning on all your models.
-
If you want to skip the boilerplate entirely: Try Laracopilot free. Describe your SaaS, get a full Laravel 12 scaffold in 8 minutes, and spend your time on the actual product.
Laravel 12 is the right foundation for any SaaS you're building in 2026. WorkOS enterprise auth alone would have been a release-defining feature in any previous version. Combined with UUIDv7 performance gains, rebuilt starter kits, and AI SDK groundwork, this is the framework release that SaaS builders actually needed.
The upgrade is fast. The benefits are real. The window to start on the right foundation is now.
Alpesh Nakrani is VP of Growth at Laracopilot, the world's first Laravel-native AI app builder, and Devlyn.ai, an AI-enabled senior developer hiring service.
Try Laracopilot free at laracopilot.com — scaffold a complete Laravel 12 SaaS in under 8 minutes.