광고도, 내 취향대로.
유튜브에서 보기 싫은 광고를 직접 골라 차단하는 Chrome 확장 프로그램입니다. 광고 재생 중에는 선택한 광고의 빠른 종료를 시도하고, 홈 피드에서는 선택한 스폰서 광고 카드를 숨깁니다.
광고 품질이나 제작 국가를 자동으로 판단하지 않습니다. 사용자가 **‘이 광고를 차단하시겠습니까?’ → ‘예’**를 눌러 선택한 광고를 대상으로 동작합니다.
현재 버전: 1.2.0 · Chrome Manifest V3 · 별도 빌드 없이 설치 가능
모의 DOM을 사용한 자동 테스트를 통과한 상태입니다. 실제 유튜브 광고 환경에서의 동작은 아직 검증하지 않았으며, 광고 식별과 즉시 건너뛰기를 보장하지 않습니다.
| 기능 | 동작 |
|---|---|
| 재생 중 광고 선택 차단 | 광고가 재생될 때 영상 제목 아래에 광고 차단 버튼 표시 |
| 스폰서 광고 카드 선택 차단 | 지원되는 피드 광고 카드 아래에 이 광고 차단 버튼 표시 |
| 확인 후 적용 | 예를 누르면 적용, 아니요 또는 Esc를 누르면 취소 |
| 선택한 광고 기억 | 식별 가능한 광고를 저장하고 같은 광고가 다시 나타나면 처리 |
| 광고 빠른 종료 시도 | 건너뛰기 버튼 클릭, 광고 끝으로 이동, 최대 16배속 재생 시도 |
| 화면·소리 가리기 | 선택한 재생 광고의 영상 요소를 가리고 음소거 |
| 차단 목록 관리 | 팝업에서 개별 광고 차단 해제 및 기능 켜기·끄기 |
| 로컬 저장 | 외부 서버 없이 현재 브라우저에 목록 저장 |
- 이 GitHub 저장소에서 Code → Download ZIP을 선택합니다.
- 다운로드한 ZIP 파일의 압축을 풉니다.
- Chrome 주소창에
chrome://extensions를 입력합니다. - 오른쪽 위의 개발자 모드를 켭니다.
- 압축해제된 확장 프로그램을 로드합니다를 클릭합니다.
- 압축을 푼 폴더 중
manifest.json이 들어 있는 폴더를 선택합니다. - 이미 열려 있는 유튜브 탭을 새로고침합니다.
일반 사용자는 Node.js나 개발 도구를 설치할 필요가 없습니다. Chrome의 확장 프로그램 메뉴에서 골라막기를 고정하면 차단 목록을 열기 편합니다.
- 새 버전의 파일을 받아 기존 확장 프로그램 폴더에 반영합니다.
chrome://extensions에서 골라막기의 새로고침 버튼을 누릅니다.- 유튜브 탭도 새로고침합니다.
- 광고가 재생되면 영상 제목 바로 아래의 광고 차단 버튼을 누릅니다.
- 확인창에서 선택한 광고 정보를 확인합니다.
- 예를 누르면 광고를 저장하고 현재 광고의 빠른 종료를 시도합니다.
- 이후 같은 광고로 식별되면 자동으로 처리합니다.
버튼은 광고 재생 중에 표시됩니다. 전체 화면에서는 제목 아래 버튼에 접근할 수 없으므로 일반 보기로 돌아와 선택해 주세요. 이미 저장한 광고의 자동 처리는 전체 화면에서도 동작하도록 구현되어 있습니다.
- 숨기고 싶은 스폰서 광고 카드 아래의 이 광고 차단 버튼을 누릅니다.
- 확인창에서 예를 누릅니다.
- 선택한 카드를 숨기고, 같은 광고 카드가 다시 나타나면 자동으로 숨깁니다.
예를 들어 특정 게임 광고 카드를 선택하면 해당 카드의 식별 정보를 저장합니다. 같은 광고주의 다른 광고나 일반 ���천 영상을 함께 숨기도록 설정하지 않습니다.
- Chrome 도구 모음에서 골라막기 아이콘을 누르면 차단 목록이 열립니다.
- 목록의 해제 버튼을 누르면 해당 광고의 차단을 취소합니다.
- 카드 광고는 목록에 **[광고 카드]**로 표시됩니다.
- 선택 광고 차단 사용을 끄면 자동 처리를 중단하고, 현재 숨긴 광고 카드도 다시 표시합니다.
재생 광고와 피드 광고 카드는 별도 목록 항목으로 관리됩니다. 카드에서 차단했다고 재생 광고까지 자동으로 등록되지는 않습니다.
유튜브의 광고 전용 화면 요소에��� 다음 정보를 확인합니다.
| 대상 | 식별 정보 |
|---|---|
| 재생 광고 | 광고 영상 링크의 ID 또는 광고 제목 + 도착 URL 경로 |
| 광고 카드 | 영상 링크·썸네일의 영상 ID 또는 제목 + 광고주 표시 + 썸네일 경로 |
식별 정보를 얻지 못하면 확인창에 안내하고 이번에 표시된 광고만 처리합니다. 이 경우 영구 차단 목록에는 저장되지 않습니다.
표시 정보가 같은 변형 광고는 같은 광고로 취급할 수 있습니다. 반대로 영상 ID나 이미지가 바뀌어 재등록된 광고는 다시 선택해야 할 수 있습니다. 광고주 전체를 차단하거나 광고 내용을 AI로 분류하는 기능은 없습니다.
저장한 재생 광고는 0.5초 간격으로 확인하고, 인식되면 종료를 시도합니다. 재생 중인 광고를 감지하는 방식이므로 처음 일부가 보일 수 있습니다. 백그라운드 탭에서는 감지가 더 늦어질 수 있습니다.
선택한 광고는 건너뛰기 버튼이 없어도 영상 요소를 가리고 음소거하며, 광고 끝으로 이동하고 최대 16배속 재생을 시도합니다. 해당 속도를 브라우저가 거부하면 8·4·2배속 순서로 시도합니다.
유튜브가 탐색이나 배속 변경을 막으면 대기 시간이 남을 수 있습니다. 화면과 소리를 가리는 것과 본영상으로 즉시 전환되는 것은 다릅니다. 광고 제목이나 링크처럼 영상과 분리된 유튜브 UI는 남을 수 있습니다.
광고 종료·미디어 교체·다른 광고 감지·기능 끄기·차단 해제 시 변경한 재생 설정을 복원합니다. 유튜브의 상태 갱신 시점에 따라 전환 감지에 지연이 생길 수 있습니다.
- 데스크톱 Chrome의
https://www.youtube.com/*에서 실행됩니다. - 일반 영상 플레이어와 지원되는 스폰서 광고 카드가 대상입니다.
- Shorts 전용 플레이어, TV 화면, 외부 사이트의 임베드 플레이어, 영상에 합쳐진 광고는 지원하지 않습니다.
- 유튜브가 화면 구조를 변경하거나 광고 정보를 노출하지 않으면 버튼 표시와 차단이 제한될 수 있습니다.
- Google 계정의 광고 설정이나 유튜브 서버의 광고 배정을 변경하지 않습니다.
확장 프로그램은 storage 권한을 사용합니다. 콘텐츠 스크립트 실행 범위는 https://www.youtube.com/*로 제한됩니다.
로컬 저장 항목은 기능 활성화 여부, 차단한 광고의 식별 키, 표시 이름, 등록 시각입니다. 식별 키에는 광고 영상 ID, 제목, 광고주 표시 또는 URL 경로 등이 포함될 수 있습니다. 식별에 사용하는 URL의 쿼리 파라미터는 키에 포함하지 않습니다.
확장 프로그램 자체의 외부 서버 전송, 분석 도구, 별도 계정 로그인은 없습니다.
HTML, CSS, JavaScript로 구성되어 있으며 빌드 단계가 없습니다.
.
├── manifest.json # 확장 프로그램 설정 및 권한
├── identity.js # 재생 광고 식별 규칙
├── playback.js # 광고 재생 제어 및 설정 복원
├── content.js # 제목 아래 버튼과 재생 광고 처리
├── cards.js # 스폰서 광고 카드 선택·숨기기
├── popup.html # 차단 목록 화면
├── popup.css # 팝업 스타일
├── popup.js # 목록 관리와 기능 설정
└── tests/ # 식별 규칙 및 모의 DOM 테스트
테스트 실행에는 Node.js와 개발용 jsdom이 필요합니다. 검증에 사용한 Node.js 버전은 22.23.1입니다.
저장소 루트에서 실행합니다.
npm install --no-save --package-lock=false jsdom
node --test tests/*.test.cjs외부 패키지 없이 식별 규칙만 검사하려면 다음 명령을 사용합니다.
node --test tests/identity.test.cjs현재 테스트 20개는 확인 취소, 선택한 광고만 저장, 광고 전환 중 오차단 방지, 재생 설정 복원, 카드 재등장 및 차단 해제 등을 검사합니다. 모의 DOM 테스트 통과가 실제 유튜브와의 호환성을 보장하지는 않습니다. 테스트 설치로 생성되는 node_modules/는 GitHub에 업로드할 필요가 없습니다.
| 증상 | 확인할 내용 |
|---|---|
| 버튼이 보이지 않음 | 확장 기능이 켜져 있는지 확인하고 유튜브를 새로고침하세요. 재생 광고 버튼은 광고 재생 중 제목 아래에 표시됩니다. |
| 특정 광고 카드에 버튼이 없음 | 현재 지원하지 않는 카드 구조일 수 있습니다. |
| 광고가 다시 나타남 | 식별 불가로 이번만 처리했거나, 새 영상 ID·소재로 등록된 광고일 수 있습니다. |
| 광고는 안 보이는데 본영상이 시작되지 않음 | 광고 종료 시도가 제한되어 대기 시간이 남을 수 있습니다. |
| 잘못 숨긴 광고를 복원하고 싶음 | 확장 팝업의 차단 목록에서 해당 항목을 해제하세요. |
| 업데이트가 반영되지 않음 | 확장 프로그램과 유튜브 탭을 모두 새로고침하세요. |
문제를 제보할 때는 사용 중인 확장 버전, Chrome 버전, 발생 위치(홈 피드/영상 페이지), 재현 순서와 버튼 주변 화면을 함께 남겨 주세요.