이미지 최적화는 파일 크기를 줄이면서 시각적 품질을 유지하는 것입니다. 핵심 워크플로우: 디스플레이 크기로 리사이즈, 75-85% 품질로 압축, WebP 또는 AVIF로 변환, 지연 로딩 추가, 명시적 width/height 속성 설정. DebugBear 사례 연구에서는 이 과정을 통해 97.5% 감소(4.3 MB → 109 KB)를 달성했습니다.

이미지 최적화가 중요한 이유
이미지는 전체 페이지 무게의 약 64%를 차지합니다(Sanity). 최적화되지 않은 이미지는 다음에 직접적인 악영향을 미칩니다:
| 지표 | 영향 | 원인 |
|---|---|---|
| LCP(Largest Contentful Paint) | 2.5초 임계값 초과 | 과도한 히어로 이미지 크기 |
| CLS(Cumulative Layout Shift) | 로딩 시 콘텐츠 이동 | width/height 속성 누락 |
| 이탈률 | 콘텐츠 로딩 전 방문자 이탈 | 느린 초기 페인트 |
| 모바일 순위 | 검색 순위 하락 | 가변 네트워크 환경에서의 과도한 대역폭 사용 |

3대 핵심: 리사이즈, 압축, 포맷 선택

핵심 1: 리사이즈 — 가장 큰 효과의 단일 최적화
실제 디스플레이 크기로 이미지를 제공하는 것이 가장 큰 최적화입니다. DebugBear 사례에서 7108×4744 사진이 1266×845로 표시되었고, 리사이즈만으로 파일이 4.3 MB에서 495 KB로 감소했습니다(89% 감소).
단계:
- 디스플레이 크기 확인 — WordPress.com은 콘텐츠 영역 너비의 1.5~2배로 업로드할 것을 권장합니다.
- 업로드 전 리사이즈 — 미리보기(Mac), 그림판(Windows) 또는 GIMP 사용.
srcset및sizes속성으로 반응형 이미지를 추가하여 뷰포트 크기에 따라 다른 너비(400w, 800w, 1600w)를 제공.
이를 통해 브라우저가 각 뷰포트에 맞는 파일을 선택할 수 있습니다. 모바일 사용자는 더 작은 파일을, 데스크톱 사용자는 선명한 버전을 받습니다.
핵심 2: 압축 — 손실 vs 무손실
| 모드 | 작동 방식 | 파일 크기 | 적합한 용도 |
|---|---|---|---|
| 손실 | 일부 데이터를 영구적으로 제거 | 더 작음(40-60% 감소) | 사진, 복잡한 이미지 |
| 무손실 | 모든 데이터를 정확히 보존 | 더 큼 | 로고, 텍스트, 스크린샷, 투명 이미지 |
대부분의 웹 이미지에서 75-85% 품질의 손실 압축이 최적의 균형점입니다. WebP와 AVIF 모두 두 모드를 지원합니다.
핵심 3: 포맷 선택 — WebP vs AVIF vs JPEG
| 포맷 | JPEG 대비 압축률 | 인코딩 속도 | 브라우저 지원률(2026) | 적합한 용도 |
|---|---|---|---|---|
| WebP | 25-35% 더 작음 | 빠름 | 97%+ | LCP 이미지, 일반 용도 |
| AVIF | 약 50% 더 작음 | WebP보다 50% 느림 | 92%+ | 최대 압축 |
| JPEG | 기준 | 가장 빠름 | 100% | 범용 폴백 |
의사결정 프레임워크:
| 시나리오 | 권장 포맷 |
|---|---|
| LCP/폴드 위 히어로 이미지 | WebP(빠른 인코딩, 넓은 지원) |
| 전체 페이지 무게 감소 | AVIF(더 높은 압축률) |
| 제품 사진(HDR) | AVIF(넓은 색영역) |
| 사용자 생성 콘텐츠 | WebP(빠른 처리) |
| 애니메이션 그래픽 | WebP(애니메이션 지원) |
| 텍스트/선명한 선이 포함된 그래픽 | WebP 무손실 |
하이브리드 접근법(권장): Framer의 방식에 따라 첫 요청 시 WebP를 제공하고, 백그라운드에서 AVIF로 변환한 후 이후 방문 시 AVIF를 제공합니다. 빠른 초기 전달과 더 작은 캐시 파일을 동시에 확보할 수 있습니다.
지연 로딩과 반응형 이미지
지연 로딩은 화면 밖의 이미지 로딩을 필요할 때까지 연기하여 대역폭을 절약하고 초기 로딩을 개선합니다. 폴드 아래의 모든 이미지 태그에 loading="lazy"를 추가하세요.
규칙:
- 폴드 위 이미지는 절대 지연 로딩하지 마세요—LCP가 지연됩니다.
fetchpriority="high"로 LCP 이미지를 우선 처리.-
<head>내에서rel="preload" as="image" fetchpriority="high"를 사용하여 중요 CSS 배경 이미지를 사전 로드. -
이미지 요소에 항상 명시적인 width와 height 속성을 설정하여 CLS를 방지.
도구 비교
| 도구 | 적합한 용도 | 포맷 | 일괄 처리 | 비용 |
|---|---|---|---|---|
| Squoosh | 개발자 포맷 비교 | WebP, AVIF, JPEG, PNG | 지원 | 무료 |
| TinyPNG | 디자이너 단일 이미지 최적화 | WebP, JPEG, PNG | 20개 파일 | 무료 |
| ImageLean | 개인정보 보호 중심 브라우저 압축 | WebP, AVIF, JPEG, PNG | 지원 | 무료 |
| Smush | WordPress 사이트 소유자 | WebP, AVIF, JPEG, PNG | 일괄 | 무료/Pro |
| Cloudflare Images | CDN 기반 글로벌 스케일링 | 자동 변환 | 온더플라이 | 사용량 기반 과금 |
| Next.js Image | React/Next.js 프로젝트 | 자동 WebP/AVIF | 자동 | 무료 |
CDN과 플러그인 최적화 비교
| 방식 | 작동 원리 | 장점 | 단점 |
|---|---|---|---|
| CDN 기반(Cloudflare, Fastly) | 네트워크 엣지에서 최적화 후 캐시 | 수동 작업 불필요, 기기 적응형 | CDN 구독 필요 |
| 플러그인 기반(Smush, TinyPNG) | 업로드 시 또는 API를 통해 처리 | 출력에 대한 세밀한 제어 | 기존 이미지는 일괄 처리 필요 |
모범 사례: 하이브리드 방식 — CDN은 온더플라이 전달, 플러그인은 업로드 시 압축. CDN은 해외 방문자의 이미지 로딩 시간을 50% 이상 단축합니다(DebugBear).
자동화 워크플로우
CI/CD 파이프라인
GitHub Actions에서 Squoosh CLI 또는 sharp를 사용하여 푸시 시마다 자동 압축 및 포맷 변환을 실행할 수 있습니다. 코드베이스의 모든 이미지가 배포 전에 최적화됩니다.
헤드리스 CMS
Sanity 같은 플랫폼은 온더플라이 변환으로 최적화된 이미지를 제공합니다. 고품질 소스 이미지 하나를 저장하면 썸네일, 반응형 크기, 최신 포맷이 자동으로 생성됩니다.
이커머스
- WooCommerce: Smush가 직접 통합 — 업로드 시 자동 압축, 갤러리 일괄 최적화, CDN 글로벌 전달.
- Shopify: 내장 파이프라인이 최적화를 처리. 업로드 전 소스 이미지를 올바른 크기로 조정하고 테마가 적절한
srcset속성을 생성하는지 확인.
PageSpeed Insights 경고 수정
| 경고 | 원인 | 수정 방법 |
|---|---|---|
| “이미지 크기 적절히 조정” | 이미지가 디스플레이 크기보다 큼 | 컨테이너에 맞게 리사이즈 + srcset 사용 |
| “차세대 포맷으로 이미지 제공” | WebP/AVIF 대신 JPEG/PNG 사용 중 | Squoosh 또는 Smush 자동 변환으로 해결 |
| “화면 밖 이미지 지연 로딩” | 모든 이미지가 즉시 로딩됨 | 폴드 아래 이미지에만 loading="lazy" 추가 |
| “렌더링 차단 리소스 제거” | CSS/HTML에 큰 Base64 인코딩 이미지 포함 | 별도 파일로 제공. 수백 바이트 이상에는 Base64 사용 금지 |
결론
이미지를 순서대로 최적화하세요: 리사이즈 → 압축 → 최신 포맷으로 변환 → 지연 로딩 추가 → 명시적 크기 설정. CDN/플러그인 하이브리드로 자동화합니다. DebugBear로 사이트 감사부터 시작하세요. 사례 연구의 97.5% 감소는 대부분의 사이트에서 이 기법들로 달성 가능합니다.
FAQ
손실 압축과 무손실 압축의 차이는 무엇인가요?
손실 압축은 더 작은 파일을 위해 데이터를 영구적으로 제거합니다. 사진에 적합합니다. 무손실 압축은 모든 데이터를 정확히 보존합니다. 로고, 텍스트, 스크린샷에 적합합니다. WebP와 AVIF 모두 두 모드를 지원합니다. 웹 이미지에서는 75-85% 품질의 손실 압축이 표준입니다.
2026년에 WebP와 AVIF 중 어느 것을 사용해야 하나요?
LCP/폴드 위 이미지에는 WebP(빠른 인코딩, 넓은 지원). 최대 압축에는 AVIF(더 작은 파일, 느린 인코딩). 하이브리드 접근법 권장: 첫 로딩은 WebP, 캐시된 이후 방문은 AVIF.
PageSpeed의 ‘이미지 크기 적절히 조정’과 ‘차세대 포맷’ 경고를 수정하려면?
이미지를 디스플레이 크기에 맞게 리사이즈합니다. JPEG/PNG를 WebP 또는 AVIF로 변환합니다. srcset과 <picture> 요소를 함께 사용하여 화면 크기와 포맷 지원에 따라 적절한 버전을 제공합니다. WordPress 사용자는 Smush 플러그인으로 자동화할 수 있습니다.
답글 남기기