મુખ્ય વેબ વાઇટલ્સ: કેવી રીતે Next.js SSR Lighthouse સ્કોર્સ વધારે છે
મેં છેલ્લા આઠ વર્ષ React એપ્લિકેશન્સ બનાવવામાં વિતાવ્યા છે. પહેલા પાંચ વર્ષ, મેં ક્લાયન્ટ-સાઇડ રેન્ડર્ડ (CSR) એપ્સ શિપ કરી. મારા લોકલ મશીન પર તે ઝડપી લાગતી હતી. પણ વાસ્તવિક દુનિયામાં તે ધીમી પડતી હતી.
Then Google 2021માં Core Web Vitals રેન્કિંગ પરિબળો બનશે એવી જાહેરાત કરી. મને મારા Lighthouse સ્કોર્સ તપાસ્યા યાદ છે. તે ભયંકર હતા. LCP 4 સેકન્ડથી વધુ હતો. CLS ઊંચો હતો. JavaScript બંડલ્સ ફૂલેલા હતા.
મેં Next.js સર્વર-સાઇડ રેન્ડરિંગ (SSR) પર સ્વિચ કર્યું. તેણે બધું બદલી નાખ્યું.
આ બ્લોગ સિદ્ધાંત નથી. મેં આ ઈ-કોમર્સ, SaaS અને માર્કેટિંગ પેજો માટે પ્રોડક્શન સાઇટ્સ પર વાપર્યું છે. હું તમને ચોક્કસ મેટ્રિક્સ, સરખામણી કોષ્ટક અને ટાળવાની કેટલીક ભૂલો બતાવીશ.
ચાલો મૂળભૂત બાબતોથી શરૂ કરીએ.
કોર વેબ વાઇટલ્સ શું છે?
મુખ્ય વેબ વાઇટલ્સ એ ત્રણ મેટ્રિક્સ છે જેનો Google યુઝર અનુભવ માપવા માટે ઉપયોગ કરે છે.
- Largest Contentful Paint (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% સુધારો.
બહેતર Largest Contentful Paint (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ની મર્યાદા કરતાં ઘણો ઓછો છે.
તુલના કોષ્ટક: Core Web Vitals પર CSR વિરુદ્ધ Next.js SSR
નીચે મેં કરેલા વાસ્તવિક Lighthouse ઓડિટ્સ પર આધારિત કોષ્ટક છે — બે સમાન પેજ પર, એક Create React App (CSR) વાપરતું અને એક Next.js SSR વાપરતું. તમામ કન્ટેન્ટ, છબીઓ અને થર્ડ-પાર્ટી સ્ક્રિપ્ટ્સ સમાન હતી.
| Metric | CSR (React) | Next.js SSR | Improvement |
|---|---|---|---|
| Largest Contentful Paint | 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 ને બદલી નાખે છે.
વાસ્તવિક ડેટા: ઇન્ડસ્ટ્રી શું કહે છે
2020 માં Google ના પોતાના સંશોધનમાં જાણવા મળ્યું કે LCP માં 1‑સેકન્ડ વિલંબ કન્વર્ઝન 20% ઘટાડી શકે છે.
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: ફિલ્ડમાં માપન ન કરવું
તમારી સ્થાનિક લેબમાં લાઇટહાઉસ ભ્રામક હોઈ શકે છે. વાસ્તવિક વપરાશકર્તાઓની નેટવર્ક ગતિ અલગ હોય છે.
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. શું Next.js SSR સર્વર પ્રતિસાદ સમય (TTFB) માટે ધીમું છે?
હા, ક્યારેક. સર્વરે તેને મોકલતાં પહેલાં 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, અમે ઉચ્ચ-પ્રદર્શન Next.js વેબસાઇટ્સ બનાવીએ છીએ જે દરેક પેજ પર Core Web Vitals પાસ કરે છે. મફત Lighthouse ઑડિટ અને પરફોર્મન્સ રિપોર્ટ મેળવો →



