Hyvä vs Luma: Magento 2 Frontend Performance Compared (2026)
Hyvä replaces Magento 2 Luma's Knockout.js/RequireJS stack with Alpine.js and Tailwind, cutting JavaScript payload by 90%+ and typically moving Lighthouse mobile scores from the 30s to 90+. Luma remains viable only for teams blocked by legacy module dependencies.
Hyvä replaces Magento 2's Luma frontend (Knockout.js + RequireJS + LESS) with Alpine.js and Tailwind CSS. In production this cuts shipped JavaScript by 90% or more and typically lifts mobile Lighthouse from the 30s into the 90s. Luma is only the right call when legacy module UI blocks migration.
Key takeaways
- JavaScript weight: Luma ships ~400–900 KB of JS (RequireJS + Knockout); Hyvä ships ~30–60 KB (Alpine.js).
- Lighthouse mobile: Luma stores commonly score 25–45; well-built Hyvä stores score 90+.
- Core Web Vitals: Hyvä makes passing LCP and INP realistic without a separate PWA/headless stack.
- When to keep Luma: heavy reliance on third-party modules that only ship Knockout UI components.
Why Luma is slow by default
Luma's render path loads RequireJS, resolves dozens of AMD modules, then hydrates Knockout view-models before the page is interactive. Even on a tuned server, the browser does a large amount of main-thread work, which is exactly what Google's INP metric penalizes. LESS compilation and the layered CSS also produce large stylesheets.
What Hyvä changes
Hyvä is a server-rendered theme. Markup arrives ready, Tailwind ships only the classes you use, and Alpine.js adds small islands of interactivity. There is no RequireJS graph to resolve and no Knockout hydration. The result is a dramatically smaller critical path and far less main-thread blocking.
Migration cost (honest version)
Hyvä is not a drop-in switch. Custom theme work and any module with a Knockout UI must be rebuilt as Hyvä-compatible components. For a mid-size store this is typically a 3–8 week engineering effort, dominated by checkout and any custom PDP/PLP logic. The payoff is durable: faster pages, simpler frontend, and a stack your team can actually reason about.
Decision checklist
- Mobile Lighthouse below 50 and conversion is plateauing → migrate to Hyvä.
- Few/no third-party Knockout modules → migration is low-risk.
- Locked into a vendor module with Knockout-only UI → budget for a compatibility rebuild or stay on Luma short term.
We rebuilt Velgrina's storefront on Hyvä with 13 custom modules. If you want a frontend audit before committing, our System Architecture Audit quantifies the gap, or request a quote.
Frequently asked questions
Is Hyvä faster than Luma?
Yes. Hyvä ships roughly 90% less JavaScript than Luma by replacing RequireJS and Knockout.js with Alpine.js and Tailwind. Production stores commonly move from mobile Lighthouse scores in the 30s to 90+ after migration.
How long does a Hyvä migration take?
For a mid-size Magento 2 store, a Hyvä migration is typically 3 to 8 weeks of engineering. Most of the effort is rebuilding checkout and any custom or third-party modules that ship Knockout UI components.
When should I stay on Luma instead of Hyvä?
Stay on Luma if you depend on third-party modules whose UI only exists as Knockout components and a compatibility rebuild is not yet justified. Otherwise Hyvä is the stronger long-term choice for performance and maintainability.
Does Hyvä help with Core Web Vitals?
Yes. By removing the RequireJS/Knockout render path, Hyvä reduces main-thread work, which directly improves INP and LCP. It makes passing Core Web Vitals realistic without moving to a separate headless or PWA stack.
Wizutech Admin
Wizutech Engineering
// Sonraki adım
Kendi vaka çalışmanıza
hazır mısınız?
Buradaki her yazı bir görüşmeyle başladı. Siz de mevcut sisteminizden bahsedin.