AMP 자동 광고 오류, ‘맞춤 자바스크립트는 허용되지 않습니다’ 발생 원인 정리

AMP 자동 광고 오류는 워드프레스에서 AMP 플러그인과 애드센스를 함께 사용하는 경우 자주 발생하는 문제 중 하나입니다. 특히 일반 자동 광고 코드를 그대로 AMP 페이지에 넣었을 때 “맞춤 자바스크립트는 허용되지 않습니다” 오류가 출력되는 경우가 많습니다.

처음에는 단순 광고 문제처럼 보이지만 실제로는 AMP HTML 규칙 위반과 연결됩니다. AMP 페이지는 일반 워드프레스 페이지와 다르게 제한된 스크립트 구조만 허용하기 때문에, 일반 애드센스 자동 광고 코드를 그대로 삽입하면 AMP 검사에서 오류가 발생하게 됩니다.

이 상태를 그대로 방치하면 다음 문제가 이어질 수 있습니다.

  • AMP 페이지 색인 문제
  • 모바일 검색 노출 감소
  • 광고 출력 불안정
  • Search Console AMP 오류 증가
  • Core Web Vitals 흔들림
  • AMP 유효성 실패

저도 AMP 자동 광고 오류가 계속 발생해서 Search Console과 테스트 페이지를 하나씩 확인하면서 원인을 찾게 되었습니다. 결론적으로는 일반 자동 광고 코드가 아니라 AMP 전용 광고 코드를 따로 적용해야 문제가 해결되었습니다.

Search Console에서 AMP 오류가 먼저 발견된 이유

처음에는 브라우저 개발자 도구 Console에서만 오류가 보이는 상태였습니다. 하지만 실제 AMP 페이지 상태를 확인하기 위해 Search Console 테스트를 진행해보니 AMP 자체가 정상 페이지로 처리되지 않는 상황이 확인되었습니다.

AMP는 일반 페이지보다 규칙이 엄격하기 때문에 작은 코드 하나만 잘못 들어가도 전체 AMP 페이지가 무효 처리되는 경우가 있습니다.

특히 광고 코드가 가장 자주 충돌하는 영역입니다.

AMP 오류 페이지 확인

AMP 자동 광고 오류와 맞춤 자바스크립트 허용 불가 메시지 화면
AMP 자동 광고 오류 발생 화면

위 화면은 Search Console AMP 검사에서 “맞춤 자바스크립트는 허용되지 않습니다” 오류가 표시되는 상태입니다. 일반 워드프레스 페이지에서는 문제없이 동작하던 광고 코드였지만 AMP 페이지에서는 허용되지 않는 스크립트로 인식되고 있었습니다.

AMP는 외부 자바스크립트 사용 제한이 매우 강하기 때문에 일반 자동 광고 코드를 그대로 삽입하면 AMP 구조 검증 단계에서 차단됩니다. 특히 애드센스 자동 광고 코드를 <head> 영역에 그대로 삽입한 경우 이 문제가 자주 발생합니다.

이 상태가 지속되면 다음 문제가 이어질 수 있습니다.

  • AMP 페이지 검색 노출 감소
  • 모바일 AMP 아이콘 미노출
  • AMP 캐시 생성 실패
  • 광고 출력 중단 가능성

즉 단순 경고 수준이 아니라 모바일 SEO에도 영향을 줄 수 있는 문제였습니다.

어떤 코드가 문제였는지 확인한 과정

오류만 보고 원인을 찾기 어려웠기 때문에 테스트된 페이지 상세 화면으로 이동해서 실제 어떤 코드가 AMP 규칙을 위반하는지 확인했습니다.

테스트된 페이지 오류 확인

AMP 테스트 페이지에서 애드센스 스크립트 오류를 확인하는 화면
AMP 테스트 페이지 코드 오류 확인

이 화면에서는 AMP 테스트 페이지 내부에서 문제가 발생한 실제 코드를 확인할 수 있습니다. 빨간색 영역을 보면 일반 애드센스 자동 광고 스크립트가 그대로 들어가 있는 것을 확인할 수 있습니다.

문제는 이 코드가 AMP 전용 광고 코드가 아니라 일반 사이트용 자동 광고 코드였다는 점입니다.

즉 아래 같은 상황이었던 것입니다.

  • 일반 페이지용 광고 코드 사용
  • AMP 페이지에 그대로 삽입
  • AMP 규칙 위반 발생
  • Search Console 오류 출력

특히 AMP는 <script async src> 구조도 제한적으로만 허용하기 때문에 일반 광고 스크립트는 대부분 차단됩니다. 이 단계에서 문제 원인을 정확히 찾은 뒤 애드센스 설정을 다시 확인하게 되었습니다.

애드센스에서 AMP 전용 광고 설정 찾기

문제를 확인한 뒤 애드센스 관리자 페이지를 다시 살펴보니 AMP 자동 광고 전용 설정이 따로 존재하고 있었습니다. 많은 분들이 일반 자동 광고 코드만 사용하는 경우가 있는데, AMP는 별도 코드가 필요합니다.

애드센스 AMP 설정 페이지 확인

애드센스 AMP 자동 광고 활성화 상태 확인 화면
애드센스 AMP 사용 설정 화면

애드센스 광고 페이지로 이동하면 사이트 목록 오른쪽에 “AMP가 사용 설정됨” 상태가 표시됩니다. 이 설정이 활성화되지 않은 상태에서는 AMP 전용 광고 코드가 정상적으로 생성되지 않을 수 있습니다.

특히 AMP 플러그인을 설치한 뒤 광고만 기존 방식으로 유지하면 AMP 페이지 구조와 광고 코드 구조가 서로 달라 충돌이 발생하기 쉽습니다.

이 화면을 먼저 확인하는 이유는 다음과 같습니다.

  • AMP 광고 활성 상태 확인
  • AMP 전용 광고 코드 사용 여부 확인
  • AMP 자동 광고 연결 상태 확인

여기서 AMP 사용 설정이 꺼져 있다면 Search Console 오류가 계속 반복될 가능성이 높습니다.

AMP 코드 보기 메뉴를 반드시 확인해야 하는 이유

AMP 광고는 일반 광고 코드와 구조 자체가 다릅니다. 그래서 AMP 설정 화면에서 별도 코드를 확인해야 합니다.

AMP 코드 보기 설정 화면

애드센스 AMP 코드 보기 버튼과 AMP 광고 설정 화면
AMP 전용 광고 코드 확인 화면

이 화면에서는 AMP 자동 광고용 코드를 직접 확인할 수 있습니다. 인페이지 광고와 앵커 광고를 설정한 뒤 “AMP 코드 보기” 버튼을 눌러야 AMP 전용 코드가 생성됩니다.

여기서 제공되는 코드는 일반 자동 광고 코드와 다르게 AMP 규칙에 맞춰 구성되어 있습니다.

특히 중요한 부분은 아래 두 가지입니다.

  • <head> 전용 코드
  • <body> 전용 코드

두 영역을 각각 AMP 플러그인 설정 위치에 맞게 추가해야 정상 동작합니다. 이 과정을 건너뛰고 기존 광고 코드를 그대로 사용하면 AMP 자동 광고 오류가 반복될 가능성이 높습니다.

AMP 코드 교체 후 Search Console 상태 변화

광고 코드를 AMP 전용 코드로 교체한 뒤 다시 Search Console 검사를 진행했습니다. 결과는 바로 달라졌습니다.

AMP 유효성 검사 통과 확인

Search Console에서 유효한 AMP 페이지 상태를 표시하는 화면
유효한 AMP 페이지 검사 결과

AMP 전용 광고 코드 적용 이후에는 기존 오류 메시지가 사라지고 “유효한 AMP 페이지” 상태로 변경된 것을 확인할 수 있었습니다.

즉 문제 원인은 AMP 플러그인 자체가 아니라 잘못된 광고 코드 삽입이었습니다.

코드 수정 이후 나타난 변화는 다음과 같았습니다.

  • AMP 오류 제거
  • Search Console 유효 페이지 복구
  • 모바일 AMP 노출 안정화
  • 광고 출력 정상화
  • AMP HTML 검사 통과

특히 Search Console에서 AMP 페이지가 정상 색인 상태로 변경되면서 모바일 검색 구조도 안정적으로 유지되는 모습을 확인할 수 있었습니다.

AMP 자동 광고 오류 정리

AMP 자동 광고 오류는 대부분 일반 자동 광고 코드를 AMP 페이지에 그대로 삽입하면서 발생합니다.

핵심 흐름만 정리하면 다음과 같습니다.

  • AMP 페이지는 일반 스크립트 제한
  • 일반 자동 광고 코드 사용 시 오류 발생
  • Search Console에서 AMP 오류 출력
  • 애드센스 AMP 전용 코드 필요
  • <head>와 <body> 코드 분리 적용 필요

특히 AMP 플러그인을 설치한 뒤 광고 코드까지 기존 방식 그대로 유지하는 경우가 많기 때문에 Search Console AMP 검사 결과를 한 번씩 확인하는 것이 중요합니다.

이번 문제도 결국 “광고 코드 구조 차이”가 원인이었고, AMP 전용 코드로 변경한 뒤 AMP 페이지 상태가 정상으로 복구되었습니다.

▶ 워드프레스 AMP 애드센스 설정 6단계 완전 정리 (초보도 가능)

▶ LiteSpeed Cache 모바일 캐시 설정, AMP 사용 시 왜 충돌이 생길까?

▶ 워드프레스 사이트킷으로 구글 통계 확인하는 방법 (속도 문제 해결 포함)

댓글 달기

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

위로 스크롤