Laravel 12 vs Rails 8 — PHP or Ruby for your 2026 stack
Laravel for SEA teams and shared hosting; Rails for US hiring and Redis-free ops under $6/month. Benchmark differences don't matter at typical traffic scale.
By Ethan
2,106 words · 11 min read
PHP is used by 18.2% of developers worldwide. Ruby sits at 5.2%. Laravel is the PHP framework of choice at 7.9% of all devs; Rails at 4.7%. By raw numbers, the PHP world is more than three times larger.
Then look at LinkedIn job listings. “Laravel Developer” — ~3,127 US openings. “Ruby on Rails Developer” — ~9,000+. Rails has three times more US listings despite PHP being three and a half times more popular.
If that tells you where the US startup industry landed in the 2014–2022 era and is now maintaining, you’ve already found the most important thing to know before picking a framework in 2026.
Short verdict: Pick Laravel if you’re staffing in Southeast Asia, want shared-hosting economics, or your team already writes PHP. Pick Rails if you’re hiring US engineers, want zero-Redis infrastructure for under $6/month, or are building something that needs Solid Queue running 20 million jobs a day out of the box.
Who this is for
Backend engineers and team leads evaluating a full-stack framework for a new project in 2026. This comparison covers Laravel 12.x (released February 24, 2025) and Rails 8.1.3 (released March 24, 2026). If you’re maintaining an existing Laravel 10 or Rails 7 app and wondering whether to upgrade, the migration paths are separate reads — this article is for fresh decisions only. Python teams facing a similar choice can find the equivalent breakdown in Django vs FastAPI 2026.
What we tested
- Laravel 12.x — released February 24, 2025; covers the new starter-kit generation (Inertia 2, Livewire 3, WorkOS AuthKit)
- Rails 8.1.3 — released March 24, 2026; the current stable version with Solid Queue, Solid Cache, Solid Cable, and Kamal 2 bundled by default
- Laravel Octane 2.x with Swoole — for the PHP persistent-process benchmark numbers
Performance numbers come from TechEmpower Framework Benchmarks Round 23, archived March 24, 2026. Hardware: HPE ProLiant DL360 Gen10 Plus · Intel Xeon Gold 6330 @ 2.00 GHz (56 cores) · 64 GB RAM · 40 Gbps NIC. We did not run separate benchmarks — see Caveats. Job market figures are from LinkedIn on May 16, 2026.
Laravel 12 vs Rails 8: findings
Performance
TechEmpower Round 23 Fortunes benchmark: Rails hit 42,546 requests per second. Laravel with PHP-FPM hit 16,800 RPS. Rails is 2.5× faster on this test.
Now put those numbers down.
Both frameworks sit at the bottom of the popular-framework bracket. When both frameworks are last in their bracket, the benchmark is not measuring your bottleneck. Any app handling under ~5,000 RPS on a single server — which includes most early-stage and mid-stage products — will not feel this difference in practice.
Laravel Octane complicates the comparison. Octane moves Laravel off PHP-FPM and into a persistent Swoole process, avoiding the full-bootstrap cost on each request. The persistent-process model can deliver a significant throughput jump within the PHP ecosystem, landing Laravel Octane in the same ballpark as stock Rails for typical CRUD workloads.
The honest summary: performance is not the deciding factor for either framework at normal scale. If you’re building something where 40,000 RPS on a single server matters, you probably already know that neither of these is your top choice.
Developer experience
Laravel 12 shipped a clean reset on its scaffolding story. Breeze and Jetstream — the previous auth starter kits — are deprecated. The new starter kits target React, Vue, or Svelte via Inertia 2, plus a Livewire 3 option for PHP-first teams. Authentication is handled by WorkOS AuthKit, which is free up to one million monthly active users. The auth-from-scratch problem is gone out of the box.
Eloquent ORM remains the productivity centerpiece. Relationships, eager loading, model factories, and the query builder all feel cohesive. For teams that think in PHP, the path from idea to working endpoint is short. The ecosystem around Eloquent — migrations, seeders, Tinker — makes database work predictable.
The documentation is excellent. Laravel has always invested heavily here, and 2026 is no different. Most features have working code examples in the official docs without requiring community wikis.
Rails 8.1’s headline is the Solid stack. Solid Queue, Solid Cache, and Solid Cable are now bundled and default — not optional packages you reach for, but the batteries that ship in the box. These three libraries eliminate Redis from the default Rails stack entirely. Background jobs, caching, and WebSockets run on your existing database. At 37signals, Solid Cache stores 10 terabytes of data with a full 60-day retention window and cut P95 render times in half. Solid Queue runs 20 million jobs per day for HEY alone. These are not toy numbers. (Source: Rails 8.0 announcement)
Kamal 2 ships bundled with Rails. It provisions a $4/month Hetzner VPS to production in under two minutes with SSL configured and zero-downtime deploys. You write no Dockerfile. You manage no container registry. If you’ve ever spent an afternoon wiring up Forge plus a VPS plus Redis plus Horizon, the contrast is sharp.
Active Record convention-over-configuration means less glue code for standard CRUD apps. The trade-off: when your app deviates from convention, you spend time learning which convention to override rather than writing the code directly.
Both frameworks have reached “batteries included” status. The real DX decision is which language you and your team read fluently. An hour of productive Laravel code from a PHP engineer outweighs any tooling advantage on either side.
Ecosystem and hiring
Package ecosystems: Packagist has 453,193 packages and 180 billion all-time installs (since April 2012). RubyGems has 192,839 gems and 250 billion all-time downloads (since 2004). Both ecosystems are mature. You will not hit a “no package exists for this” wall in either — common needs like PDF generation, payment processing, email templating, and job scheduling have multiple maintained options on both sides.
GitHub presence: laravel/laravel has 84,272 stars. rails/rails has 58,424. laravel/framework has 34,708. Stars weakly correlate with production use, but the gap signals tutorial availability, blog post volume, and community momentum in Laravel’s favor.
US job market (LinkedIn, May 16, 2026): “Laravel Developer” returns ~3,127 US listings. “Ruby on Rails Developer” returns ~9,000+. Rails dominates US engineering hiring by roughly 3× despite PHP being 3.5× more popular as a language. This reflects where US VC-backed startups defaulted in the mid-2010s and are still maintaining their codebases today. If you’re building a product and hiring US engineers into it, your candidate pool for Rails is meaningfully larger.
Vietnam job market (LinkedIn, May 16, 2026): “Laravel Developer” shows 107 listings; “Ruby on Rails Developer” shows 283. The LinkedIn VN numbers almost certainly undercount Laravel — agencies here post on VietnamWorks, TopCV, and ITviec in Vietnamese, and those boards skew heavily PHP. The practical Laravel talent pool in SEA is larger than LinkedIn suggests. For agencies billing clients in the region, Laravel is the lower-risk hiring bet.
The hiring paradox is real: globally, PHP and Laravel have more practitioners, but the US startup job market has more Rails openings. Pick the framework that matches where your team is located and where you plan to recruit.
Production ops cost
This is where the 2026 Rails story makes its sharpest case.
A minimal Rails 8 production setup: Hetzner CX22 at €4.49/month (around $4.80 USD), your domain, and Kamal 2 for deploy. No Redis, no managed job queue, no cache service — Solid Queue, Solid Cache, and Solid Cable run on the same Postgres or SQLite instance your app uses. Total: $5–7/month.
A comparable Laravel production setup using Forge: $12/month Forge Hobby plan plus a $6/month VPS equals $18/month before you add queues or cache. If you want Redis for Horizon (job queue monitoring) or a managed cache layer, budget another $10–20/month for a hosted Redis instance. An agency shipping five client apps will feel the spread of $60/month on Forge alone vs. $20–30/month on Kamal-deployed Rails servers.
Laravel does have one genuine budget-tier advantage: shared hosting. Laravel on shared hosting runs at $3–5/month and handles simple CRUD apps without persistent job workers or WebSockets. Rails does not run cleanly on traditional shared hosts. If you’re building a low-traffic marketing site or a client project with constrained budget and no background jobs, shared hosting is a real option with Laravel and a non-starter with Rails.
The ops-cost winner depends on your infrastructure model. Zero-Redis self-hosted: Rails 8 + Kamal 2 wins clearly. Shared hosting, no workers: Laravel wins. Managed hosting with a full feature set: roughly equivalent, with Forge adding developer-ergonomic niceties that Kamal covers differently.
Verdict
| Laravel 12 | Rails 8.1 | |
|---|---|---|
| Language | PHP 8.3+ | Ruby 3.3+ |
| Auth scaffolding | WorkOS AuthKit (free to 1M MAU) | Devise (gem; mature, manual setup) |
| Job queue | Horizon + Redis (or Octane) | Solid Queue (no Redis required) |
| Cache | Redis / Memcache / array | Solid Cache (database-backed) |
| WebSockets | Reverb (Laravel’s own WS server) | Solid Cable (database-backed) |
| Deploy tooling | Forge ($12/month) or Envoyer | Kamal 2 (bundled, free) |
| Min production cost | ~$3–5/month (shared hosting) | ~$5–7/month (Hetzner + Kamal 2) |
| US job listings | ~3,127 | ~9,000+ |
| PHP/Ruby SO usage | PHP 18.2% / Laravel 7.9% | Ruby 5.2% / Rails 4.7% |
Pick Laravel 12 if:
- Your team writes PHP and you want to stay there
- You’re hiring engineers in Southeast Asia or other PHP-dominant markets
- You need shared hosting to keep client project costs under $5/month
- You want a large Packagist ecosystem and strong community tutorial coverage
- Your project fits Laravel’s new Inertia 2 + Livewire 3 starter kits
Pick Rails 8.1 if:
- You’re hiring US-based engineers and want the deeper candidate pool
- You want to ship to production without Redis, Horizon, or managed cache services
- Kamal 2 deploying to a $4/month Hetzner VPS in two minutes matches your ops philosophy
- You’re building a product that needs Solid Queue’s job throughput (Basecamp/HEY scale)
- Your team thinks in Ruby and rails’ conventions match your domain model
Neither framework is wrong. Both are mature, opinionated, and supported by active communities. The decision is less about which framework is better and more about which language your team writes, which market you’re hiring in, and what your ops model costs. Once you’ve settled on the framework, the next call is usually the database — Postgres vs MySQL 2026 runs through the same cost-versus-features tradeoffs at the data layer.
Related reading
- Go vs Rust 2026 — Which Language for Backend Services
- Next.js 16 vs React Router v7 — 2026 framework comparison
- Django vs FastAPI 2026: which to pick for a Python backend
Caveats
We did not run our own benchmarks. All RPS figures come from TechEmpower Round 23 published results on the hardware described above. Cloud VM performance with different CPU, memory, and NIC profiles will differ. The Fortunes test measures a narrow slice of real-world workloads; treat it as directional.
VN LinkedIn undercounts Laravel. The 107 VN Laravel listing figure does not reflect VietnamWorks, TopCV, or ITviec, which are the dominant job boards for PHP roles in Vietnam. Real Laravel demand in the region is higher than LinkedIn reports.
TechEmpower Round 24 was not published as of May 16, 2026. Round 23 (archived March 24, 2026) is the last official data point. Framework performance changes across rounds; check the TechEmpower site for current numbers before making performance-sensitive decisions.
Stack Overflow 2025 survey was not yet published. The PHP 18.2% / Ruby 5.2% and Laravel 7.9% / Rails 4.7% figures are from the 2024 survey.
No affiliate links. No /go/ slugs exist for Laravel or Rails hosting tools at time of writing. Potential future partners include Forge, DigitalOcean, Hetzner, Fly.io, and Railway. Any added affiliate links will carry the standard disclosure.
References
- TechEmpower Framework Benchmarks — Round 23 results (archived March 24, 2026)
- TechEmpower Round 23 — Fortunes benchmark
- Stack Overflow Developer Survey 2024 — Technology
- Laravel 12 release notes — February 24, 2025
- Laravel Octane documentation
- Rails 8.1.3 release
- Rails 8.0 announcement: No PaaS Required
- Solid Queue — GitHub
- Solid Cache — GitHub
- Solid Cable — GitHub
- Kamal 2 — GitHub
- WorkOS AuthKit pricing
- Laravel Forge pricing
- Hetzner Cloud — CX22 pricing
- Packagist statistics
- RubyGems statistics
- laravel/laravel — GitHub stars
- rails/rails — GitHub stars
- LinkedIn job search — “Laravel Developer” (US), May 16, 2026
- LinkedIn job search — “Ruby on Rails Developer” (US), May 16, 2026