크롬 개발자 도구 Coverage: 사용하지 않는 코드(CSS, JS) 찾기

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

웹사이트의 속도는 단순히 서버 응답이나 캐시 설정뿐 아니라, “얼마나 많은 코드가 실제로 사용되는가”에 따라 크게 달라집니다. 크롬 개발자 도구 Coverage 탭은 페이지에서 로드된 CSS·JavaScript 파일의 실제 사용 비율
바이트 단위로 분석하여, 코드 낭비를 한눈에 시각화 해주는 도구입니다.

특히 워드프레스와 같은 CMS 환경에서는 테마·플러그인별로 불필요하게 로드되는 리소스가 많기 때문에,
Coverage 탭은 사용하지 않는 자바스크립트 및 css 코드를 파악하고 페이지별 최적화(자산 비활성화, 불필요한 로드 차단 등)를 검증하는 데 매우 유용합니다.

이 글에서는 Coverage 탭의 측정 원리와 데이터 해석 방법, 그리고 실무에서 이를 활용해 사용되지 않는 자바스크립트 및 css를 줄이는 구체적인 방법을 소개합니다.

Ⅰ. Coverage 개요 및 측정 준비

  • Coverage 탭은 단순히 “속도 점수”를 보여주는 도구가 아니라, 실제 코드 단위에서 낭비를 시각적으로 보여주는 개인적으로 알고 있는 유일한 브라우저 내장 툴입니다.

Coverage 탭은 Network·Performance·Lighthouse와 함께 브라우저 수준에서 코드를 직접 분석할 수 있는 고급 도구입니다. Coverage를 실행하기 전에 다음 사항을 확인하면 보다 정확한 데이터를 얻을 수 있습니다.

항목

설명

테스트 전 페이지 새로고침

DevTools를 열고 Ctrl + Shift + P → “Coverage: Start instrumenting coverage” 실행

Disable Cache 활성화

Network 탭에서 “Disable cache” 체크 후 테스트

분석 범위 선택

CSS / JavaScript만 측정 대상 (HTML은 포함되지 않음)

코드 압축 여부 확인

.min.js, .min.css 파일은 축약되어 Unused 계산이 일부 다를 수 있음

Ⅱ. 크롬 개발자 도구 Coverage 활용

크롬 개발자 도구 Coverage 탭은 페이지에서 로드 된 CSS와 JavaScript 파일 중, 실제로 사용된 코드(Used Bytes)와 사용되지 않은 코드(Unused Bytes)를 비교해 효율성을 분석하는 도구입니다. 즉, 페이지가 불필요하게 많은 리소스를 불러오고 있는지, 코드 단위에서 낭비가 발생하고 있는지를 시각적으로 확인할 수 있습니다.

특히 워드프레스와 같은 CMS 환경에서는 테마나 플러그인 별로 어떤 CSS·JS 파일이 실제로 사용되지 않는지를 쉽게 확인할 수 있어, 불필요한 리소스를 정리하거나, 성능 최적화 플러그인의 효과를 검증할 때 유용합니다.

영어한국어
웹사이트 성능 테스트 - 크롬 개발자 도구_Coverage 탭 - 사용되지 않은 바이트[영어]
웹사이트 성능 테스트 - 크롬 개발자 도구_Coverage 탭 - 사용되지 않은 바이트

Coverage 탭에서 사용하지 않는 바이트는 페이지 로드 시 함께 불러왔지만 실제 렌더링에는 사용되지 않은 코드 영역을 의미합니다.

영어한국어
웹사이트 성능 테스트 - 크롬 개발자 도구_Coverage 탭 - 사용되지 않은 바이트[영어]
웹사이트 성능 테스트 - 크롬 개발자 도구_Coverage 탭 - 사용되지 않은 바이트

예를 들어, 특정 플러그인이나 테마에서 공통으로 로드되는 CSS·JS 파일이 있지만, 현재 페이지에서는 그 중 일부만 실제로 적용되는 경우 나머지 코드는 ‘사용하지 않은 바이트’로 표시됩니다.

총 338KB 중 40.4KB(12%)가 사용되고 나머지 297KB(88%)가 사용되지 않았다는 기본 설명을 좌측 하단에서 확인할 수 있습니다.

[ 전체 코드: 338 KB ]
|■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■|  297KB(88%): 사용하지 않은 바이트
|□□□□□□□□□□□□□□□| 40.4KB (12%) 사용된 바이트

[사용하지 않은 바이트]는 렌더링 중에 실제로 쓰이지 않은 코드 양입니다. style.min.css 파일의 경우 97.3%가 사용되지 않았으며, 사용되지 않은 양만큼 빨간 막대로 시각화 되어 있습니다.

반대로, “Unused Bytes = 0%” 로 표시된다면 해당 파일의 모든 코드가 실제로 사용되어 낭비가 전혀 없다는 뜻입니다.

예를 들어

파일명

Used %

Unused %

의미

bundle.js

100%

0%

모든 코드 사용됨 ✅

gtag.js

40%

60%

40%만 렌더링에 기여 ⚠️

test.js

0%

100%

완전히 로드만 됨 ❌

Unused %가 높다”낭비가 많다는 뜻입니다. Coverage 데이터 상 실제로는 더 안 쓴 것처럼 보일 수 있으며, 완벽하게 정확하지 않은 점을 참고해야 합니다.

🔢 워드프레스 CMS를 사용할 경우

워드프레스는 테마와 플러그인이 공통으로 CSS·JS 파일을 로드하기 때문에, Coverage 탭에서 사용하지 않은 바이트가 높게 나타나는 경우가 많습니다. 또한 Coverage에서 Unused로 보이더라도, 실제로는 나중에 다른 페이지나 기능에서 사용될 코드일 수도 있습니다.

특히 워드프레스의 경우, 워드프레스의 JS/CSS 구조는 전역 로드 방식으로 테마나 플러그인이 공통 리소스를 함께 불러오는 구조이기 때문입니다. Coverage에서는 낭비로 인식하지만 워드프레스 입장에서는 낭비가 아닌 공통 기능을 미리 로드하는 구조적 특성으로 볼 수 있습니다. 이는 불필요하지만 피할 수 없는 낭비라 할 수 있습니다.

구분

확인 방법

설명

테마 CSS

/wp-content/themes/ 경로

모든 페이지에 공통 적용. 일부는 사용되지 않아도 정상.

플러그인 JS/CSS

/wp-content/plugins/ 경로

특정 기능용 파일일 가능성이 높음. 해당 기능이 없는 페이지라면 낭비.

외부 스크립트

https://www.googletagmanager.com/, fonts.googleapis.com

광고, 통계, 폰트 등의 리소스. 미사용 코드가 많을 수 있음.

사용자 정의 코드

/wp-content/uploads/ 또는 /assets/

커스텀 스크립트일 경우, 불필요한 부분이 없는지 직접 확인 필요.

🔧 개선 방향

  • ↳ WP Rocket, WP Fastest Cache와 같은 캐시 플러그인으로 Remove CSS 등의 기능을 활성화 합니다.
  • ↳ Perfmatters, Asset CleanUp과 같은 워드프레스 최적화 플러그인을 이용해 “자산 비활성화 기능”을 사용하여 페이지 별로 불필요한 CSS·JS를 차단합니다. 예를 들어,
  • Contact Form 7 : 문의 페이지 외 모든 페이지에서 비활성화
  • WooCommerce : 상품·장바구니 페이지 외 로드 금지

워드프레스의 경우 웹사이트 속도를 결정하는 요인 중 가장 큰 요소는 서버와 테마, 플러그인입니다. 플러그인이 웹사이트를 느리게 만들지만 역설적으로 해결 역설적으로 해결 역시 최적화를 진행할 수 있는 플러그인으로 사용해야 웹사이트가 사용자에게 더 빨리 로드됩니다.

ℹ️ 제휴 안내
본 사이트의 콘텐츠에는 제휴 링크가 포함되어 있습니다. 방문자가 이 링크를 통해 상품 또는 서비스를 구매하면 본 사이트는 판매처로부터 수수료를 지급받습니다. 이 과정에서 구매자가 지불하는 금액(이벤트 할인 시 금액이 내려갑니다↓)은 오르지 않습니다. 게시된 가격·할인·재고 정보는 작성 시점 기준이며 실제와 다를 수 있으므로, 구매 전 판매처에서 최종 확인하시기 바랍니다. 상품 선정과 평가는 자체 기준에 따라 작성되며, 수수료 지급 여부가 소개 순서나 평가 내용에 영향을 주지 않습니다.

Similar Posts

  • [SEO] Internal PageRank

    내부 페이지랭크(Internal PageRank)란 무엇인가? 내부 링크에 링크 점수를 어떤 방법으로 배분해 줘야 할까? 계산 방법은? 링크 방식은 앵커 텍스트를 사용할지..? 등을 고민할 수 있습니다. 1. PageRank에 대해 구글 이전의 검색 엔진은 정교하지 않았습니다. 검색 엔진에서 얻는 콘텐츠의 품질은 사람들이 원하는 품질의 사이트만 첫 페이지에 랭크되지 않았습니다. Larry Page와 Sergey Brin은 페이지랭크 알고리즘을 만들고…

  • 네이티브 광고(Native advertising)란 무엇인가?

    네이티브 광고(Native advertising, Native AD)는 해당 웹사이트에 맞춰 고유한 방식으로 기획 및 제작된 광고를 말 합니다. 기존의 광고는 이용자의 관심을 끌기 어려운 점이 있습니다. ✅ 네이티브 광고의 정의 및 특징 배너 광고 또는 디스플레이 광고와 달리 Native AD는 실제로 광고처럼 보이지 않으며, 이로 인해 사용자와 페이지의 상호 작용을 방해하지 않습니다. 경우에 따라 웹사이트…

  • 카카오톡 다크모드 설정 방법 2가지(모바일&PC)

    웹 검색이나 앱(App) 사용을 할 때 눈의 피로감을 덜 하기 위해 다크모드 설정 후 사용을 많이 합니다. 다크 모드의 장점은 어두운 화면일 수록 방출되는 빛의 양이 줄어들어 눈의 피로감 역시 줄어듭니다. 다크모드는 전력 소비도 줄일 수 있어 휴대폰 사용 시 방전되는 기간을 늘릴 수 있습니다. 카카오톡 다크모드 설정 방법 모바일과 PC에 대해 하나…

  • [WP] 워드프레스 블록에디터 개요 및 구텐베르크

    워드프레스를 시작하게 되면 워드프레스 블록에디터인 구텐베르크(Gutenberg) 편집기란 단어를 접하게 됩니다. 예전 워드프레스 편집기는 클래식 편집기를 사용했지만 보다 직관적인 웹 구축 경험을 위해 Gutenberg 편집기로 대체되었습니다. 워드프레스 블록에디터: 구텐베르크란? Gutenberg란 Wordpress 플랫폼의 블록 기반 편집기입니다. 워드프레스 5.0으로 업데이트 되면서 구텐베르크라는 에디터가 기본 편집기로 변경되고 기존 클래식 편집기를 그대로 사용하는 유저가 적응하지 못하고 클래식 편집기를…

  • [SEO] robots.txt 정의 | 구글 or 네이버에서 유효성 검사하기

    Robots.txt란 웹 마스터가 웹 로봇(보통 검색 엔진 로봇)에게 웹 사이트 페이지의 크롤링 방법을 지시하기 위한 텍스트 파일입니다. robots.txt 웹 사이트의 루트 파일에 위치하고 있어야 합니다. 이 파일은 로봇이 웹을 탐색하고 콘텐츠에 접근하며 해당 콘텐츠를 사용자에게 제공하는 방법을 제어하는 웹 표준인 로봇 배제 프로토콜(REP:robots exclusion protocol)의 일부입니다. 로봇 배제 프로토콜(REP)에 의해 모든 봇이 지침을…

  • 구글 애널리틱스 애드센스 연결 방법

    애드센스를 사용하다 보면 어느 페이지에서 수익이 나는지 궁금할 때가 있습니다. 애널리틱스 자체적으로는 확인이 어렵기 때문에 구글 애널리틱스에서 볼 수 있게 끔 구글 애널리틱스 애드센스 연결 설정에 대해 알아 보겠습니다. 당연한 이야기이지만 애드센스와 애널리틱스 양쪽에 가입이 되어 있어야 연동이 가능합니다. 1. 구글 애널리틱스 애드센스 연결 구글 애널리틱스 페이지에서 좌측 하단 톱니바퀴 모양의 관리 탭을…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 8   +   1   =