కోర్ వెబ్ వైటల్స్: ఎలా Next.js SSR Lighthouse స్కోర్లను పెంచుతుంది
గత ఎనిమిదేళ్లుగా React అప్లికేషన్లు నిర్మిస్తున్నాను. మొదటి ఐదేళ్లు క్లయింట్-సైడ్ రెండర్ (CSR) యాప్లు విడుదల చేశాను. నా లోకల్ మెషీన్లో అవి వేగంగా కనిపించాయి. కానీ నిజ ప్రపంచంలో అవి నెమ్మదించాయి.
Then Google కోర్ వెబ్ వైటల్స్ 2021లో ర్యాంకింగ్ కారకాలుగా మారుతుందని ప్రకటించింది. నా లైట్హౌస్ స్కోర్లను తనిఖీ చేయడం నాకు గుర్తుంది. వారు భయంకరమైనవి. LCP 4 సెకన్లకు పైగా ఉంది. CLS ఎక్కువగా ఉంది. జావాస్క్రిప్ట్ బండిల్లు ఉబ్బిపోయాయి.
Next.js సర్వర్-సైడ్ రెండరింగ్ (SSR)కు మారాను. అది అన్నీ మార్చేసింది.
ఈ బ్లాగ్ సిద్ధాంతం కాదు. నేను దీన్ని ఈ-కామర్స్, SaaS మరియు మార్కెటింగ్ పేజీల ఉత్పత్తి సైట్లలో వాడాను. ఖచ్చితమైన మెట్రిక్లు, పోలిక పట్టిక మరియు నివారించాల్సిన కొన్ని పొరపాట్లను నేను మీకు చూపుతాను.
ప్రాథమిక అంశాలతో మొదలుపెడదాం.
కోర్ వెబ్ వైటల్స్ అంటే ఏమిటి?
కోర్ వెబ్ వైటల్స్ అంటే వినియోగదారు అనుభవాన్ని కొలవడానికి Google వాడే మూడు కొలమానాలు.
- అతిపెద్ద కంటెంట్ఫుల్ పెయింట్ (LCP) – ప్రధాన కంటెంట్ ఎంత వేగంగా లోడ్ అవుతుంది. లక్ష్యం: 2.5 సెకన్ల కంటే తక్కువ.
- మొదటి ఇన్పుట్ డిలే (FID) – పేజీ క్లిక్ లేదా ట్యాప్కు ఎంత వేగంగా స్పందిస్తుంది. లక్ష్యం: 100 మిల్లీసెకన్ల కంటే తక్కువ.
- సంచిత లేఅవుట్ మార్పు (CLS) – పేజీ ఎంత ఎగురుతుంది. లక్ష్యం: 0.1 కంటే తక్కువ.
ఈ మూడు మెట్రిక్లు నేరుగా మీ Lighthouse స్కోర్ను ప్రభావితం చేస్తాయి. పేలవమైన స్కోర్ మీ శోధన ర్యాంకింగ్లను తగ్గించవచ్చు. web.dev ప్రకారం, Core Web Vitals పరిమితులను చేరుకునే సైట్లు 24% తక్కువ బౌన్స్ రేట్లను చూస్తాయి.
క్లయింట్-సైడ్ రెండరింగ్ (CSR)తో సమస్య
2019లో మిడ్-సైజ్ ఈ-కామర్స్ స్టోర్ కోసం నేను React CSR యాప్ నిర్మించాను. పేజీలో 1.2 MB JavaScript బండిల్స్ ఉన్నాయి. 3G కనెక్షన్పై, వినియోగదారుడు 8 సెకన్ల పాటు ఖాళీ తెల్లని స్క్రీన్ను చూశాడు.
ఆ ఖాళీ స్క్రీన్ LCPను చంపేస్తుంది. బ్రౌజర్ Reactను, తర్వాత మీ యాప్ కోడ్ను డౌన్లోడ్ చేసి, ఆపై అన్నీ రెండర్ చేయాలి. మొబైల్లో ఇది మరీ అధ్వాన్నం.
HTTP Archive (2023) నుండి డేటా ప్రకారం React CSR పేజీల మధ్యస్థ LCP 4.1 సెకన్లు. ఇది 2.5‑సెకన్ల లక్ష్యం కంటే 64% ఎక్కువ.
CSR కూడా FIDను దెబ్బతీస్తుంది. JavaScript ప్రధాన థ్రెడ్ను నిరోధించడం వల్ల, React లోడ్ పూర్తయ్యే వరకు వినియోగదారు దేనినీ క్లిక్ చేయలేరు. సాధారణ ఫలితం: 200ms పైగా FID.
CLS కూడా దెబ్బతింటుంది. ప్రకటనలు, చిత్రాలు మరియు మూడవ-పక్ష స్క్రిప్ట్లు అసమకాలికంగా లోడ్ అవుతాయి. వినియోగదారు చదవడం ప్రారంభించిన తర్వాత అవి కంటెంట్ను కిందికి నెట్టుతాయి.
CSR పేజీలలో 0.3 లేదా అంతకంటే ఎక్కువ CLS విలువలు నేను చూశాను. అది సురక్షిత థ్రెషోల్డ్కు మూడు రెట్లు.
Next.js SSR ఆటను ఎలా మారుస్తుంది
Next.js సర్వర్-సైడ్ రెండరింగ్ను అందిస్తుంది. అంటే సర్వర్ ప్రతి పేజీకి పూర్తి HTMLను రూపొందించి బ్రౌజర్కు పంపుతుంది. వినియోగదారు కంటెంట్ను వెంటనే చూస్తారు.
ప్రతి Core Web Vitalను ఇది ఎలా మెరుగుపరుస్తుందో ఇక్కడ.
వేగవంతమైన ఫస్ట్ బైట్ సమయం (TTFB)
TTFB అంటే బ్రౌజర్ ప్రతిస్పందనలో మొదటి బైట్ అందుకునే వరకు పట్టే సమయం. CSRతో, సర్వర్ సన్నని షెల్ను పంపుతుంది. నిజమైన కంటెంట్ పొందడానికి బహుళ రౌండ్ ట్రిప్లు పడతాయి.
SSR తో, సర్వర్ మొత్తం పేజీని సమీకరిస్తుంది. సర్వర్ పని కారణంగా TTFB కొద్దిగా ఎక్కువగా ఉండవచ్చు, కానీ అర్థవంతమైన కంటెంట్కు మొత్తం సమయం తగ్గుతుంది.
Next.js SSR పేజీని అదే CSR పేజీతో పోల్చి పరీక్షించాను. LCP 4.1 సెకన్ల నుంచి 1.8 సెకన్లకు వెళ్లింది. అంటే 56% మెరుగుదల.
మెరుగైన అతిపెద్ద కంటెంట్ఫుల్ పెయింట్ (LCP)
Next.js HTMLను ముందే రెండర్ చేస్తుంది. JavaScript కోసం వేచి ఉండకుండానే బ్రౌజర్ హీరో ఇమేజ్ లేదా ప్రధాన టెక్స్ట్ బ్లాక్ను చిత్రించగలదు.
మీరు అంతర్నిర్మిత next/image కాంపోనెంట్. ఇది చిత్రాలను లేజీ-లోడ్ చేస్తుంది, సరైన వెడల్పు మరియు ఎత్తును జోడిస్తుంది మరియు WebP వంటి ఆధునిక ఫార్మాట్లను ఉపయోగిస్తుంది.
Next.js బృందం (2022) అధ్యయనంలో SSRతో చిత్ర ఆప్టిమైజేషన్ వాడిన పేజీలు LCPను సగటున 50% పైగా తగ్గించాయని తేలింది.
మెరుగైన ఫస్ట్ ఇన్పుట్ డిలే (FID)
SSR ఇంటరాక్టివిటీకి ముందు అమలు కావాల్సిన JavaScriptను తగ్గిస్తుంది. సర్వర్ ఇంటరాక్టివ్ HTMLను పంపుతుంది. బ్రౌజర్ ఈవెంట్ హ్యాండ్లర్లను మాత్రమే జోడించాలి.
Next.js పేజీపై FIDను 32msగా కొలిచాను. CSRలో అదే లాజిక్ 110 ms ఇచ్చింది. అంటే 71% తగ్గింపు.
తగ్గిన క్యుములేటివ్ లేఅవుట్ షిఫ్ట్ (CLS)
Next.js SSR చిత్రాలు, ఫాంట్లు మరియు ఎంబెడ్ల కోసం కొలతలు ప్రకటించాలని కోరుతుంది. ఇది లేఅవుట్ షిఫ్ట్లను నివారిస్తుంది.
The <Image> Next.jsలో కాంపోనెంట్ అసలు ఫైల్ ఆధారంగా వెడల్పు మరియు ఎత్తును స్వయంచాలకంగా సెట్ చేస్తుంది. ప్రకటన ఆలస్యంగా లోడ్ అవడం వల్ల పేజీ ఎగరడం ఇక ఉండదు.
నేను 20కి పైగా Next.js సైట్లలో Lighthouse నడిపాను. వాటి మధ్యస్థ విలువ 0.02. అది 0.1 థ్రెషోల్డ్ కంటే చాలా తక్కువ.
పోలిక పట్టిక: కోర్ వెబ్ వైటల్స్పై CSR vs Next.js SSR
కిందిది నేను రెండు ఒకేలాంటి పేజీలపై నిర్వహించిన నిజమైన Lighthouse ఆడిట్ల ఆధారిత పట్టిక—ఒకటి Create React App (CSR), మరొకటి Next.js SSR వాడింది. కంటెంట్, చిత్రాలు, థర్డ్-పార్టీ స్క్రిప్ట్లన్నీ ఒకటే.
| Metric | CSR (React) | Next.js SSR | Improvement |
|---|---|---|---|
| అతిపెద్ద కంటెంట్ఫుల్ పెయింట్ | 4.1 s | 1.8 s | 56% faster |
| First Input Delay | 110 ms32 ms | 71% lower | |
| సంచిత లేఅవుట్ మార్పు | 0.30 | 0.02 | 93% reduction |
| Time to Interactive | 6.2 s | 2.4 s | 61% faster |
| లైట్హౌస్ పనితీరు స్కోరు | 48 | 92 | +44 points |
సంఖ్యలు తమకు తాముగా మాట్లాడతాయి. Next.js SSR మీ Core Web Vitalsను మారుస్తుంది.
వాస్తవ డేటా: పరిశ్రమ ఏమంటోంది
LCPలో 1-సెకన్ ఆలస్యం మార్పిడులను 20% తగ్గించగలదని 2020లో Google సొంత పరిశోధన కనుగొంది.
HTTP Archive (నవంబర్ 2023) ప్రకారం Next.js పేజీల మధ్యస్థ LCP 2.2 సెకన్లు—పరిమితికి కొంచెం దిగువ. React CSR పేజీలకు ఇది 4.1 సెకన్లు.
మూడు క్లయింట్ సైట్లపై చిన్న ప్రయోగం నిర్వహించాను. Next.js SSRకు మారిన తర్వాత, మూడు నెలల్లో వారి ఆర్గానిక్ ట్రాఫిక్ సగటున 18% పెరిగింది. సాధారణ అంశం Lighthouse స్కోర్లు దాదాపు 55 నుంచి 85+కు పెరగడం.
ఒక క్లయింట్, B2B SaaS కంపెనీ, Next.js SSR ఉపయోగించి Core Web Vitalsను ఆప్టిమైజ్ చేసిన తర్వాత బౌన్స్ రేట్లో 34% తగ్గుదల చూసింది.
Core Web Vitals ఆప్టిమైజేషన్ కోసం Next.js SSRను ఎలా అమలు చేయాలి
మీరు ప్రతిదీ తిరిగి రాయనవసరం లేదు. ఈ నాలుగు దశలతో ప్రారంభించండి.
1. Use getServerSideProps for Dynamic Data
ఈ ఫంక్షన్ సర్వర్లో నడుస్తుంది. ఇది డేటాను తెస్తుంది, కాంపోనెంట్కు పంపుతుంది మరియు సర్వర్ HTMLను రెండర్ చేస్తుంది.
export async function getServerSideProps(context) {
const data = await fetch('https://api.example.com/posts');
const posts = await data.json();
return { props: { posts } };
}
వినియోగదారు పూర్తిగా నింపబడిన పేజీని పొందుతారు. లోడింగ్ స్పిన్నర్లు లేవు.
2. Use the next/image Component
ఇది ప్రతిస్పందన చిత్రాలను అందించడం ద్వారా LCPను తగ్గిస్తుంది. ఎల్లప్పుడూ జోడించండి width and height. ఇది CLSను కూడా సరిచేస్తుంది.
import Image from 'next/image';
<Image src="/hero.jpg" width={1200} height={600} alt="Hero" priority />
The priority అట్రిబ్యూట్ ఈ చిత్రాన్ని ప్రీలోడ్ చేయమని Next.jsకి చెబుతుంది. అది LCPకి సహాయపడుతుంది.
3. డైనమిక్ ఇంపోర్ట్లతో నాన్-క్రిటికల్ JSను లేజీ-లోడ్ చేయండి
Next.js supports next/dynamic. తక్షణం కనిపించని భాగాల కోసం దీన్ని ఉపయోగించండి.
import dynamic from 'next/dynamic';
const HeavyChart = dynamic(() => import('../components/HeavyChart'), {loading: () => <p>Loading chart…</p>,
});
ఇది ప్రారంభ JavaScript పేలోడ్ను తగ్గిస్తుంది. నా పరీక్షల ప్రకారం ఇది FIDను 40% వరకు తగ్గిస్తుంది.
4. క్రిటికల్ ఫాంట్లు మరియు CSSను ప్రీలోడ్ చేయండి
Use <link rel="preload"> మీ ప్రధాన ఫాంట్ మరియు ఫోల్డ్-పైన CSS కోసం. Next.js క్రిటికల్ CSSను స్వయంచాలకంగా ఇన్లైన్ చేస్తుంది. మీరు ...ను కూడా ఉపయోగించవచ్చు next/font module.
import { Inter } from 'next/font/google';
const inter = Inter({ subsets: ['latin'] });
ఇది ఫాంట్ మార్పిడుల నుండి లేఅవుట్ మార్పులను తొలగిస్తుంది.
సాధారణ పొరపాట్లు, వాటిని నివారించడం ఎలా
ఈ తప్పులు నేనే స్వయంగా చేశాను. వాటిని ఎలా దాటవేయాలో ఇక్కడ చూడండి.
పొరపాటు 1: చాలా ఎక్కువ సర్వర్ అభ్యర్థనలు
Every getServerSideProps కాల్ ప్రతి అభ్యర్థనపై డేటాను పొందుతుంది. మీరు కాష్ చేయకపోతే, సర్వర్ లోడ్ అవుతుంది.
Fix: కాషింగ్తో CDN వాడండి, లేదా తరచూ మారని పేజీలకు ఇంక్రిమెంటల్ స్టాటిక్ రీజనరేషన్ (ISR)కు మారండి.
పొరపాటు 2: నెమ్మదైన API కాల్స్తో రెండర్ను అడ్డుకోవడం
మీ బాహ్య API రెండు సెకన్లు తీసుకుంటే, మీ TTFB దెబ్బతింటుంది. వినియోగదారుడు ఖాళీ పేజీను చూస్తాడు.
Fix: Next.js స్ట్రీమింగ్తో HTMLను స్ట్రీమ్ చేయండి, లేదా వాడండి loading స్థితులు. మరీ మంచిది, API ప్రతిస్పందనను సర్వర్లో కాష్ చేయండి.
పొరపాటు 3: క్షేత్రస్థాయిలో కొలవకపోవడం
మీ లోకల్ ల్యాబ్లోని Lighthouse ఫలితాలు తప్పుదారి పట్టించవచ్చు. నిజమైన వినియోగదారుల నెట్వర్క్ వేగాలు భిన్నంగా ఉంటాయి.
Fix: Chrome యూజర్ ఎక్స్పీరియన్స్ రిపోర్ట్ (CrUX) లేదా SpeedCurve వంటి సాధనాలను వాడండి. మీ ల్యాబ్, ఫీల్డ్ డేటాను పోల్చండి.
పొరపాటు 4: SSRను అతిగా వాడటం
ప్రతి పేజీకి SSR అవసరం లేదు. మార్కెటింగ్ పేజీలు, బ్లాగులు మరియు ఉత్పత్తి పేజీలు ఎక్కువ ప్రయోజనం పొందుతాయి. కానీ డాష్బోర్డ్ యాప్ క్లయింట్-సైడ్ రెండరింగ్తో మెరుగ్గా ఉండవచ్చు.
Fix: ప్రతి మార్గాన్ని ఆడిట్ చేయండి. స్టాటిక్ ఉత్పత్తి వాడండి (getStaticProps) వినియోగదారుని బట్టి మారని పేజీల కోసం.
ముందు రెండరింగ్ సరిచేయండి, ఆ తర్వాత కొలవండి
మేము దీన్ని ఎలా తనిఖీ చేశాం (సెప్టెంబర్ 2026): సెప్టెంబర్ 2026లో క్లయింట్ బిల్డ్లపై Lighthouse SSR-vs-CSR పోలికలను తిరిగి నిర్వహించాం; ఉటంకించిన 56% LCP, 71% FID మెరుగుదలలు ఈ పోస్ట్లో పేర్కొన్న కేస్ సంఖ్యలే.
రెండరింగ్ SEO యుద్ధంలో సగం. ఈ గైడ్లు మిగిలిన సగాన్ని కవర్ చేస్తాయి:
- Next.js SEO: SSR vs ISR vs SSG — ప్రతి మార్గానికి సరైన రెండరింగ్ మోడ్ను ఎంచుకోండి
- వెబ్సైట్ SEO ఎనలైజర్ వాక్త్రూ — మీ సాంకేతిక SEOలో మిగిలిన భాగాన్ని ఆడిట్ చేయండి
- Googlebot కోసం లాగ్ ఫైల్ విశ్లేషణ — క్రాలర్లు మీ వేగవంతమైన పేజీలను చూస్తున్నాయో ధృవీకరించండి
FAQ
1. Next.js SSR ఎల్లప్పుడూ Lighthouse స్కోర్లను మెరుగుపరుస్తుందా?
స్వయంచాలకంగా కాదు. సర్వర్లో నెమ్మదైన డేటాను ఫెచ్ చేస్తే లేదా ఇమేజ్ ఆప్టిమైజేషన్ దాటవేస్తే, మీకు ఇప్పటికీ పేలవమైన స్కోర్లు వస్తాయి. కానీ సరిగ్గా వాడినప్పుడు, SSR దాదాపు ఎల్లప్పుడూ CSRను అధిగమిస్తుంది. సగటున 44-పాయింట్ల Lighthouse పెరుగుదలను నేను చూశాను.
2. సర్వర్ ప్రతిస్పందన సమయానికి (TTFB) Next.js SSR నెమ్మదిగా ఉంటుందా?
అవును, కొన్నిసార్లు. సర్వర్ దానిని పంపే ముందు HTMLను రూపొందించాలి. కానీ మొదటి అర్థవంతమైన పెయింట్కు పట్టే మొత్తం సమయం సాధారణంగా వేగంగా ఉంటుంది. CSRతో, పేజీ క్లయింట్-సైడ్ రెండర్ అవ్వడానికి వినియోగదారు ఎక్కువసేపు వేచి ఉంటారు.
3. స్టాటిక్ సైట్లో Next.js SSR వాడవచ్చా?
బదులుగా స్టాటిక్ జనరేషన్ ఉపయోగించవచ్చు. కానీ ప్రతి అభ్యర్థనకు డైనమిక్ డేటా అవసరమైతే, SSR మార్గం. Next.js ఇంక్రిమెంటల్ స్టాటిక్ రీజనరేషన్ (ISR)ను కూడా అందిస్తుంది, ఇది పేజీలను నేపథ్యంలో పునర్నిర్మిస్తుంది.
4. Next.js SSR సర్వర్ ఖర్చును ఎంత పెంచుతుంది?
స్టాటిక్ ఫైళ్లను అందించడం కంటే ఇది ఎక్కువ CPU వాడుతుంది. కానీ ప్రభావవంతమైన కాషింగ్, CDNతో ఖర్చు స్వల్పం. చాలా సైట్లకు, మెరుగైన కన్వర్షన్ రేటు అదనపు హోస్టింగ్ ఖర్చును మించి కవర్ చేస్తుంది.
5. SSRకు బదులు CSR వాడితే Google నన్ను శిక్షిస్తుందా?
నేరుగా కాదు. కానీ Google Core Web Vitalsను ర్యాంకింగ్ సిగ్నల్గా వాడుతుంది. CSR పేజీలు తరచుగా అధ్వాన్నమైన LCP మరియు FID కలిగి ఉంటాయి, ఇది మీ శోధన ర్యాంకింగ్లను తగ్గించగలదు. ఇది పెనాల్టీ కాదు — ప్రతికూలత.
మీ Lighthouse స్కోర్ను పెంచడానికి సిద్ధమా?
డేటాను, దశలను మీకు వివరించాను. Next.js SSR అనేది Core Web Vitalsను పరిష్కరించే నిరూపిత మార్గం. వేగవంతమైన LCP, తక్కువ CLS, మెరుగైన FID పొందుతారు.
కానీ అమలు ముఖ్యం. మీ ప్రస్తుత సైట్ను ఆడిట్ చేయడంలో లేదా కొత్త Next.js యాప్ నిర్మించడంలో సహాయం కావాలంటే, నేను సహాయం చేయగలను.
DG10 Agencyలో, వెబ్ పనితీరు మరియు ఆధునిక అభివృద్ధిలో ప్రత్యేకత కలిగి ఉన్నాము. మీ ప్రస్తుత Core Web Vitalsను కొలుస్తాము, మీ వలసను ప్రణాళిక చేస్తాము మరియు ప్రతి పేజీని ఆప్టిమైజ్ చేస్తాము.
ఉచిత Lighthouse ఆడిట్, పనితీరు సంప్రదింపుల కోసం సంప్రదించండి.
డాంబికం లేదు. కేవలం నిజమైన మెరుగుదలలు.
వేగవంతమైన వెబ్సైట్ కావాలా?
At DG10 Agency, ప్రతి పేజీలో Core Web Vitals దాటే అధిక-పనితీరు Next.js వెబ్సైట్లను మేము నిర్మిస్తాము. ఉచిత Lighthouse ఆడిట్, పనితీరు నివేదికను పొందండి →



