Tartalomkészítés.hu

WebP: teljes útmutató

Kép és videó SEO

A WebP a Google által fejlesztett képformátum, amely veszteséges és veszteségmentes tömörítést, átlátszóságot és animációt is támogat egyetlen fájltípusban. A legtöbb weboldalon JPEG és PNG helyett használva kisebb fájlméretet ad hasonló minőség mellett, így gyorsabb lesz a betöltés. A modern böngészők támogatják, a régiekhez a picture elemmel adhatsz tartalék formátumot.

Alapfogalmak

Mielőtt bármit konvertálnál, érdemes tisztán látni, mit is tud ez a formátum, és miben különbözik azoktól, amelyeket eddig használtál. A WebP nem csodaszer: egy eszköz, amely bizonyos képtípusoknál látványos megtakarítást hoz, másoknál alig számít. A döntéseidet csak akkor hozhatod meg jól, ha érted a fogalmakat. A képoptimalizálás tágabb összefüggéseit a Kép SEO: teljes útmutató foglalja össze, itt kifejezetten a formátumra koncentrálunk.

Mi az a WebP?

A WebP egy raszteres képformátum, amelyet a Google mutatott be, és a VP8 videokodek képkocka-tömörítési technikájára épül. A fájl egy RIFF nevű konténerbe kerül, ezért egyetlen fájlban több adattípust is tárolhat: magát a képet, átlátszósági csatornát, színprofilt, metaadatot vagy animációs képkockákat. A kiterjesztése .webp, a MIME-típusa image/webp. Ez utóbbi fontos, mert a szervernek ezzel a típussal kell kiszolgálnia a fájlt, különben egyes böngészők vagy proxyk hibásan kezelhetik.

Veszteséges és veszteségmentes mód

A formátum két, egymástól lényegesen eltérő kódolást kínál. A veszteséges mód a JPEG-hez hasonlóan eldob olyan képinformációt, amelyet a szem kevésbé érzékel, cserébe jóval kisebb fájlt ad. A veszteségmentes mód a PNG-hez hasonlóan minden pixelt pontosan megőriz. A kettő között létezik egy köztes megoldás is, a közel veszteségmentes (near-lossless) beállítás, amely apró pixelérték-módosításokkal segíti a jobb tömöríthetőséget, de vizuálisan szinte érintetlen marad.

Átlátszóság és animáció

A WebP támogatja az alfa-csatornát, vagyis az átlátszó hátteret, méghozzá veszteséges módban is. Ez lényeges különbség a JPEG-hez képest, amely egyáltalán nem tud átlátszóságot. Animált WebP is készíthető, amely sok esetben a GIF kiváltására alkalmas, mert 24 bites színt és átlátszóságot is kezel, míg a GIF csak 256 színnel dolgozik.

Összehasonlító táblázat

TulajdonságJPEGPNGGIFWebP
Veszteséges tömörítésIgenNemNemIgen
Veszteségmentes tömörítésNemIgenIgen (256 szín)Igen
ÁtlátszóságNemIgenCsak teljes vagy semmiIgen, fokozatos is
AnimációNemCsak APNG változatbanIgenIgen
BöngészőtámogatásUniverzálisUniverzálisUniverzálisModern böngészők

Gyakori tévhit: a WebP mindig jobb

Sokan úgy gondolják, hogy a WebP minden helyzetben kisebb fájlt ad. Ez nem igaz. Egy már erősen tömörített, kis felbontású JPEG-et WebP-be alakítva előfordulhat, hogy a méret alig csökken, vagy akár nő, miközben a minőség romlik, mert kétszer tömörítetted a képet. A formátum előnye akkor jön ki igazán, ha jó minőségű forrásból dolgozol. Az is tévhit, hogy a WebP önmagában javítja a rangsorolást: a keresőmotor nem a formátumot jutalmazza, hanem a gyorsabb oldalt és a jobb felhasználói élményt, amelyhez a kisebb kép hozzájárulhat.

Hogyan működik?

A működés megértése segít abban, hogy ne vakon állítsd a minőségi csúszkát. Ha tudod, mit csinál a kódoló, előre megsejtheted, melyik képnél érdemes erősebben tömöríteni, és melyiknél kell óvatosnak lenned. Nem kell kodekmérnöknek lenned, de a főbb lépéseket érdemes ismerni.

A veszteséges kódolás lépései

A veszteséges WebP prediktív kódolást használ, ami a VP8 videotömörítésből ered. A folyamat leegyszerűsítve így néz ki:

  1. A kódoló a képet makroblokkokra bontja, ezek kis négyzet alakú pixelcsoportok.
  2. Minden blokknál megpróbálja megjósolni a tartalmat a már kódolt szomszédos pixelek alapján (függőleges, vízszintes, átlagoló és egyéb előrejelzési módokkal).
  3. Csak a jóslat és a valós érték közötti különbséget, a maradékot tárolja.
  4. Ezt a maradékot frekvenciatartományba alakítja, majd kvantálja, vagyis a kevésbé fontos részleteket durvábban kerekíti. Itt keletkezik a veszteség.
  5. Végül entrópiakódolással tömöríti a kapott adatot.

Ebből következik egy gyakorlati szabály: a nagy, egyszínű vagy lágyan átmenő felületek nagyon jól jósolhatók, ezért kevés adatot igényelnek. A sok apró részletet, zajt, éles textúrát tartalmazó fotók nehezebben tömöríthetők, ott a minőségi beállítás csökkentése hamarabb látható hibákat okoz.

A veszteségmentes kódolás

A veszteségmentes mód más technikákat alkalmaz. Ezek között szerepel a pixelek előrejelzése a szomszédok alapján, színtér-transzformáció, a már előfordult pixelminták visszahivatkozása, valamint színpaletta használata, ha a kép kevés színből áll. Emiatt képernyőképeknél, logóknál, ikonoknál és diagramoknál a veszteségmentes WebP gyakran jobban teljesít, mint a veszteséges, hiszen az éles éleket a veszteséges kódolás hajlamos elmosni.

Az alfa-csatorna kezelése

Az átlátszóság külön adatfolyamként tárolódik. Ennek az a következménye, hogy egy terméket átlátszó háttérrel bemutató fotónál a színes részt veszteségesen tömörítheted, az átlátszósági maszkot pedig veszteségmentesen. Ez az egyik legnagyobb gyakorlati előny a PNG-vel szemben: egy átlátszó hátterű termékfotó PNG-ként gyakran nagy fájl, WebP-ként pedig jellemzően jóval kisebb lehet.

Hogyan kerül a böngészőhöz?

A böngésző a kérésben egy Accept fejlécet küld, amelyben jelzi, milyen képformátumokat fogad el. Erre két módon reagálhat a weboldal:

  • Kliensoldali választás: a HTML-ben a picture elem több forrást kínál, és a böngésző maga választja ki az elsőt, amelyet támogat.
  • Szerveroldali tartalomegyeztetés: a szerver vagy a CDN az Accept fejléc alapján ugyanazon az URL-en WebP-t vagy JPEG-et küld. Ilyenkor a Vary: Accept fejléc beállítása szükséges, hogy a gyorsítótárak ne keverjék össze a változatokat.

Határeset: nagyon nagy képek

A WebP-nek van méretkorlátja: egy kép mindkét dimenzióban legfeljebb 16383 pixel lehet. Webes megjelenítésnél ez szinte sosem okoz gondot, de ha panorámaképeket, nagy felbontású térképeket vagy nyomdai forrásokat konvertálsz automatikusan, a folyamat ezeknél hibára futhat. Érdemes a konvertáló szkriptbe egy előzetes méretellenőrzést tenni, és az ilyen képeket előbb lekicsinyíteni, ami webes célra amúgy is indokolt.

Fő módszerek

A WebP bevezetésére több út létezik, és a választás leginkább attól függ, milyen rendszeren fut az oldalad, mennyi képed van, és mennyire szeretnéd automatizálni a folyamatot. Az alábbiakban a gyakorlatban elterjedt módszereket nézzük végig, majd egy döntési szabályt és egy kidolgozott példát is kapsz.

1. Kézi konvertálás grafikus eszközzel

Kis oldalnál, néhány tucat képnél a kézi konvertálás teljesen elfogadható. A Google által indított Squoosh webes felületen egymás mellett láthatod az eredeti és a tömörített képet, és azonnal látod a méretkülönbséget. Képszerkesztő programok közül több is tud WebP-be exportálni. Ennek előnye, hogy minden képnél tudatosan döntesz, hátránya, hogy nem skálázható, és könnyű elfelejteni egy-egy új feltöltésnél.

2. Parancssoros konvertálás

A Google libwebp csomagjában található cwebp parancs a legközvetlenebb eszköz. Egy fotó konvertálása például így nézhet ki: cwebp -q 80 eredeti.jpg -o kimenet.webp. A -q kapcsolóval a minőséget állítod 0 és 100 között, a -lossless kapcsolóval veszteségmentes kódolást kérsz. Ugyanígy használható az ImageMagick is, illetve Node.js környezetben a Sharp könyvtár. Ezekkel egyetlen szkript akár több ezer képet is feldolgoz.

3. CMS-bővítmény vagy beépített támogatás

A legtöbb tartalomkezelő rendszerhez létezik képoptimalizáló bővítmény, amely feltöltéskor automatikusan elkészíti a WebP változatot, és gondoskodik a kiszolgálásról. A WordPress újabb verziói maguk is kezelik a WebP feltöltést. Ennél a módszernél ellenőrizd, hogy a bővítmény hogyan szolgálja ki a képeket: picture elemmel, szerveroldali átírással, vagy egyszerűen lecseréli a fájlt. Mindháromnak más következménye van a gyorsítótárazásra és a régi böngészőkre.

4. CDN vagy képszolgáltatás

Képekre szakosodott CDN-ek és képátalakító szolgáltatások menet közben, az Accept fejléc alapján állítják elő a megfelelő formátumot és méretet. Ez a legkényelmesebb megoldás nagy oldalaknál, mert a forrásképeket érintetlenül hagyhatod. Cserébe függsz a szolgáltatótól, és érdemes ellenőrizni, hogy a képek URL-je stabil marad-e, mert a képkeresőben való megjelenéshez az is számít.

A picture elem helyes használata

Ha a kliensoldali megoldást választod, a szerkezet egyszerű: a picture elemen belül egy source elem image/webp típussal és a WebP fájllal, utána egy img elem a JPEG vagy PNG tartalékkal. Az alt szöveget, a width és height attribútumot, valamint a loading beállítást az img elemre teszed, mert ez a ténylegesen megjelenő elem. Az alt szöveg megfogalmazásáról részletesen az Alt text: teljes útmutató ír.

Döntési szabály: melyik képhez milyen beállítás?

KéptípusJavasolt módKiinduló beállítás
Fotó, termékkép, hero képVeszteségesMinőség 75 és 85 között, vizuális ellenőrzéssel
Átlátszó hátterű termékfotóVeszteséges, alfa-csatornávalMinőség 80 körül
Logó, ikon, kevés színű grafikaVeszteségmentesLossless, vagy SVG, ha vektoros a forrás
Képernyőkép szöveggelVeszteségmentes vagy közel veszteségmentesNear-lossless kipróbálása
Rövid animációAnimált WebPGIF helyett, hosszabbnál videó jobb

A számok kiindulópontok, nem szabályok. Mindig nézd meg az eredményt valós megjelenítési méretben, ne nagyítva és ne csak a fájlméretet.

Kidolgozott példa egy webshop kategóriaoldalára

Vegyünk egy szemléltető esetet: egy kategóriaoldalon 24 termékkép jelenik meg, mindegyik 800 pixel széles JPEG, a teljes képsúly nagyjából 3 MB. A munkafolyamat:

  1. Visszakeresed az eredeti, tömörítetlen vagy jó minőségű forrásképeket, nem a már feltöltött JPEG-eket konvertálod.
  2. Kiválasztasz három jellemző képet: egy világos, egy sötét és egy részletgazdag terméket.
  3. Mindhármat elkészíted 70, 80 és 90 minőséggel, és valós méretben összehasonlítod.
  4. A legalacsonyabb olyan értéket választod, amelynél egyik képen sem látsz zavaró hibát.
  5. Ezzel a beállítással kötegelten konvertálod mind a 24 képet, és a kiszolgálást picture elemmel vagy a CMS-sel oldod meg.
  6. Utána méréssel ellenőrzöd a képsúlyt és a betöltési mutatókat.

Ha a szemléltető példában a képsúly 3 MB-ról mondjuk 1,8 MB-ra csökken, az mobilneten érezhető különbség, de a pontos arány minden oldalon más lesz, ezért mindig a saját mérésedre hagyatkozz.

Gyakori hibák

A WebP bevezetése egyszerűnek tűnik, mégis rengeteg oldalon látni olyan megoldást, amely rosszabb eredményt ad, mint ha maradtak volna a régi formátumnál. A legtöbb hiba nem a formátumból, hanem a folyamatból fakad. Az alábbi lista a leggyakoribb buktatókat gyűjti össze, mindegyiknél azzal, hogyan javíthatod.

Már tömörített képek újratömörítése

Ez a leggyakoribb hiba. Ha egy 60 százalékos minőséggel mentett JPEG-et alakítasz WebP-vé, a kódoló a JPEG hibáit is megpróbálja hűen leképezni, ráadásul hozzáteszi a saját veszteségét. Az eredmény kockás, mosott kép, gyakran alig kisebb fájlmérettel. Mindig a legjobb elérhető forrásból dolgozz. Ha nincs eredeti, legalább a lehető legnagyobb felbontású változatot használd, és a minőséget ne vidd túl alacsonyra.

A méretezés kihagyása

A formátumváltás nem helyettesíti a helyes képméretet. Egy 4000 pixel széles WebP, amely 400 pixeles dobozban jelenik meg, sokkal nagyobb, mint egy jól méretezett JPEG. Előbb méretezz, aztán tömöríts. Reszponzív oldalon készíts több szélességet, és a srcset attribútummal kínáld fel őket, hogy a telefon ne töltse le az asztali változatot.

Hiányzó tartalék formátum

A modern böngészők szinte mind támogatják a WebP-t, de ha a közönséged egy része régi eszközről, régi beágyazott böngészőből vagy speciális szoftverből érkezik, tartalék nélkül ők üres képet látnak. A picture elemmel vagy szerveroldali egyeztetéssel ez könnyen elkerülhető. Gondolj azokra a helyekre is, ahol a képed nem böngészőben jelenik meg: egyes e-mail kliensek, megosztási előnézetek vagy külső platformok nem feltétlenül kezelik a WebP-t. Az Open Graph megosztási képnél ezért sokan biztonsági okból JPEG-et használnak.

Vary fejléc nélküli szerveroldali kiszolgálás

Ha ugyanazon az URL-en a böngészőtől függően más formátumot küldesz, de nem állítod be a Vary: Accept fejlécet, egy köztes gyorsítótár eltárolhatja a WebP változatot, és azt adhatja egy olyan kliensnek is, amely nem tudja megjeleníteni. Ez nehezen reprodukálható, időszakos hibákat okoz. Ellenőrizd a válaszfejléceket, és nézd meg a CDN dokumentációját is.

Hibás MIME-típus

Régebbi szerverkonfigurációk nem ismerik a .webp kiterjesztést, és általános bináris típusként szolgálják ki. Ilyenkor egyes böngészők nem jelenítik meg a képet, vagy letöltésre kínálják. A javítás a szerver beállításaiban egy sor, de ha nem tudsz róla, sokáig keresheted a hiba okát.

Egyetlen minőségi érték mindenre

Ha minden képet ugyanazzal a beállítással konvertálsz, a logók elmosódnak, a fotók pedig feleslegesen nagyok maradhatnak. A képtípus szerinti szétválasztás, amelyet a Fő módszerek fejezet táblázata mutat, kis plusz munkával sokkal jobb eredményt ad.

Az SEO-elemek elvesztése a cserénél

Bővítmények és szkriptek néha lecserélik a fájlneveket, eltávolítják az alt szöveget, vagy új URL-re teszik a képeket átirányítás nélkül. A képkeresőből érkező forgalom ilyenkor visszaeshet, mert a keresőnek újra fel kell fedeznie és indexelnie a képeket. Tartsd meg a beszédes fájlneveket, az alt szövegeket és lehetőleg az URL-szerkezetet is.

Ellenpélda: amikor jobb kihagyni a WebP-t

Van, amikor a WebP nem a jó válasz. Vektoros logónál az SVG szinte mindig kisebb és élesebb. Hosszabb animációnál egy rövid, néma videó gyakran sokkal kisebb, mint egy animált WebP. Ha pedig nyomtatható, letölthető anyagot kínálsz, a felhasználónak valószínűleg egy univerzálisan megnyitható JPEG vagy PNG kényelmesebb.

Mérés

A konvertálás csak akkor sikeres, ha számokkal is igazolni tudod. A mérés két kérdésre ad választ: valóban csökkent-e a letöltött adatmennyiség, és ez javított-e a felhasználók által érzékelt sebességen. A második nem következik automatikusan az elsőből, ezért mindkettőt érdemes vizsgálni.

Mit mérj?

  • Képsúly oldalanként: a letöltött képek összmérete egy adott oldalon, a konvertálás előtt és után.
  • Largest Contentful Paint (LCP): ha az oldal legnagyobb eleme egy kép, a mérete közvetlenül befolyásolhatja ezt a Core Web Vitals mutatót.
  • Cumulative Layout Shift (CLS): a formátumcsere nem okozhat elcsúszást, de ha közben elvesznek a width és height attribútumok, romolhat.
  • Vizuális minőség: szemmel, valós megjelenítési méretben, több eszközön.
  • Képkeresési forgalom: a csere után néhány héttel érdemes megnézni, nem esett-e vissza.

Eszközök

A böngésző fejlesztői eszközeinek Hálózat lapján képtípusra szűrve látod, hogy a böngésző valóban WebP-t kapott-e, és mekkora fájlt. A Type oszlopban a webp jelzés, a válaszfejlécekben a content-type mező a beszédes. A Lighthouse és a PageSpeed Insights jelzi, ha a képek kiszolgálásán lehetne javítani, például modernebb formátummal vagy jobb méretezéssel. A Search Console Core Web Vitals jelentése valós felhasználói adatokra épül, ezért ott a változás lassabban, néhány hetes késéssel jelenik meg.

Mérési folyamat lépésről lépésre

  1. Válassz ki három-öt reprezentatív oldaltípust (főoldal, kategória, termék vagy cikk).
  2. Rögzítsd a kiinduló állapotot: képsúly, LCP laboradatban, valamint a terepi adatok, ha vannak.
  3. Végezd el a konvertálást egy oldaltípuson, ne az egész oldalon egyszerre.
  4. Ismételd meg a mérést ugyanazzal a beállítással, ugyanazon az eszközprofilon.
  5. Ellenőrizd a Hálózat lapon, hogy a böngésző tényleg WebP-t kap, és régi böngészőben vagy annak szimulációjában a tartalék is működik.
  6. Ha az eredmény jó, terjeszd ki a többi oldaltípusra, és néhány hét múlva nézd meg a terepi adatokat is.

Ellenőrzőlista a bevezetés után

  • A szerver image/webp típussal szolgálja ki a fájlokat.
  • Szerveroldali egyeztetésnél be van állítva a Vary: Accept fejléc.
  • Minden kép mérete megfelel a megjelenítési méretnek, a srcset több szélességet kínál.
  • Az img elemen megmaradt az alt, a width és a height attribútum.
  • A fájlnevek beszédesek, az URL-ek nem változtak, vagy átirányítással vannak kezelve.
  • A logók és képernyőképek nem mosódtak el.
  • A megosztási képek külső platformokon is megjelennek.
  • Az LCP-elemként szereplő kép nincs késleltetett betöltésre állítva.

Hogyan értelmezd az eredményt?

Ha a képsúly jelentősen csökkent, de az LCP alig javult, a szűk keresztmetszet máshol lehet: lassú szerverválasz, blokkoló szkriptek, későn felfedezett hero kép. Ilyenkor a formátumváltás jó lépés volt, csak nem elég. Ha viszont a képsúly alig változott, nézd meg, nem már tömörített forrásokból dolgoztál-e, illetve nem a méretezés hiányzik-e. A WebP egy elem a képoptimalizálásban, és akkor hoz igazi eredményt, ha a méretezéssel, a betöltési sorrenddel és a gyorsítótárazással együtt kezeled.

Kapcsolódó részletes útmutatók

A WebP csak egy darabja a képek és videók keresőoptimalizálásának. Ha a formátum után a teljes képkezelési folyamatot is rendbe tennéd, az alábbi útmutatók segítenek továbblépni: a tágabb témakör áttekintésétől a fájlnevek, méretezés és indexelés kérdésein át az alternatív szövegek megírásáig.

Érdemes a sorrendet is átgondolni. Először a képek technikai alapjait tedd rendbe (méret, formátum, betöltés), utána az értelmezhetőséget (alt szöveg, környező szöveg, fájlnév), végül a mérést és a képkeresési teljesítmény figyelését. Így minden lépés az előzőre épül, és nem kell ugyanazokat a képeket többször átnézned.

További olvasnivaló

Csináltassuk meg helyetted

Ha ez sok, mi elvégezzük. Egy munkanapon belül konkrét ajánlatot kapsz.

Ajánlatot kérek