Görsel Optimizasyonu

SEO ve performans için görseller nasıl optimize edilir — WebP ve AVIF gibi modern formatlar, sıkıştırma, doğru boyutlar ve yavaş yükleme — Core Web Vitals ve LCP'yi iyileştirmek için.

İlk yayın tarihi: 2 Tem 2026 · Son güncelleme: 8 Ağu 2026 · Advanced
Diller

Görsel optimizasyonu bir hız disiplinidir, sıralama kaldıracı değil. Formatlar (WebP, AVIF), sıkıştırma ve doğru boyutlandırma, baytları küçültmek ve LCP'yi iyileştirmek için vardır — formatın kendisi için doğrudan bir sıralama artışı yoktur (Mueller bunu üç ayrı kez doğruladı). En yüksek değerli kural: LCP görselinizi (genellikle kahraman görsel) asla yavaş yüklemeyin — düzeltmeye çalıştığınız metriği geciktirir. Bu, loading="eager" ve fetchpriority="high" alır. Yerel loading="lazy", ilk görüntü alanının dışındaki görseller içindir, sabit bir 'kat altı' çizgisi değil. Sıkıştırmanın evrensel bir 'doğru' kalitesi yoktur — görsel başına test edin. Doğru boyut = işlenen kapsayıcı boyutu × cihaz piksel oranı ve bu kapsayıcı boyutu da duyarlı düzenle birlikte hareket eder, bu yüzden bir srcset aralığı sunarsınız. Bunların hiçbiri geçen bir Core Web Vitals puanı, sıralama değişikliği veya daha fazla trafik garanti etmez — öncesi ve sonrası LCP ve CLS'yi ölçün. Bu, ne/neden'in sahibi olan Görsel SEO merkezinin nasıl yapılır eşlikçisidir.

TL;DR — Görsel optimizasyonu, sayfa hızı / Core Web Vitals disiplinidir, doğrudan bir sıralama kaldıracı değildir. Biçim seçimi (WebP, AVIF) baytları küçültür ancak SEO artışı sağlamaz — Mueller bunu üç ayrı şekilde söyledi; ayrıca yalnızca sıkıştırma oranını değil, şeffaflığı, animasyonu ve mevcut tarayıcı desteğini de göz önünde bulundurun. En değerli kural: LCP görselinizi asla geç yüklemeyin (genellikle hero); bu, optimize ettiğiniz metriği geciktirir. Ona loading="eager" + fetchpriority="high" verin, ancak öncelik ipuçları yalnızca keşif/çekme zamanlaması darboğazına yardımcı olur, her LCP sorununa değil. Yerel loading="lazy", ilk görünüm alanının dışındaki görseller içindir — sabit bir “kat altı” piksel çizgisi değil. Sıkıştırmanın evrensel bir “doğru” kalitesi yoktur — her görsel türü için test edin. Doğru boyutlar = işlenen kapsayıcı boyutu × cihaz piksel oranı ve bu kapsayıcı boyutu, duyarlı düzenle birlikte değişir; bu nedenle bir srcset/sizes aralığı (yanlış bir sizes değeri sessizce büyük boyutlu bir görsel indirir) ve bir <picture> geri dönüşü sağlayın. Görseller, web’deki en yaygın LCP öğesidir; bu nedenle bu makale Web Performansı ile çapraz listelenir — ancak bunların hiçbiri geçerli bir Core Web Vitals puanı, bir sıralama değişikliği veya daha fazla trafik garanti etmez; öncesini ve sonrasını ölçün.

Görsel optimizasyonunun optimize ettiği şey (efsaneyi baştan ortadan kaldırın)

Her şeyden önce en büyük efsaneyi ortadan kaldırayım: görsel biçimi bir hız kaldıracıdır, bir sıralama kaldıracı değildir. WebP veya AVIF’e geçmek size bir sıralama artışı kazandırmaz. Size daha küçük dosyalar kazandırır, bu da size daha hızlı bir sayfa kazandırır ve bu da Core Web Vitals’ı besler — ve arama sistemlerinin kullandığı kısım budur. Zincir gerçek ancak dolaylıdır ve bunu “yeni nesil biçimler daha iyi sıralanır” şeklinde özetlemek, çoğu rakip rehberin yanıldığı yerdir.

Google’ın belgeleri, görsellerin hız için neden önemli olduğu konusunda açık sözlüdür: görseller “genel sayfa boyutuna en büyük katkıyı sağlayan öğelerdir ve bu da sayfaları yavaş ve pahalı yükleyebilir” ve öneri, “yüksek kaliteli ve hızlı bir kullanıcı deneyimi sağlamak için en son görsel optimizasyonu ve duyarlı görsel tekniklerini uygulayın” şeklindedir (Google Search Central — Görseller). Çerçeveye dikkat edin: hızlı kullanıcı deneyimi, dosya biçimi için bir sıralama ödülü değil.

Evidence for this claim Images are often a major contributor to page weight, and Google recommends responsive image and optimization techniques for a fast user experience. Scope: Google Search image guidance about performance; no claim that a particular format directly improves rankings. Confidence: high · Verified: Google Search Central: Google Images SEO

Görsel SEO’nun genel ne/neden kısmı için — alt metin, dosya adları, görsel site haritaları, yapılandırılmış veri, görsel arama sıralaması — bu, ana Görsel SEO merkezinin işidir. Bu makale, kurallara uygun nasıl kısmıdır: biçimler, sıkıştırma, boyutlandırma ve yükleme stratejisi.

Herkesin ihlal ettiği kuralla başlayın: LCP görselinizi asla geç yüklemeyin

Bu sayfadan tek bir şey alacaksanız, bunu alın. En Büyük İçerikli Boyama (LCP) öğesi — yüklemede görünüm alanında boyanan en büyük şey — web.dev’e göre “bir görsel veya bir web yazı tipidir” (LCP’yi optimize edin), ve çoğu sayfada bu bir görseldir: hero, öne çıkan görsel, ürün görseli. web.dev, kuralı Google’ın herhangi bir şeyi ifade ettiği kadar açık sözlü bir şekilde ifade eder:

“Never lazy-load your LCP image, as that will always lead to unnecessary resource load delay, and will have a negative impact on LCP.” (çeviri) «LCP görselinizi asla geç yüklemeyin, çünkü bu her zaman gereksiz kaynak yükleme gecikmesine yol açar ve LCP üzerinde olumsuz bir etkiye sahip olur.»

Evidence for this claim Lazy-loading an LCP image adds resource load delay; web.dev recommends loading it eagerly and considering high fetch priority. Scope: web.dev guidance for image-based LCP elements. Confidence: high · Verified: web.dev: Optimize LCP

Bu, çoğu “sadece geç yüklemeyi kullan” tavsiyesinin tamamen gözden kaçırdığı inceliktir. Geç yükleme harikadır — kat altındaki görseller için. Bunu LCP görseline uyguladığınızda, iyileştirmeye çalıştığınız tek metriği aktif olarak geciktirirsiniz. web.dev’in geç yükleme rehberi aynı şeyi diğer yönden söyler: “Sayfa yüklendiğinde görünüm alanında olması muhtemel görselleri, özellikle LCP görsellerini geç yüklemeyin” (Tarayıcı düzeyinde geç yükleme).

Aynı argümanı kendi Ahrefs’teki LCP makalemde de yaptım: en büyük öğe “genellikle bir öne çıkan görsel veya belki <h1> etiketi olacaktır,” ve çözümler bundan çıkar. “Görsele ihtiyacınız yoksa, en etkili çözüm ondan tamamen kurtulmaktır. Görsele sahip olmanız gerekiyorsa, boyutunu ve kalitesini mümkün olduğunca küçük tutacak şekilde optimize etmenizi öneririm.” “Hemen ihtiyacınız olmayan görselleri tembel yüklemelisiniz” — ancak bunun tersi, bir nedenden dolayı büyük harflerle yazdığım kesin bir kuraldır: “Katlanma çizgisinin üzerindeki görselleri tembel yüklemeyin!”

LCP görselinde fetchpriority="high"

Hero görselini tembel yüklememek gerekli ama yeterli değildir. LCP görselinin mümkün olduğunca erken yüklenmesini sağlamak için tarayıcıya önceliğini bildirin. web.dev’den:

“Hangi kaynakların en önemli olduğunu tarayıcıya fetchpriority özniteliğini kullanarak bildirebilirsiniz… Sayfanızın LCP öğesi olması muhtemel bir fetchpriority=\"high\" öğesinde <img> ayarlamak iyi bir fikirdir.”

<img src="/hero.webp" alt="…" fetchpriority="high" width="1200" height="675">

LCP yazımda fetchpriority="high" özelliğini aynı şekilde tanımlıyorum — <img> veya <link> etiketlerinde kullanılabilir ve tarayıcılara görseli erken getirmelerini söyler” — ve bunu, ana HTML gelmeden önce getirmeyi başlatmanın tamamlayıcı bir yolu olarak Early Hints (bir 103 yanıtı) ile eşleştiriyorum. Yani LCP tarifi şudur: eager yükleme + fetchpriority="high" (+ yığınınız destekliyorsa Early Hints). Sayfadaki diğer her şey tembel yüklenebilir.

fetchpriority ve preload’u darboğaza özgü araçlar olarak ele alın, garantili bir çözüm olarak değil. LCP görseli geç keşfedildiğinde veya geç getirildiğinde yardımcı olurlar; yavaş bir sunucu yanıtı, görselin önündeki işlemeyi engelleyen bir kaynak veya gerçekten aşırı büyük bir dosya için hiçbir şey yapmazlar. Bir öncelik ipucunun tek başına sayıyı değiştireceğini varsaymadan önce gerçekte hangi darboğaza sahip olduğunuzu doğrulayın (PageSpeed Insights veya Lighthouse, LCP’yi alt parçalarına ayırır).

Yerel loading="lazy" — katlanma çizgisinin altında ücretsiz, basit ve doğru

İlk görünüm alanında olmayan her görsel için yerel tembel yükleme, performanstaki en kolay kazanımdır. web.dev: “Özel tembel yükleme kodu yazmanıza veya ayrı bir JavaScript kitaplığı kullanmanıza gerek kalmadan görselleri tembel yüklemek için loading özniteliğini kullanabilirsiniz.”

<img src="/below-the-fold.webp" alt="…" loading="lazy" width="800" height="600">

Bunu güvenli kılan iki şey:

  • Sabit bir “katlanma çizgisi” yerine ilk görünüm alanına dayandırın. “Katlanma çizgisi” sabit bir piksel sayısı değildir — görünüm alanı boyutu ve düzeniyle değişir. Asıl test, görselin sayfa ilk boyandığında görünme olasılığının olup olmadığıdır. Görünen her şey — ve özellikle LCP görseli — loading="eager" (varsayılan) alır, asla lazy almaz.
  • JS hileleri yerine yerel özniteliği tercih edin. Gerçek URL’yi data-src içinde gizleyen ve src sunmayan JavaScript tembel yükleyiciler hiç dizine eklenmeme riski taşır. Yerel loading="lazy" (veya temiz bir IntersectionObserver) src’yi tarayıcılara görünür tutar. Üst Görsel SEO merkezi bu dizine ekleme uyarısını tam olarak ele alır.

Modern biçimler: WebP vs. AVIF vs. JPEG/PNG

Biçimler, efsaneleri çürütmenin en önemli olduğu yerdir, bu yüzden her birinin size ne kazandırdığı konusunda kesin olalım — bu baytlardır, sıralamalar değil.

  • WebP“genellikle JPEG, PNG veya GIF’ten daha iyi sıkıştırma sunar, hem kayıplı hem de kayıpsız sıkıştırma sağlar” (web.dev — Görsel performansı). JPEG’ten yaklaşık %25–35 daha küçüktür ve neredeyse evrensel tarayıcı desteğine sahiptir. Bugün fotoğraflar için güvenli varsayılan.
  • AVIF“hem kayıplı hem de kayıpsız sıkıştırmayı destekler ve testler bazı durumlarda JPEG’e kıyasla %50’den fazla tasarruf göstermiştir.” En iyi sınıf sıkıştırma, biraz daha az evrensel destek, bu yüzden WebP veya JPEG yedeğiyle eşleştirin.
  • JPEG — fotoğraflar için evrensel yedek.
  • PNG — şeffaflık veya keskin kenarlı grafikler gerektiğinde.
  • SVG — logolar ve simgeler: vektör, sonsuz ölçeklenebilir, küçük.

Hangi formatı seçeceğiniz, yalnızca hangisinin en iyi sıkıştırdığına değil, görselin ne yapması gerektiğine de bağlıdır: şeffaflık, animasyon ve bir tarayıcının veya aracın belirli bir kombinasyonu ne kadar tutarlı desteklediği, yukarıdaki ham boyut tasarruflarının yanı sıra seçimi etkileyen tüm faktörlerdir — özellikle animasyonlu herhangi bir şey için, bir formatı varsayılan olarak benimsemeden önce ihtiyacınız olan tam özellik için güncel desteği kontrol edin.

Google Arama, bir <img> src içinde referans verilen “BMP, GIF, JPEG, PNG, WebP, SVG ve AVIF” formatlarını destekler. Modern formatı <picture> kullanarak zarif bir geri dönüşle sunun:

<picture>
  <source srcset="/photo.avif" type="image/avif">
  <source srcset="/photo.webp" type="image/webp">
  <img src="/photo.jpg" alt="…" width="1200" height="800" loading="lazy">
</picture>

Alttaki <img src> sizin güvenlik ağınızdır — eski tarayıcılar ve tarayıcılar ona geri döner ve Google’ın gerçekten dizine eklediği URL budur.

Format sıralamaları etkiler mi? (Hayır — ve Mueller bunu üç şekilde söyledi)

Bu, tüm konu boyunca çekmeye değer tek efsane yıkıcı ipliktir. Üç ayrı, bağımsız zamanlı John Mueller açıklaması da aynı sonuca varıyor — format tarama/dizinleme mekaniklerini ve sayfa ağırlığını etkiler, asla doğrudan sıralamayı etkilemez:

  1. AVIF SEO artışı sağlamaz. Google yerel AVIF desteğini ekledikten sonra Mueller, AVIF kullanmanın diğer desteklenen formatlara göre bir “SEO artışı” sağlamadığını doğruladı (SE Roundtable kapsamı).
  2. WebP “iyi”dir. “WebP görselleri Görsel Arama için iyidir” — dikkat çekici bir şekilde “iyi”, “daha iyi” değil (SE Roundtable kapsamı).
  3. WebP dizinleme tuhaflıkları formata özgü değildir. İnsanlar WebP dosyalarının GSC’de “Tarandı – şu anda dizine eklenmedi” olarak göründüğünü gördüğünde, Mueller’ın noktası görüntü dosyalarının HTML sayfaları olarak dizine eklenmediğiydi ve fenomenin WebP ile sınırlı olduğuna inanmıyordu (SEJ kapsamı).
Bu temsilci ifadeleri, ofis saatleri ve sosyal gönderilerin birebir ikincil kapsamı (SE Roundtable, Search Engine Journal) aracılığıyla alıntılanmıştır; derin bağlantı verilebilir bir birincil sayfa değildir; bunlar, üst Görsel SEO merkezinde kullanılan aynı alıntılardır ve burada tutarlı tutulmuştur. SEJ makalesi Mueller’ı blok alıntı yapmak yerine başka sözcüklerle özetler/özetler.

Sıkıştırma ve kalite: evrensel bir “doğru” ayar yoktur

Görsel kılavuzlarındaki en yaygın kötü tavsiye, tek bir “%80’e sıkıştır” maddesidir. web.dev böyle sihirli bir sayının olmadığını açıkça belirtir:

“Sıkıştırırken, tüm durumlar için uygun evrensel bir ayar yoktur. Önerilen yaklaşım, görüntü kalitesi ve dosya boyutu arasında iyi bir denge bulana kadar farklı sıkıştırma seviyeleriyle denemeler yapmaktır.”

Pratikte: görsel türüne göre test edin. Fotoğraflar agresif kayıplı sıkıştırmayı iyi tolere eder; metin içeren grafikler, logolar ve ekran görüntüleri hızla bozulma gösterir ve genellikle kayıpsız veya daha yüksek kalite ayarı ister. Tek bir kaydırıcıya güvenmek yerine, aynı görseli iki veya üç kalite seviyesinde dışa aktarın ve görüntüleme boyutunda gözle inceleyin — orijinalden görsel olarak ayırt edemediğiniz en küçüğü sizin cevabınızdır. Bu gerçek bir iş akışıdır, “TinyPNG’den geçir ve umut et” değil.

Doğru boyutlar: kapsayıcı boyutu × cihaz piksel oranı

“Sadece küçült” kural değildir — işlenen boyut × cihaz piksel oranı (DPR) ile eşleştirmek kuraldır. web.dev’den:

“500 piksel x 500 piksellik bir kapsayıcıda görüntülenen bir görsel, 500 piksel x 500 pikselde en uygun şekilde boyutlandırılır.”

“Cihazın DPR’si 2 ise ve görsel 500 piksel x 500 piksellik bir kapsayıcıda görüntüleniyorsa, kare 1000 piksellik bir görsel… artık en uygun boyuttur.”

Yani 2× (Retina sınıfı) bir ekrandaki 500×500’lük bir kapsayıcı, 1 000×1 000’lik bir kaynak ister. Bundan daha büyüğe giderseniz, algılanabilir bir kazanç olmadan bayt israf edersiniz; daha küçüğe giderseniz, yüksek DPR’li ekranlarda yumuşak görünür. Bu yüzden bir aralık boyut sunar ve tarayıcının srcset + sizes kullanarak seçmesine izin verirsiniz:

<img
  src="/photo-800.webp"
  srcset="/photo-400.webp 400w, /photo-800.webp 800w, /photo-1600.webp 1600w"
  sizes="(max-width: 600px) 100vw, 500px"
  alt="…" width="800" height="600" loading="lazy">

Tarayıcı, konteyner genişliğini (sizes) ve kendi DPR değerini okur, ardından srcset içinden doğru adayı seçer — yukarıdaki DPR matematiğinin responsive teslim versiyonu. Google, responsive görseller için <picture> veya srcset önerir ve “her zaman src özniteliğini kullanarak bir yedek URL belirtin.” der.

sizes değerini yanlış ayarlarsanız hiçbir şey sizi uyarmaz. Beyan ettiğiniz değer, görselin gerçekte nasıl genişlikte görüntülendiğiyle eşleşmiyorsa — düzen veya CSS değişikliğinden sonra yaygın bir hata — tarayıcının bunu bilme yolu yoktur ve sadece verdiğiniz hatalı sayıya dayanarak bir aday seçer; bu da genellikle düzenin ihtiyaç duyduğundan daha büyük bir dosya indirmesi anlamına gelir. Bu, yukarıdaki format ve sıkıştırma çalışmasını sessizce boşa çıkarır. Bunu yakalamanın tek güvenilir yolu: DevTools’un Network panelini açın, görsel isteğini bulun ve teslim edilen dosyanın boyutlarını konteynerin gerçek görüntülenen genişliğiyle karşılaştırın.

Yukarıdaki 500×500 örneği açıklayıcıdır, site genelinde sabitlenecek bir sayı değildir — aynı hero görseli mobilde masaüstünden farklı bir genişlikte görüntülenebilir, bu nedenle “konteyner boyutu” sabit kalmak yerine responsive düzeninizle birlikte hareket eder. Bu yüzden tek bir “optimal” boyut dışa aktarıp işi bitirmek yerine bir srcset aralığı sunarsınız.

Bunların hepsi neden Core Web Vitals ile bağlantılı

Yukarıdaki her tekniği birbirine bağlayan ortak nokta LCP’dir. Görseller, web’deki en yaygın LCP öğesidir ve LCP, üç Core Web Vitals’tan biridir. Google’ın hedefi: “LCP, 2,5 saniye içinde gerçekleşmelidir” mobil ve masaüstünde sayfa yüklemelerinin 75. yüzdelik diliminde (web.dev — Vitals). Core Web Vitals “tüm web sayfalarına uygulanır, tüm site sahipleri tarafından ölçülmelidir ve tüm Google araçlarında yüzeye çıkarılacaktır.”

Yani görsel optimizasyonu ayrı bir sıralama faktörü değildir — sıralama sistemlerinin kullandığı bir sayfa deneyimi sinyaline (Core Web Vitals) katkıda bulunan bir unsurdur. Bu ayrım doğru çerçevedir ve bu makalenin hem Görsel SEO kümesinde hem de Web Performans kümesinde yer almasının nedeni budur. Metriğin kendisiyle ilgili derinlemesine bilgi için Web Performans bölümündeki Core Web Vitals ve LCP konularına bakın.

Açıkça belirtmeye değer bir uyarı daha: bu sayfadaki hiçbir düzeltme hiçbir şeyi garanti etmez. Görsel baytları LCP’nin yalnızca olası bir bileşenidir — web.dev’in LCP alt parçalarına ilişkin kendi dökümü, görselden önce sunucu yanıt süresi ve render’ı engelleyen kaynaklar gibi şeyleri içerir; bunların hiçbirine format veya sıkıştırma dokunmaz — ve görsel boyutları CLS’ye yalnızca bir girdidir, belirli bir puanın garantisi değildir. Bir hero görselini küçültmek ölçülebilir şekilde yardımcı olabilir, hiçbir şey yapmayabilir veya (gerçek darboğaz başka bir şeyse) sayıyı zar zor hareket ettirebilir. Görselleri optimize etmek ayrıca kendi başına geçerli bir Core Web Vitals değerlendirmesini, bir sıralama değişikliğini, daha fazla trafiği, daha fazla dönüşümü veya bir AI arama alıntısını garanti etmez — bunlar görsel baytlarından çok daha fazlasına bağlıdır. Her görsel düzeltmesini bir hipotez olarak ele alın, kesin bir sonuç olarak değil: LCP ve CLS’yi öncesinde ve sonrasında, laboratuvarda ve sahada ölçün ve optimizasyonun “işe yaradığı” varsayımının değil, bu verilerin bir şeyi hareket ettirip ettirmediğini size söylemesine izin verin.

Yaygın uygulama tuzakları

  • CSS arka plan görselleri dizine eklenmez. Geliştiriciler bazen düzen kolaylığı için bir <img> etiketini background-image ile değiştirir. Google “can find images in the src attribute of <img> element (even when it’s a child of other elements, such as the <picture> element)” (çeviri) «Google, <img> öğesinin src özniteliğindeki görselleri bulabilir (bu, <picture> öğesi gibi diğer öğelerin alt öğesi olsa bile)» ancak “doesn’t index CSS images.” (çeviri) «CSS görsellerini dizine eklemez.» Görselin görsel aramada çıkmasını istiyorsanız, onu bir <img> etiketinde tutun. (Bu, performansla ilgilidir, ancak hata yaygın olduğu için belirtmekte fayda var.)
  • Mevcut dosyaları toplu olarak yeniden adlandırmayın bir performans/SEO “yenilemesi” için. Mueller, Google’ın sistemlerinin yeniden adlandırılan görselleri yeniden işlemesinin “a lot of time” (çeviri) «çok zaman» aldığını ve bağlamınız zaten iyiyse etkisinin minimum olduğunu söyledi — ana Görsel SEO merkezi bunu ayrıntılı olarak ele alıyor.
  • Eksik genişlik/yükseklik. Tarayıcının görsel yüklenmeden önce yer ayırabilmesi için her zaman width ve height (veya CSS aspect-ratio) değerlerini ayarlayın — bu, görsel kaynaklı düzen kaymasını azaltır, ancak CLS’ye katkıda bulunan birkaç girdiden yalnızca biridir, belirli bir puanın garantisi değildir.

Hızlı tarif

  • Hero / LCP görseli: modern format, doğru boyut, loading="eager", fetchpriority="high".
  • Katlamanın altındaki her şey: loading="lazy".
  • WebP/AVIF’i bir <picture> src yedeğiyle sunun.
  • Kapsayıcı × DPR’ye göre boyutlandırın; srcset ile bir sizes aralığı teslim edin.
  • Görsel türüne göre sıkıştırın — 2–3 kalite seviyesini test edin, tek bir kaydırıcıya güvenmeyin.
  • Her zaman width/height ayarlayın.

Görsel SEO’nun geri kalanı için — alt metni, dosya adları, görsel site haritaları, yapılandırılmış veriler ve görsel arama sıralaması — Görsel SEO merkezine geri dönün.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.