Svetainės įkrovimo greičio gerinimas

Svetainės įkrovimo greičio gerinimas: 15 veiksmingų būdų, kad jūsų puslapis krautųsi žaibiškai

Trys sekundės. Tiek laiko vidutinis interneto naudotojas yra pasiruošęs laukti, kol atsidarys puslapis. Jei jūsų svetainė nespėja per tą laiką, lankytojas tiesiog paspaudžia „atgal” ir renkasi konkurento puslapį. „Google” duomenimis, kai puslapio įkrovimo laikas pailgėja nuo 1 iki 3 sekundžių, tikimybė, kad lankytojas paliks svetainę, išauga 32 proc. O jei įkrovimas užtrunka 5 sekundes, ši tikimybė šoka iki 90 proc.

Svetainės greitis yra ne tik naudotojų patirties klausimas. Tai tiesiogiai veikia jūsų pozicijas „Google” paieškos rezultatuose, konversijų rodiklius ir pajamas. „Amazon” skaičiavimai rodo, kad kiekviena papildoma 100 milisekundžių vėlavimo kainuoja jiems 1 proc. pardavimų.

Šiame straipsnyje rasite 15 konkrečių, praktikų pagrįstų metodų, kurie padės pagreitinti jūsų svetainę ir paversti ją tikru konkurenciniu pranašumu.

Kodėl svetainės greitis yra svarbus SEO veiksnys

„Google” 2021 metais įdiegė Core Web Vitals kaip oficialų reitingavimo signalą. Tai reiškia, kad paieškos variklis aktyviai vertina tris pagrindinius rodiklius:

  • LCP (Largest Contentful Paint) – kiek laiko užtrunka, kol didžiausias matomas turinio elementas (pavyzdžiui, pagrindinis vaizdas ar antraštė) pilnai užsikrauna. Tikslas: iki 2,5 sekundės.
  • FID (First Input Delay) / INP (Interaction to Next Paint) – kiek laiko praeina nuo pirmojo naudotojo veiksmo (paspaudimo, slinkimo) iki svetainės atsako. Tikslas: iki 200 milisekundžių.
  • CLS (Cumulative Layout Shift) – kiek puslapio elementai „šokinėja” kraunantis turiniui. Tikslas: mažiau nei 0,1.

Greita svetainė gauna dvigubą naudą: geresnes pozicijas paieškoje ir aukštesnį konversijų rodiklį. „Vodafone” atliktas eksperimentas parodė, kad 31 proc. LCP pagerėjimas lėmė 8 proc. pardavimų augimą.

1. Išmatuokite dabartinį greitį prieš pradėdami

Prieš ką nors keičiant, reikia žinoti, nuo ko pradedate. Štai patikimiausi įrankiai:

  • Google PageSpeed Insights – nemokamas, pateikia ir laboratorinius, ir realių naudotojų duomenis.
  • GTmetrix – detaliai rodo kiekvieną užklausą, failo dydį ir įkrovimo seką.
  • WebPageTest – leidžia testuoti iš skirtingų geografinių vietų ir naudojant skirtingus ryšio greičius.
  • Lighthouse (integruotas „Chrome DevTools”) – pateikia ne tik greitį, bet ir prieinamumo, SEO bei geriausių praktikų vertinimus.

Užfiksuokite pradinius rodiklius: bendrą įkrovimo laiką, LCP, FID/INP, CLS, puslapio svorį (MB) ir užklausų skaičių. Tai bus jūsų atskaitos taškas, pagal kurį vertinsite pažangą.

2. Vaizdų optimizavimas – didžiausias greičio laimėjimas

Vaizdai paprastai sudaro 50–70 proc. viso puslapio svorio. Tai pirma vieta, kur verta ieškoti greičio.

Pasirinkite tinkamą formatą:

FormatasGeriausiai tinkaPrivalumai
WebPNuotraukos ir grafika25–35 proc. mažesni failai nei JPEG
AVIFNuotraukos (naujesnės naršyklės)Iki 50 proc. mažesni nei JPEG
SVGLogotipai, ikonos, vektorinė grafikaBegalinis mastelis, mažas dydis
JPEGNuotraukos (atsarginė parinktis)Platus palaikymas
PNGGrafika su permatomumuBevielis kokybės praradimas

Praktiniai žingsniai:

  • Sumažinkite vaizdų matmenis iki tikrojo rodymo dydžio. Jei vaizdas rodomas 800×600 pikselių, nėra prasmės įkelti 4000×3000 pikselių originalą.
  • Naudokite srcset atributą, kad naršyklė galėtų pasirinkti tinkamiausią vaizdo versiją pagal ekrano dydį.
  • Kompresuokite vaizdus naudodami įrankius: „Squoosh”, „TinyPNG”, „ShortPixel” arba „ImageOptim”.
  • Nustatykite kompresijos kokybę ties 75–85 proc. JPEG formatui – kokybės skirtumas akiai beveik nematomas, o failo dydis mažėja reikšmingai.

Kodo pavyzdys su srcset:

<img 
  src="vaizdas-800.webp" 
  srcset="vaizdas-400.webp 400w, 
          vaizdas-800.webp 800w, 
          vaizdas-1200.webp 1200w" 
  sizes="(max-width: 600px) 400px, 
         (max-width: 1024px) 800px, 
         1200px" 
  alt="Svetainės greičio optimizavimo schema"
  width="800" 
  height="600"
  loading="lazy">

3. Lazy loading – kraukite tik tai, kas matoma

Lazy loading (tingus krovimas) reiškia, kad vaizdai ir kiti sunkūs elementai kraunami tik tada, kai naudotojas prislinksta iki jų. Tai drastiškai sumažina pradinį puslapio įkrovimo laiką.

Kaip įgyvendinti:

  • Naudokite natyvų HTML atributą loading="lazy" – jį palaiko visos šiuolaikinės naršyklės.
  • Pirmam ekranui matomus vaizdus (hero image, logotipas) nekraukite tingiai – jiems nustatykite loading="eager" arba tiesiog praleiskite loading atributą.
  • Vaizdo įrašams ir iframe elementams (pvz., „YouTube” video) taikykite tą patį principą.

Svarbi detalė: visada nurodykite width ir height atributus vaizdams. Tai padeda naršyklei iš anksto rezervuoti vietą ir išvengti turinio šokinėjimo (CLS problemų).

4. Naršyklės talpyklos (cache) valdymas

Kai lankytojas grįžta į jūsų svetainę antrą kartą, naršyklė neturėtų vėl siųstis visų failų iš naujo. Tinkamas talpyklos nustatymas leidžia naršyklei saugoti statinius failus vietiniame kompiuteryje.

.htaccess failų pavyzdys (Apache serveris):

<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType image/webp "access plus 1 year"
  ExpiresByType image/jpeg "access plus 1 year"
  ExpiresByType image/png "access plus 1 year"
  ExpiresByType text/css "access plus 1 month"
  ExpiresByType application/javascript "access plus 1 month"
  ExpiresByType application/font-woff2 "access plus 1 year"
</IfModule>

Rekomenduojami talpyklos laikotarpiai:

  • Vaizdai, šriftai: 1 metai
  • CSS ir JavaScript failai: 1 mėnuo (su versijų valdymu failų pavadinimuose)
  • HTML dokumentai: be talpyklos arba kelios minutės

Kai atnaujinate CSS ar JS failus, naudokite failų pavadinimų versijavimą (pvz., stilius.v2.4.css), kad naršyklė žinotų, jog turinys pasikeitė.

5. CSS ir JavaScript failų mažinimas (minifikacija)

Kiekvienas nereikalingas tarpas, komentaras ir eilutės lūžis jūsų kode prideda papildomų baitų. Minifikacija pašalina viską, kas nereikalinga naršyklei, nekeičiant kodo funkcionalumo.

Įrankiai:

  • CSS: „cssnano”, „clean-css”, „PurgeCSS” (šis pašalina nenaudojamas CSS taisykles)
  • JavaScript: „Terser”, „UglifyJS”
  • HTML: „html-minifier”

Realus efektas: tipinis CSS failas po minifikacijos sumažėja 20–30 proc. JavaScript – 30–50 proc.

Jei naudojate „WordPress”, įskiepiai kaip „Autoptimize” arba „WP Rocket” atlieka minifikaciją automatiškai.

6. Kritinio CSS išskyrimas (Critical CSS)

Naršyklė negali rodyti puslapio, kol neparsisiuntė ir neapdorojo viso CSS failo. Jei jūsų CSS failas sveria 200 KB, tai reiškia, kad naudotojas mato tuščią ekraną, kol visas failas atsisiunčia.

Sprendimas: išskirkite „kritinį CSS” – tik tas taisykles, kurios reikalingos pirmam matomam ekranui (above the fold), ir įterpkite jas tiesiai į HTML <head> sekciją. Likusį CSS kraukite asinchroniškai.

<head>
  <style>
    /* Kritinis CSS – tik pirmo ekrano stiliai */
    body { font-family: sans-serif; margin: 0; }
    .hero { background: #1a1a2e; color: white; padding: 60px 20px; }
    .nav { display: flex; justify-content: space-between; }
  </style>
  <link rel="preload" href="stilius.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
</head>

Įrankiai kaip „Critical” (npm paketas) arba „Penthouse” automatiškai išskiria kritinį CSS.

7. JavaScript optimizavimas

JavaScript dažnai yra didžiausias greičio stabdys, nes naršyklė turi ne tik parsisiųsti failą, bet ir jį išanalizuoti bei įvykdyti. Tai blokuoja puslapio renderinimą.

Pagrindinės strategijos:

Atidėtas krovimas: naudokite defer arba async atributus skriptams, kurie nėra būtini pradiniam puslapio rodymui.

<!-- Geras: skriptas kraunamas lygiagrečiai, vykdomas po HTML parsingo -->
<script src="analitika.js" defer></script>

<!-- Geras: skriptas kraunamas ir vykdomas nepriklausomai -->
<script src="reklamos.js" async></script>

Kodo skaidymas (code splitting): jei naudojate React, Vue ar kitą framework, skaidykite kodą į mažesnius gabalus, kad kiekvienas puslapis krautų tik jam reikalingą JavaScript.

Trečiųjų šalių skriptų auditas: peržiūrėkite visus išorinius skriptus (analitika, reklamos, socialiniai tinklai, pokalbių valdikliai). Kiekvienas papildomas skriptas prideda HTTP užklausų ir procesoriaus apkrovos. Palikite tik tuos, kurie tikrai reikalingi.

8. GZIP arba Brotli suspaudimas

Teksto failai (HTML, CSS, JavaScript, JSON, XML) gali būti suspaužiami serveryje prieš siunčiant naršyklei. Tai sumažina perduodamų duomenų kiekį 60–80 proc.

Brotli yra naujesnis suspaudimo algoritmas, kuris pasiekia 15–25 proc. geresnį suspaudimą nei GZIP, ir jį palaiko visos šiuolaikinės naršyklės.

Nginx konfigūracijos pavyzdys:

# GZIP
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml;
gzip_min_length 256;

# Brotli (jei modulis įdiegtas)
brotli on;
brotli_types text/plain text/css application/json application/javascript text/xml;
brotli_comp_level 6;

Patikrinti, ar suspaudimas veikia, galite naudodami „Chrome DevTools” → Network skirtuką. Stulpelyje „Size” matysite faktinį persiųstą dydį, o „Content-Encoding” antraštėje – naudojamą suspaudimo metodą.

9. CDN (turinio pristatymo tinklas) naudojimas

CDN išdėsto jūsų svetainės statinius failus (vaizdus, CSS, JS, šriftus) serveriuose visame pasaulyje. Kai lankytojas iš Vilniaus kreipiasi į jūsų svetainę, failai ateina iš artimiausio serverio Europoje, o ne iš pagrindinio serverio, kuris galbūt stovi Jungtinėse Valstijose.

Populiariausi CDN paslaugų teikėjai:

  • Cloudflare – turi nemokamą planą, kuris apima CDN, DDoS apsaugą ir bazinį optimizavimą.
  • Bunny.net – vienas pigiausių sprendimų su puikiu greičiu.
  • AWS CloudFront – tinka tiems, kurie jau naudoja „Amazon Web Services” infrastruktūrą.
  • Fastly – pasižymi itin mažu delsa ir lanksčia konfigūracija.

Tipinis greičio pagerėjimas prijungus CDN: 40–60 proc. nutolusių lankytojų atveju.

10. Serverio atsakymo laiko (TTFB) mažinimas

TTFB (Time to First Byte) – tai laikas nuo naršyklės užklausos iki pirmo baito gavimo iš serverio. Jei TTFB viršija 600 milisekundžių, tai signalas, kad serverio pusėje kažkas negerai.

Dažniausios TTFB problemos ir sprendimai:

  • Lėtas hostingas. Pigiausi bendrinamo hostingo planai dažnai talpina šimtus svetainių viename serveryje. Pereikite prie VPS arba valdomo hostingo, jei jūsų svetainė sulaukia daugiau nei 1000 lankytojų per dieną.
  • Duomenų bazės užklausos. Lėtos SQL užklausos gali dramatiškai sulėtinti serverio atsakymą. Naudokite indeksus, optimizuokite užklausas ir įjunkite objektų talpyklą (Redis, Memcached).
  • PHP versija. Jei naudojate „WordPress” ar kitą PHP pagrįstą sistemą, įsitikinkite, kad veikiate su PHP 8.x versija. Skirtumas tarp PHP 7.4 ir PHP 8.2 gali būti 20–30 proc. greičio.
  • Serverio vieta. Pasirinkite serverį toje geografinėje zonoje, kur yra dauguma jūsų lankytojų.

11. Šriftų optimizavimas

Tinklo šriftai (Google Fonts, Adobe Fonts) gali pridėti 100–500 KB prie puslapio svorio ir blokuoti teksto rodymą.

Optimizavimo žingsniai:

  1. Apribokite šriftų skaičių. Du šriftai (antraštėms ir pagrindiniam tekstui) paprastai pakanka. Kiekvienas papildomas šriftas – tai papildomos užklausos ir baitai.
  2. Naudokite font-display: swap. Tai leidžia naršyklei rodyti atsarginį sistemos šriftą, kol atsisiunčia tinklo šriftas, užuot rodžius tuščią vietą.
@font-face {
  font-family: 'ManoŠriftas';
  src: url('mano-sriftas.woff2') format('woff2');
  font-display: swap;
}
  1. Naudokite WOFF2 formatą. Jis yra 30 proc. mažesnis nei WOFF ir palaikomas visų šiuolaikinių naršyklių.
  2. Talpinkite šriftus savo serveryje vietoj „Google Fonts” CDN. Tai sumažina DNS užklausų skaičių ir leidžia geriau kontroliuoti talpyklą.
  3. Naudokite preload svarbiausiam šriftui:
<link rel="preload" href="/fonts/mano-sriftas.woff2" as="font" type="font/woff2" crossorigin>

12. HTTP užklausų mažinimas

Kiekviena HTTP užklausa turi savo kainą: DNS paieška, TCP ryšio užmezgimas, SSL derybos. Net su HTTP/2 protokolu, mažesnis užklausų skaičius reiškia greitesnį puslapį.

Praktiniai būdai:

  • Sujunkite CSS failus į vieną (arba du: kritinis + likęs).
  • Naudokite SVG sprites vietoj daugelio atskirų ikonų failų.
  • Pašalinkite nenaudojamus įskiepius ir skriptus. Kiekvienas „WordPress” įskiepis paprastai prideda bent vieną CSS ir vieną JS failą.
  • Naudokite HTTP/2 arba HTTP/3 protokolą. HTTP/2 leidžia siųsti kelis failus vienu metu per vieną ryšį, o HTTP/3 (QUIC) dar labiau sumažina delsą.

Patikrinkite savo svetainės užklausų skaičių „Chrome DevTools” Network skirtuke. Jei matote daugiau nei 80–100 užklausų, verta optimizuoti.

13. Duomenų bazės optimizavimas

Jei jūsų svetainė veikia su „WordPress”, „Joomla” ar kita turinio valdymo sistema, duomenų bazė laikui bėgant tampa lėtesnė dėl sukauptų nereikalingų duomenų.

Ką valyti:

  • Straipsnių peržiūrų (revisions) skaičių apribokite iki 3–5.
  • Pašalinkite spam komentarus ir šiukšliadėžės turinį.
  • Išvalykite transient (laikinuosius) įrašus.
  • Optimizuokite duomenų bazės lenteles (MySQL: OPTIMIZE TABLE).
  • Pašalinkite nebenaudojamų įskiepių paliktus duomenis.

„WordPress” aplinkoje įskiepis „WP-Optimize” arba „Advanced Database Cleaner” atlieka šiuos veiksmus keliais paspaudimais.

14. Išankstinis resursų krovimas (Resource Hints)

Naršyklei galite iš anksto pranešti, kokius resursus ji turės parsisiųsti, ir tai leidžia jai pradėti darbą anksčiau.

<!-- DNS paieška iš anksto -->
<link rel="dns-prefetch" href="//fonts.googleapis.com">

<!-- Ryšio užmezgimas iš anksto -->
<link rel="preconnect" href="https://cdn.example.com" crossorigin>

<!-- Svarbaus resurso krovimas iš anksto -->
<link rel="preload" href="/fonts/pagrindinis.woff2" as="font" type="font/woff2" crossorigin>

<!-- Kito puslapio krovimas iš anksto (kai tikimybė, kad naudotojas jį aplankys, didelė) -->
<link rel="prefetch" href="/kitas-puslapis.html">

Kada ką naudoti:

  • preconnect – trečiųjų šalių domenams, iš kurių krausite resursus (CDN, šriftų serveriai).
  • preload – pačiam svarbiausiam resursui, kuris būtinas pirmam ekranui (pagrindinis šriftas, hero vaizdas).
  • prefetch – resursams, kurie greičiausiai bus reikalingi kitame puslapyje.
  • dns-prefetch – domenams, prie kurių prisijungsite vėliau.

15. Reguliaraus monitoringo sistema

Svetainės greitis nėra „padaryk ir pamiršk” užduotis. Nauji straipsniai, atnaujinti įskiepiai, papildomi sekimo skriptai – visa tai laikui bėgant lėtina svetainę. Sukurkite reguliaraus stebėjimo rutiną.

Kas savaitę:

  • Patikrinkite PageSpeed Insights balą.
  • Peržiūrėkite „Google Search Console” → Core Web Vitals ataskaitą.

Kas mėnesį:

  • Atlikite pilną GTmetrix auditą.
  • Peržiūrėkite trečiųjų šalių skriptų sąrašą – ar visi vis dar reikalingi?
  • Patikrinkite puslapio svorį ir palyginkite su praėjusio mėnesio rodikliais.

Kas ketvirtį:

  • Atlikite išsamų svetainės greičio auditą su „Lighthouse”.
  • Peržiūrėkite ir atnaujinkite talpyklos strategiją.
  • Įvertinkite, ar dabartinis hostingo planas atitinka svetainės poreikius.

Greičio optimizavimo kontrolinis sąrašas

VeiksmasPrioritetasNumatomas efektas
Vaizdų konvertavimas į WebP/AVIFAukštas30–50 proc. mažesnis puslapio svoris
Lazy loading vaizdamsAukštas20–40 proc. greitesnis pradinis krovimas
GZIP/Brotli suspaudimasAukštas60–80 proc. mažesni tekstiniai failai
Naršyklės talpyklaAukštasGreitas pakartotinis apsilankymas
CDN prijungimasVidutinis-aukštas40–60 proc. greičiau nutolusiems lankytojams
CSS/JS minifikacijaVidutinis20–50 proc. mažesni failai
Kritinis CSSVidutinisGreitesnis pirmojo ekrano rodymas
JavaScript atidėjimasVidutinisMažesnė renderinimo blokavimo trukmė
Šriftų optimizavimasVidutinis100–400 KB mažiau
TTFB optimizavimasVidutinisGreitesnis serverio atsakas
HTTP užklausų mažinimasŽemas-vidutinisMažesnis tinklo apkrovimas
Duomenų bazės valymasŽemas-vidutinisGreitesnis dinaminių puslapių krovimas

Koks yra geras svetainės greitis?

Orientuokitės į šiuos rodiklius:

  • Bendras įkrovimo laikas: iki 2,5 sekundės (mobiliuosiuose – iki 3 sekundžių)
  • LCP: iki 2,5 sekundės
  • FID / INP: iki 200 milisekundžių
  • CLS: mažiau nei 0,1
  • TTFB: iki 400 milisekundžių
  • Puslapio svoris: iki 1,5 MB (idealiai – iki 1 MB)
  • PageSpeed Insights balas: 90+ (žalias)

Kokie rezultatai realistiški?

Vieno straipsnio patarimai nepavers lėtos svetainės žaibiška per naktį, bet štai kokie rezultatai yra pasiekiami per 2–4 savaites nuoseklaus darbo:

  • Svetainė, kuri kraunasi per 8 sekundes, gali pasiekti 2–3 sekundes.
  • PageSpeed balas nuo 30–40 gali pakilti iki 80–95.
  • Puslapio svoris nuo 5 MB gali sumažėti iki 1–1,5 MB.

Pradėkite nuo didžiausią poveikį turinčių veiksmų (vaizdų optimizavimas, suspaudimas, talpykla), o paskui pereikite prie smulkesnių detalių. Kiekvienas pagerėjimas kaupiasi ir veikia kartu.


Ar jūsų svetainė jau buvo testuota su „PageSpeed Insights”? Kokį balą gavote ir kuriose srityse matote didžiausius iššūkius? Tai padėtų nustatyti, nuo kurio optimizavimo žingsnio verta pradėti jūsų konkrečiu atveju.

Į viršų