Google PageSpeed Insights를 돌렸을 때 "차세대 형식을 사용해 이미지 제공"이라는 항목을 본 적이 있다면, 구글이 요구하는 것이 바로 이것입니다. JPG와 PNG 이미지를 WebP로 바꾸라는 뜻이죠. 사이트 성능에 가장 큰 영향을 주면서도 적용하기 가장 쉬운 조치 중 하나입니다.

WebP로 바꿔야 하는 이유

WebP는 구글이 개발해 2010년에 공개한, 웹을 위해 설계된 형식입니다. JPG나 PNG보다 최신 압축 알고리즘을 쓰며, 같은 화질에서 다음과 같은 이점을 줍니다.

체감 효과도 분명합니다. 장당 300KB짜리 JPG 사진 20장으로 이뤄진 쇼핑몰 상품 갤러리(총 6MB)는 같은 화질의 WebP로 바꾸면 4MB까지 줄어듭니다. 페이지 무게가 33% 가벼워지는 셈입니다. 구글 입장에서는 LCP가 빨라지고 PageSpeed 점수가 오르며, 순위에도 도움이 될 수 있습니다.

항목WebPJPGPNG
손실 압축(사진)✅ 매우 효율적✅ 효율적❌ 미지원
무손실 압축✅ 지원❌ 미지원✅ 지원
투명도(알파 채널)✅ 지원❌ 미지원✅ 지원
애니메이션✅ 지원❌ 미지원❌ 기본 미지원
같은 조건에서 JPG 대비 용량25~35% 작음기준50~300% 큼
브라우저 호환성>97% (2026)100%100%

WebP를 쓰지 말아야 할 때

요즘 웹에는 가장 좋은 형식이지만, WebP가 정답이 아닌 경우도 있습니다.

정리하면: 웹에 올라가는 것은 전부 WebP로 하세요. 사이트, 블로그, 쇼핑몰, SNS 모두 해당합니다. 반면 이메일 마케팅, 인쇄, 그리고 WebP를 지원하지 않을 수도 있는 상대에게 보내는 파일에는 JPG나 PNG를 쓰세요.

방법 1 — 온라인 변환(가장 빠르고 설치 불필요)

이미지 몇 장만 바꾸거나 아무 설정 없이 빠른 결과가 필요할 때는 온라인 변환기가 가장 빠릅니다. ImageTools의 이미지 변환 도구는 JPG, PNG를 비롯한 여러 형식을 브라우저 안에서 바로 WebP로 바꿔 주며, 파일을 외부 서버로 보내지 않습니다.

  1. 이미지 변환 도구에 접속합니다.
  2. 업로드 영역에 이미지를 선택하거나 끌어다 놓습니다.
  3. 저장 형식으로 WebP를 고릅니다.
  4. 변환된 이미지를 한 장씩, 또는 여러 장이면 ZIP으로 내려받습니다.

지금 WebP로 변환하세요 — 온라인에서 무료로

JPG, PNG를 비롯한 여러 형식을 지원합니다. 가입도, 외부 서버 전송도, 용량 제한도 없습니다.

WebP로 변환하기

방법 2 — 워드프레스(사이트 전체 자동 적용)

워드프레스 사이트라면 WebP 변환과 제공을 자동으로 해 주는 플러그인을 쓰는 것이 가장 효율적입니다. 이미지를 하나씩 다시 처리할 필요가 없습니다.

워드프레스 6.1 이상(기본 변환 기능)

6.1 버전부터 워드프레스는 업로드할 때 이미지를 자동으로 WebP로 변환합니다. 서버에 libwebp 라이브러리가 있어야 하는데, PHP 8 이상을 쓰는 요즘 서버는 대부분 갖추고 있습니다. 따로 할 일은 없습니다. 워드프레스가 WebP 버전을 만들고 브라우저마다 알맞은 형식을 알아서 내보냅니다.

켜져 있는지 확인하려면 설정 → 미디어로 들어가 WebP 변환 항목을 찾아보세요. 보이지 않는다면 서버가 지원하지 않는 것이니 플러그인을 쓰는 편이 좋습니다.

플러그인 사용(이전 버전이거나 더 세밀한 제어가 필요할 때)

워드프레스에서 WebP 변환에 가장 많이 쓰이는 플러그인은 다음과 같습니다.

방법 3 — cwebp 명령줄(개발자용)

구글은 WebP 공식 인코더인 cwebp를 무료로 배포합니다. 터미널에서 변환할 때 쓰는 도구로, 서버나 빌드 파이프라인에서 많은 이미지를 한꺼번에 변환할 때 가장 빠릅니다.

설치

# Ubuntu / Debian
sudo apt-get install webp

# macOS (Homebrew)
brew install webp

# Windows — 실행 파일 내려받기: https://developers.google.com/speed/webp/download

기본 변환

# JPG 파일 하나를 품질 80으로 WebP 변환
cwebp -q 80 photo.jpg -o photo.webp

# PNG를 무손실 WebP로 변환
cwebp -lossless logo.png -o logo.webp

# 폴더 안의 모든 JPG 변환 (Bash)
for f in *.jpg; do cwebp -q 80 "$f" -o "${f%.jpg}.webp"; done

-q 옵션이 품질(0~100)을 조절합니다. 웹용이라면 75에서 85 사이가 화질과 용량의 균형이 가장 좋습니다. 로고나 글자가 있는 화면 캡처처럼 무손실 압축이 필요한 이미지에는 -lossless를 쓰세요.

방법 4 — sharp를 쓰는 Node.js(빌드 파이프라인용)

Next.js, Gatsby, Nuxt처럼 Node.js를 쓰는 프로젝트나 자동화된 빌드 환경이라면, 파이프라인에서 WebP로 변환할 때 sharp 라이브러리가 가장 효율적입니다.

// npm install sharp

const sharp = require('sharp');

// JPG를 품질 80으로 WebP 변환
sharp('photo.jpg')
  .webp({ quality: 80 })
  .toFile('photo.webp');

// PNG를 무손실 WebP로 변환
sharp('logo.png')
  .webp({ lossless: true })
  .toFile('logo.webp');

// 폴더 안의 모든 파일 변환
const fs = require('fs');
const path = require('path');

fs.readdirSync('./images')
  .filter(f => /\.(jpg|jpeg|png)$/i.test(f))
  .forEach(file => {
    const input = path.join('./images', file);
    const output = path.join('./images', file.replace(/\.[^.]+$/, '.webp'));
    sharp(input).webp({ quality: 80 }).toFile(output);
  });

sharp는 네이티브 라이브러리인 libvips를 사용해서 순수 자바스크립트 방식보다 훨씬 빠릅니다. 정적 사이트를 빌드하면서 WebP 버전을 만들어 내기에 알맞습니다.

구형 브라우저용 대체 이미지와 함께 WebP 적용하기

2026년 기준 WebP 호환성은 97%가 넘지만, 대체 이미지가 필요한 상황이 아직 남아 있습니다. IE11을 쓰는 사내 시스템, 아주 오래된 기기, 또는 그저 호환성을 최대로 보장하고 싶을 때가 그렇습니다.

정석은 HTML의 <picture> 태그입니다. 대체 이미지 소스를 우선순위대로 지정할 수 있습니다.

<!-- 브라우저가 WebP를 지원하면 WebP를, 아니면 JPG를 사용 -->
<picture>
  <source srcset="foto.webp" type="image/webp">
  <img src="foto.jpg" alt="사진 설명" width="800" height="600">
</picture>

<!-- 레티나 화면을 위한 여러 크기 제공 -->
<picture>
  <source
    srcset="foto-800.webp 800w, foto-1600.webp 1600w"
    type="image/webp">
  <source
    srcset="foto-800.jpg 800w, foto-1600.jpg 1600w"
    type="image/jpeg">
  <img src="foto-800.jpg" alt="사진 설명"
    width="800" height="600" loading="lazy">
</picture>

브라우저는 선언된 순서대로 소스를 확인합니다. WebP를 지원하면 type="image/webp"가 붙은 <source>를 쓰고, 지원하지 않으면 <img>의 JPG로 내려옵니다. 마지막의 <img> 태그는 반드시 있어야 합니다. alt과 크기, 기본 동작을 정의하는 것이 이 태그이기 때문입니다.

서버에서 WebP를 자동으로 내보내도록 설정하기(아파치)

<picture> 대신 서버에서 브라우저의 WebP 지원 여부를 감지해 알맞은 버전을 자동으로 내보내는 방법도 있습니다. 아파치라면 .htaccess에 다음을 추가하세요.

<IfModule mod_rewrite.c>
  RewriteEngine On

  # .webp 파일이 있고 브라우저가 받아들이면 그것을 제공
  RewriteCond %{HTTP_ACCEPT} image/webp
  RewriteCond %{REQUEST_FILENAME} \.(jpe?g|png)$
  RewriteCond %{REQUEST_FILENAME}\.webp -f
  RewriteRule ^ %{REQUEST_URI}.webp [T=image/webp,L]
</IfModule>

<IfModule mod_headers.c>
  Header append Vary Accept env=REDIRECT_accept
</IfModule>

AddType image/webp .webp

이렇게 설정해 두면 원본과 같은 폴더에 .webp 파일만 나란히 두면 됩니다. 아파치가 Accept 헤더로 브라우저의 WebP 지원 여부를 확인하고, HTML은 전혀 손대지 않은 채 알맞은 버전을 내보냅니다.

PageSpeed로 결과 확인하기

WebP를 적용한 뒤에는 사이트 주소로 Google PageSpeed Insights(pagespeed.web.dev)를 돌려 보세요. "차세대 형식을 사용해 이미지 제공" 항목이 사라지거나 눈에 띄게 줄어들어야 합니다. 개선 기회 항목에서는 아직 변환하지 않은 이미지마다 절약 가능한 용량을 확인할 수 있습니다.

다른 확인 방법도 있습니다. 크롬 개발자 도구(F12)를 열고 Network 탭에서 "Img"로 걸러 낸 뒤, 불러온 이미지의 "Type" 열을 보세요. webp라고 나오면 변환이 제대로 적용된 것입니다.

LCP에 미치는 영향: 코어 웹 바이탈 지표 중 하나인 LCP(최대 콘텐츠 렌더링 시간)는 페이지의 대표 이미지(배너, 상품 사진)에 좌우되는 경우가 많습니다. 이 이미지를 WebP로 바꾸면 내려받는 시간이 줄어들어 LCP와 구글 성능 점수에 곧바로 영향을 줍니다.

변환할 때 품질은 얼마로 할까?

WebP의 품질 값은 JPG와 같은 원리로 작동합니다. 값이 높을수록 디테일이 살아나지만 파일이 커집니다. 다만 같은 화질을 내는 데 WebP는 보통 JPG보다 10~15포인트 낮은 품질 값을 씁니다.

용도권장 WebP 품질대략 같은 JPG 품질
상품 사진(이커머스)80–8590–95
블로그·기사 이미지75–8085–90
사이트 배너와 대표 이미지80–8590–95
썸네일과 작은 이미지70–7580–85
로고와 그래픽(손실)9095+
로고와 그래픽(무손실)-losslessPNG

자주 묻는 질문

구글은 WebP 이미지를 이미지 검색에 색인하나요?
네. 구글봇은 WebP를 지원하며 이 형식의 이미지도 문제없이 색인합니다. 구글 이미지 검색에서도 JPG나 PNG와 다르지 않게 표시됩니다. WebP로 바꾼다고 이미지 SEO에 불리해질 일은 없습니다. 오히려 페이지 속도가 빨라져 순위에 간접적으로 도움이 됩니다.
WebP로 바꾼 뒤에도 JPG·PNG 원본을 보관해야 하나요?
네, 특히 두 가지 이유에서 그렇습니다. WebP를 지원하지 않는 환경(이메일, 인쇄, 오래된 플랫폼)에서 쓸 대체본이 필요하고, 나중에 편집할 때 쓸 최고 품질 원본도 있어야 하기 때문입니다. JPG·PNG 원본은 원본 폴더에, 변환한 WebP는 사이트용 폴더에 두는 방식을 권합니다. 화질이 가장 좋은 원본은 절대 버리지 마세요.
WebP가 AVIF보다 나은가요?
기술적으로는 AVIF가 WebP보다 효율적입니다. 같은 화질에서 파일이 더 작습니다. 다만 2026년 기준으로 AVIF의 호환성은 아직 WebP보다 낮고, 인코딩 속도가 눈에 띄게 느립니다. 서버에서 일괄 변환할 때는 이 점이 중요합니다. 현실적으로는 WebP가 웹에서 가장 균형 잡힌 선택입니다. 압축률이 훌륭하고 호환성이 넓으며 인코딩이 빠릅니다. AVIF는 1KB를 아끼는 것이 대역폭 비용에 크게 영향을 주는 대형 트래픽 사이트에서 검토할 만합니다.
제가 쓰는 CMS는 WebP로 자동 변환해 주나요?
CMS와 버전에 따라 다릅니다. 워드프레스는 서버에 libwebp가 있다면 6.1 버전부터 기본으로 WebP 변환을 합니다. 쇼피파이는 2021년부터 모든 테마에서 WebP를 자동으로 내보냅니다. 스퀘어스페이스와 윅스도 자동으로 적용합니다. 직접 만든 CMS나 오래된 버전이라면 플러그인을 쓰거나 서버를 직접 설정해야 합니다.
이미지 수백 장을 한꺼번에 WebP로 바꾸려면?
양이 많다면 cwebp 명령줄이나 sharp를 쓰는 Node.js 스크립트가 가장 효율적입니다. 명령 한 줄로 수백 장을 몇 초 만에 처리할 수 있습니다. 워드프레스라면 ShortPixel이나 Imagify 같은 플러그인에 미디어 라이브러리 전체를 다시 처리하는 기능이 있습니다. 그때그때 직접 하는 정도라면 ImageTools의 이미지 변환 도구가 한 번에 여러 파일을 받아 줍니다.
WebP로 바꿨더니 원본 JPG보다 커진 이유는?
두 가지 경우에 그럴 수 있습니다. 원본 JPG가 이미 아주 강하게 압축돼 있었다면(품질 70% 미만) WebP가 더 줄일 여지가 별로 없습니다. 아니면 높은 품질(90 이상)의 WebP를 낮은 품질의 JPG와 비교하고 있는 경우입니다. 공정하게 비교하려면 두 형식에 같은 수준의 품질을 적용해야 합니다. 앞의 표에서 설명했듯 같은 화질을 내는 데 WebP는 보통 JPG보다 10~15포인트 낮은 값을 쓴다는 점도 기억하세요.