블로그로 돌아가기

크롬 확장 프로그램 Chrome Web Store에 배포하는 방법

(수정됨: 2026년 3월 10일)

크롬 확장 프로그램을 만들었는데, 이제 어떻게 배포하지? 처음 해보면 의외로 헷갈리는 부분이 많습니다. 개발자 등록부터 심사 통과까지, 실제 배포 과정을 정리했습니다.

1. 개발자 계정 등록

Chrome Web Store Developer Dashboard에 접속해서 개발자 등록을 합니다.

  • Google 계정으로 로그인
  • 등록비 $5 결제 (최초 1회, 환불 불가)
  • 개발자 이름, 이메일, 웹사이트 등 프로필 작성

개인 계정과 그룹(조직) 계정 중 선택할 수 있습니다. 개인 프로젝트라면 개인 계정으로 충분합니다.

한국에서 등록할 때: 국가/지역 선택에서 한국이 없거나 결제가 진행되지 않는 경우가 있습니다. 이때는 국가를 미국(United States)으로 선택하고 ZIP 코드에 10001 (뉴욕)을 입력하면 등록이 가능합니다.

2. 빌드 및 ZIP 파일 준비

배포할 확장 프로그램을 ZIP 파일로 패키징합니다. 빌드 도구에 따라 다르지만, 대부분 빌드 후 output 폴더를 압축하면 됩니다.

Bash
# WXT 사용 시
npm run zip

# 직접 압축 시
cd dist && zip -r ../extension.zip .

ZIP에 포함되어야 하는 필수 파일:

  • manifest.json
  • 아이콘 파일들
  • HTML, JS, CSS 등 빌드 결과물

주의: node_modules, 소스 맵, .git 등 불필요한 파일은 제외해야 합니다.

3. 스토어 등록 정보 준비

업로드 전에 미리 준비해두면 빠릅니다.

필수 항목

항목규격
확장 프로그램 아이콘128x128 PNG
스크린샷최소 1장, 1280x800 또는 640x400 PNG/JPG
설명최대 132자 (요약), 상세 설명 별도
카테고리Developer Tools, Productivity 등 선택
언어기본 언어 선택

선택 항목

  • 프로모션 타일 이미지 (440x280) - 스토어 피처링에 사용
  • 홈페이지 URL
  • 지원 URL
  • 개인정보처리방침 URL (권한에 따라 필수가 될 수 있음)

4. Dashboard에서 업로드

  1. Developer Dashboard에서 "새 항목" 클릭
  2. ZIP 파일 업로드
  3. 업로드 완료 후 탭별로 정보 입력:
    • 스토어 등록정보: 설명, 스크린샷, 카테고리
    • 개인정보 보호 관행: 권한 사용 목적 설명
    • 배포: 공개 범위, 지역 설정

공개 범위 설정

  • 공개: 누구나 검색하고 설치 가능
  • 일부 공개: 링크가 있는 사람만 설치 가능 (검색에 노출되지 않음)
  • 비공개: 지정한 사용자만 설치 가능 (테스트 용도)

처음이라면 일부 공개로 먼저 올려서 확인한 뒤, 공개로 전환하는 것도 방법입니다.

5. 권한 정당화

manifest.json에 선언한 권한(permissions)에 대해 왜 필요한지 설명해야 합니다. 이 부분을 대충 쓰면 심사에서 거절당할 수 있습니다.

예시:

권한정당화
storage사용자 설정(API 키, 테마)을 로컬에 저장하기 위해 필요
activeTab현재 탭의 URL에서 정보를 추출하기 위해 필요
host_permissions외부 API 호출을 위해 필요

핵심 원칙: 실제로 사용하는 권한만 선언하세요. 불필요한 권한이 있으면 심사가 거절됩니다.

6. 심사 제출

모든 정보를 입력했으면 "심사를 위해 제출" 버튼을 클릭합니다.

심사 기간

  • 일반적으로 1~3 영업일
  • 처음 제출하는 경우 더 오래 걸릴 수 있음
  • 민감한 권한(예: tabs, webRequest)을 사용하면 추가 심사 필요

거절 사유 예시

심사에서 자주 거절되는 이유들:

  • 불필요한 권한 요청 - 사용하지 않는 권한이 manifest에 있는 경우
  • 설명 부족 - 확장 프로그램이 뭘 하는지 명확하지 않은 경우
  • 개인정보처리방침 누락 - 사용자 데이터를 다루는데 방침이 없는 경우
  • 단일 목적 위반 - 하나의 확장이 관련 없는 여러 기능을 포함하는 경우

거절되면 사유와 함께 안내가 오고, 수정 후 재제출하면 됩니다.

7. 업데이트 배포

이미 등록된 확장 프로그램을 업데이트하는 과정은 간단합니다.

  1. manifest.jsonversion을 올림
  2. 새 ZIP 파일 빌드
  3. Dashboard에서 "패키지" 탭 → "새 패키지 업로드"
  4. 다시 심사 제출

업데이트도 심사를 거치지만, 보통 신규 등록보다 빠릅니다. 기존 사용자에게는 심사 통과 후 자동으로 업데이트됩니다.

  • manifest.json의 version은 반드시 올려야 합니다. 같은 버전으로는 업로드 불가능합니다.
  • 스크린샷은 실제 동작 화면을 캡처하세요. 목업이나 텍스트만 있는 이미지는 거절될 수 있습니다.
  • 개인정보 관련 권한을 쓴다면 개인정보처리방침 페이지를 미리 만들어두세요. GitHub Pages나 Notion 페이지로도 충분합니다.
  • Chrome Web Store API를 사용하면 CI/CD에서 자동 배포도 가능합니다. chrome-webstore-upload 같은 npm 패키지를 활용하면 됩니다.

마무리

처음엔 복잡해 보이지만, 한 번 해보면 그 다음부터는 ZIP 업로드 → 심사 제출이 전부입니다. 가장 중요한 건 최소한의 권한만 요청하고, 각 권한을 왜 쓰는지 명확하게 설명하는 것입니다. 이것만 잘하면 심사는 대부분 무난하게 통과합니다.

댓글