
Next.js 16 production-ready checklist: 25 pont deploy előtt
25 konkrét pont, ami Next.js 16 alapú projekt go-live előtt nem maradhat ki. Security, performance, SEO, accessibility és monitoring kategóriákban.
Tíz konkrét technikai optimalizáció, ami mérhetően növeli a webshop konverziót. Performance, UX, trust signal, checkout-flow és A/B tesztelhető elemek.

Optimalizációs sprint
Lighthouse + Hotjar session-recording + analytics review. Top 5 friction-point azonosítása.
Mobil LCP <2s, sticky add-to-cart, guest checkout, form-mező-minimalizáció. 1-2 hét implementáció.
PostHog vagy GrowthBook feature-flags. Min. 1000 conversion/variant, 2-3 hét futási idő.
Winner variant production. Tipikus eredmény: 30-60% relatív CR-növekedés 4-6 hét alatt.
A webshop konverziós ráta (CR) az e-commerce egyik leghálásabb területe — egy 1.5%-os baseline-t 2.5%-ra emelni nem science fiction, és 60-70%-os revenue-uplift-tel jár. A magyar piacon különösen sok webshop fut 1-2%-os CR-en, miközben a nemzetközi benchmark 2-3% a B2C-szegmensben.
Ebben a cikkben 10 konkrét technikai optimalizáció, ami mérhetően mozog a tűn. Mindegyik mérve és tesztelve éles projekteken, magyar piaci kontextusban. A számok 2026 Q1-es state-of-art benchmark-ok, és Hungarian Baymard / GFK / Árukereső adatokra is támaszkodnak.
Mielőtt belekezdünk az optimalizációba, fontos benchmark-okat tisztázni. A „jó CR" nagyban iparág- és termék-függő:
| Iparág | Globális átlag CR | Magyar átlag CR |
|---|---|---|
| Fashion (B2C) | 2.7% | 1.5-2.0% |
| Electronics | 1.8% | 1.0-1.5% |
| Home & Garden | 2.4% | 1.5-2.5% |
| Food & Beverage | 4.0% | 2.5-3.5% |
| Cosmetics | 3.5% | 2.0-3.0% |
| B2B (industrial) | 0.8% | 0.5-1.0% |
A magyar piacon gyakran 30-40%-kal alacsonyabb a CR mint a globális átlag — főleg az alacsonyabb bizalmi szint és a kevesebb fizetési lehetőség miatt. Az ezen a téren történő optimalizálás a leghálásabb.
A mobil Largest Contentful Paint a #1 konverzió-prediktor. Minden 0.5s csökkenés 5-10% CR-növekedéssel jár (Google research, Web.dev case studies).
<link rel="preload"> a kritikus font-rapriority prop next/image-enimport Image from 'next/image';
// Hero termékkép — above-the-fold, priority
<Image
src="/products/hero.webp"
alt="..."
width={1200}
height={1200}
priority
sizes="(max-width: 768px) 100vw, 600px"
placeholder="blur"
/>
// Below-the-fold képek — lazy default
<Image
src="/products/gallery-1.webp"
alt="..."
width={600}
height={600}
loading="lazy"
sizes="(max-width: 768px) 50vw, 300px"
/>
Lighthouse mobil 90+, LCP < 2s, INP < 200ms, CLS < 0.05.
A Google Search Console „Core Web Vitals" report-ja a tényleges felhasználói adatot mutatja. A Lighthouse és PageSpeed Insights szintetikus benchmark — a tényleges Google-ranking és CR-impact a Search Console-adat alapján számolódik.
npx unlighthouse --site https://example.com
Tipp: A „90+ Lighthouse" cél nem garantálja a jó tényleges performance-t — egy lassú mobile-network környezetben még mindig lassú lehet. A field-data (Search Console / Web Vitals) a valós metrika.
A user az első 3 másodpercben dönt arról, hogy marad-e. Above-the-fold (mobil viewport ~640px):
Ne legyen review-szekció, related-products vagy email-feliratkozás above-the-fold. Ezek under-the-fold.
| Variant | Mobil CR |
|---|---|
| Above-the-fold: kép + név + ár + CTA | 2.4% |
| Above-the-fold: kép + reviews + név + ár | 1.8% |
| Above-the-fold: csak kép + név (CTA later) | 1.2% |
A „CTA látható" variant 2x jobb a „CTA scroll-after"-nél.
A magyar piacon különösen fontos a bizalom-építés. Új webshopok esetén ez gyakran 30-50%-os CR-különbséget jelenthet.
| Elem | Hely |
|---|---|
| SSL + fizetési ikonok | Footer + checkout (mindkettő) |
| Visszatérítés badge | Product page, near CTA |
| Customer reviews | Product page, below-the-fold |
| Telefon + cím | Footer, contact page |
| Tanúsítványok | Footer + about |
A magyar B2C-vásárló még mindig erősen bizalom-vezérelt:
Ne kényszerítsd a user-t regisztrációra. A „Vásárlás vendégként" gomb a checkout-on +15-25% CR.
Variant A (require login): CR 1.2%
Variant B (guest checkout default): CR 1.5%
Variant C (guest first, login optional): CR 1.65%
// Checkout step 1
<div className="space-y-4">
<h2>Hogyan szeretnéd folytatni?</h2>
<Button variant="primary" size="lg" onClick={() => proceedAsGuest()}>
Vásárlás vendégként
</Button>
<div className="text-sm text-text-secondary">
Vagy: <Link href="/login">Bejelentkezés</Link>
<span className="mx-2">·</span>
<Link href="/register">Regisztráció</Link>
</div>
</div>
Az account-létrehozást a post-purchase confirmation-on ajánld fel:
Köszönjük a rendelést!
Tegyük könnyebbé a következő vásárlást egy ingyenes fiókkal:
☐ Igen, készíts nekem fiókot — csak emailt + jelszót kérünk
Minden extra mező 5-10% bounce. A checkout-űrlapon csak a kötelező mezők:
Számlázási cím = szállítási cím default checkbox. Cégadat (adószám) collapse-olva, csak ha B2B.
// Magyar irányítószám-város mapping
async function lookupZip(zip: string): Promise<{ city: string; county: string } | null> {
const response = await fetch(`/api/zip/${zip}`);
if (!response.ok) return null;
return response.json();
}
// Form
<input
type="text"
name="zip"
pattern="[0-9]{4}"
onChange={async (e) => {
if (e.target.value.length === 4) {
const data = await lookupZip(e.target.value);
if (data) {
setFormValue('city', data.city);
setFormValue('county', data.county);
}
}
}}
/>
A Hotjar / FullStory session recording megmutatja, melyik mező-n abandon-ol a user. Tipikus drop-off:
Hosszú termékoldalon a user lefelé scrollozik, és elveszti a CTA-t. Sticky bottom bar mobile-on:
'use client';
import { useEffect, useState } from 'react';
export function StickyCartBar({ product }) {
const [visible, setVisible] = useState(false);
useEffect(() => {
const handleScroll = () => {
// Show after scrolling 400px (below the fold)
setVisible(window.scrollY > 400);
};
window.addEventListener('scroll', handleScroll, { passive: true });
return () => window.removeEventListener('scroll', handleScroll);
}, []);
if (!visible) return null;
return (
<div className="fixed bottom-0 left-0 right-0 z-40 border-t bg-white p-3 md:hidden
safe-bottom shadow-lg">
<button
className="w-full rounded-lg bg-accent py-3 font-semibold"
onClick={addToCart}
>
Kosárba — {formatPrice(product.price)}
</button>
</div>
);
}
A safe-bottom Tailwind utility a iPhone notch-okra. A shadow-lg jelez a usernek, hogy ez egy floating element.
| Setup | Mobil CR |
|---|---|
| Csak top-of-page CTA | 1.4% |
| Sticky bottom bar | 1.55% |
| Sticky bottom bar + "kedvezmény" badge | 1.7% |
+8-12% mobil CR tipikusan.
„Készleten 3 db" típusú visual cue (FOMO trigger). Ne hazudj — ha valóban nincs scarcity, ne fake-eld. De ha van, kommunikáld.
{stock <= 5 && stock > 0 && (
<p className="text-sm text-amber-600 flex items-center gap-1.5">
<Clock className="h-4 w-4" />
Készleten {stock} db • Gyors szállítás
</p>
)}
{stock === 0 && (
<p className="text-sm text-red-600">
Jelenleg készletkimaradás — várólista
</p>
)}
A magyar piacon 65-80% cart-abandonment standard. Visszanyerés:
Tipikus recovery rate: 8-15%.
// Trigger: kosárba helyezés esemény
async function onCartAdded(userId: string, cartId: string) {
// Schedule 3 emails
await emailScheduler.schedule({
to: userId,
template: 'cart_reminder_1h',
sendAt: addMinutes(new Date(), 60),
condition: () => !isCheckoutCompleted(cartId),
});
await emailScheduler.schedule({
to: userId,
template: 'cart_reminder_24h_discount',
sendAt: addHours(new Date(), 24),
condition: () => !isCheckoutCompleted(cartId),
});
await emailScheduler.schedule({
to: userId,
template: 'cart_reminder_3d_lastchance',
sendAt: addDays(new Date(), 3),
condition: () => !isCheckoutCompleted(cartId),
});
}
A „Mások ezt vásárolták" szekció + recent purchase notification 5-15% conversion-emelés.
<div className="rounded-lg bg-bg-surface p-4">
<p className="text-sm">
<strong>72-en</strong> vásárolták az elmúlt 7 napban
</p>
</div>
// Toast: "István Budapest 5 perce vásárolta ezt"
function RecentPurchaseNotification({ data }) {
return (
<div className="fixed bottom-4 left-4 z-50 rounded-lg bg-white p-3 shadow-lg
border max-w-xs animate-slide-in">
<p className="text-xs">
<strong>{data.firstName}</strong> ({data.city})
</p>
<p className="text-sm">{data.timeAgo}-kor vásárolta</p>
</div>
);
}
Adatforrást honesty alapon: ha tényleg 72-en vásároltak, mutasd. Ha 3-an, ne hazudj.
| Reviews count | Average CR uplift |
|---|---|
| 0 reviews | 0% (baseline) |
| 1-5 reviews | +8% |
| 6-20 reviews | +15% |
| 20+ reviews | +22% |
A reviews gyűjtése post-purchase email-flow-val. „Töltsd ki a review-t és kapsz 5% kupont a következő vásárlásra" — 30-40% response rate.
Mindegyik fenti technika tesztelhető. A/B teszt nélkül a hatás csak feltevés.
import { posthog } from 'posthog-js';
// Initialize (with consent)
posthog.init('phc_xxx', {
api_host: 'https://eu.posthog.com', // EU-region
capture_pageview: false, // GDPR-friendly default
});
// In component
function ProductPage({ product }) {
const showStickyBar = posthog.getFeatureFlag('sticky-cart-bar') === 'variant_a';
const showScarcity = posthog.getFeatureFlag('scarcity-message');
return (
<>
{/* ... */}
{showStickyBar && <StickyCartBar product={product} />}
{showScarcity && stock <= 5 && <ScarcityBadge stock={stock} />}
</>
);
}
Baseline CR: 2.0%
Detectable lift: 10% (relative)
Statistical power: 80%
Significance: 95%
→ Sample size: ~10,000 visitors per variant
→ At 1000 visitors/day: 10 nap teszt
A Evan's A/B Calculator gyors becsléshez ideális.
Magas-érték termékeknél a kép-zoom + 360°-os view +5-10% CR. A user „megfogja" virtuálisan a terméket.
A „kérdésed van?" gomb +3-7% CR-impact-et adhat. Live chat 9-17 között, AI-chatbot 24/7.
„Még X Ft hiányzik az ingyenes szállításhoz" message a kosárban. +12-18% avg-order-value emelés.
A „mentsd a kosárba később" funkció elválasztja az „érdekel" és „venni akarom" intent-eket. A wishlist email-newsletter target.
A „magyar payment options" hiánya gyakran 30-40% CR-veszteség a magyar piacon.
Egy projekt-szintű optimalizációs sprint (4-6 hét) tipikusan 30-60% relatív CR-növekedést hoz baseline-hoz képest.
| Hét | Tevékenység |
|---|---|
| 1 | Audit (Lighthouse, Hotjar, analytics review) |
| 2 | Priorizálás — top 5 issue impact-becsléssel |
| 3 | Implementation 1-2 quick win |
| 4 | A/B teszt indul, monitoring |
| 5 | Results review, iteration |
| 6 | Production rollout, follow-up audit |
Témához kapcsolódó saját cikkeink: Next.js 16 production-ready checklist — performance-alap. Headless CMS Magyarországon — content-stack-választás. Mobil app GDPR compliance — analytics + consent-management.
A webshop konverziós ráta nem egyetlen trükkön múlik. A 10 fenti technika kumulatív hatása érdemi. Egy projekt-szintű optimalizációs sprint (4-6 hét) tipikusan 30-60% relatív CR-növekedést hoz baseline-hoz képest.
A mérés a kulcs. A/B testing-infrastruktúra nélkül a változások csak feltevések. PostHog vagy GrowthBook ingyenesen integrálható, és 1-2 hét alatt működik.
Ha webshop-fejlesztési vagy optimalizációs projektet tervezel, beszéljük át a discovery-n, hol vannak a legnagyobb wins. Az 1-2 hetes audit (300-600k Ft) gyakran 5-10x megtérül az első 3 hónapban, ha a quick win-eket implementáljuk.
A szerzőről
Corevanix Kft.
Tech partner
Modern tech partner — SAP/ERP, webfejlesztés, AI automatizáció és mobil app fejlesztés egy szakmai csapatban. KKV-tól enterprise projektig.
LinkedIn →
25 konkrét pont, ami Next.js 16 alapú projekt go-live előtt nem maradhat ki. Security, performance, SEO, accessibility és monitoring kategóriákban.

Három headless CMS deep-dive: Sanity, Strapi, Contentful. Pricing, real-time preview, lokalizáció, és 5 magyar piaci use case ajánlás.