
WORDPRESS · GOOGLE ADSENSE TROUBLESHOOTING
워드프레스 ads.txt가 한 달째 반영되지 않을 때 확인할 6가지
ads.txt를 등록한 뒤 한 달이 지났는데도 애드센스가 ‘찾을 수 없음’ 또는 ‘승인되지 않음’으로 표시한다면, 파일을 다시 만드는 것보다 실제로 크롤러가 받는 응답을 확인하는 것이 먼저입니다. 아래 순서대로 점검하면 워드프레스, 호스팅, CDN, 보안 플러그인 중 어디에서 문제가 생겼는지 좁힐 수 있습니다.
핵심 요약
https://도메인/ads.txt가 로그인 없이 열리고 HTTP 200을 반환해야 합니다.- 애드센스에서 복사한 게시자 ID와 파일 안의
pub-번호가 글자 단위로 같아야 합니다. - 비www·www, HTTP·HTTPS 어느 경로로 요청해도 같은 ads.txt에 도달해야 합니다.
- robots.txt, 보안 플러그인, WAF, CDN이 Google 크롤러에 차단·챌린지·오류 응답을 주지 않아야 합니다.
- 수정을 끝낸 뒤 애드센스의 ‘업데이트 확인’을 실행하고 최종 상태를 일정 기간 유지합니다.
이 글이 해결하는 검색 의도
‘워드프레스 ads.txt 반영 안됨’, ‘애드센스 ads.txt 찾을 수 없음’, ‘ads.txt 한 달째 미반영’처럼 이미 파일을 넣었지만 상태가 바뀌지 않는 문제를 해결하려는 독자를 위한 글입니다. 단순 설치법보다 서버 응답, 도메인 정규화, 캐시와 보안 계층을 포함한 진단 순서를 중심으로 설명합니다.
한 달째 반영되지 않으면 지연보다 접근 오류를 먼저 확인하세요
Google AdSense 공식 가이드는 ads.txt 변경 사항이 보통 며칠 안에 반영될 수 있지만, 광고 요청이 많지 않은 사이트는 최대 한 달이 걸릴 수 있다고 안내합니다. 따라서 등록 후 며칠밖에 지나지 않았다면 기다리는 것이 맞지만, 이미 한 달이 지났다면 같은 파일을 반복해서 수정하는 것보다 크롤러가 무엇을 받는지 검증해야 합니다.
중요한 기준은 워드프레스 관리자 화면에 입력값이 존재하는지가 아닙니다. 외부에서 /ads.txt를 요청했을 때 올바른 상태 코드와 내용이 반환되는지가 기준입니다. 공식 ads.txt 크롤링 점검 문서도 루트 도메인 접근, robots.txt, HTTP 200, 형식 오류, HTTP·HTTPS 접근을 주요 점검 항목으로 제시합니다.
| 애드센스 표시 | 우선 의심할 항목 | 첫 확인 방법 |
|---|---|---|
| 찾을 수 없음 | 404·500, 루트 경로 오류, 크롤러 차단 | curl -I https://도메인/ads.txt |
| 승인되지 않음 | 게시자 ID 누락·오타·다른 계정 ID | 애드센스에서 복사한 줄과 직접 비교 |
| 이전에는 승인됨 | CDN 캐시, 플러그인 충돌, 일시적 404·500 | 시크릿 창·다른 네트워크·서버 로그 비교 |
1. ads.txt가 루트 URL에서 바로 열리는지 확인하세요
가장 먼저 주소창에 https://내도메인.com/ads.txt를 직접 입력합니다. 워드프레스 글 주소나 업로드 폴더가 아니라 최상위 도메인 바로 뒤에 /ads.txt가 붙어야 합니다. 예를 들어 /wp-content/uploads/ads.txt, /blog/ads.txt, /ads/ads.txt에만 존재하면 루트 파일로 간주되지 않을 수 있습니다.
브라우저에 텍스트가 보이는 것만으로 끝내지 말고 HTTP 상태도 확인하세요. Google은 응답 본문에 파일 내용이 있어도 헤더가 404라면 그 응답을 무시하고 파일이 없는 것으로 처리한다고 설명합니다. 호스팅 터미널이나 로컬 터미널에서 아래 명령으로 최종 상태와 이동 경로를 확인할 수 있습니다.
curl -I https://example.com/ads.txt
curl -IL http://example.com/ads.txt
curl -sL https://example.com/ads.txt정상 판정 기준
최종 응답은 HTTP 200 OK이고, 로그인 화면·보안 확인 페이지·워드프레스 404 템플릿이 아닌 ads.txt 텍스트를 반환해야 합니다. 시크릿 창과 모바일 데이터에서도 같은 결과가 나오는지 확인하면 로그인 쿠키나 사내 네트워크 예외를 배제할 수 있습니다.
자체 호스팅 워드프레스라면 보통 사이트의 문서 루트인 public_html, www 또는 도메인별 루트 폴더에 실제 파일을 두거나, 검증된 플러그인이 가상 URL을 생성하도록 합니다. WordPress.com은 요금제와 운영 방식에 따라 루트 파일 관리 권한이 다를 수 있으므로, 자체 호스팅 워드프레스와 같은 FTP 절차를 그대로 적용하면 안 됩니다.
Google AdSense 공식 ads.txt 가이드 확인
정보 확인하기 →
2. 게시자 ID와 한 줄 형식이 정확한지 확인하세요
애드센스의 ‘승인되지 않음’ 상태는 파일 자체를 찾았지만 내 게시자 ID가 없거나 형식이 맞지 않을 때 나타날 수 있습니다. 기억으로 입력하지 말고 애드센스 계정에서 제공하는 ads.txt 스니펫을 다시 복사해 현재 파일과 비교하세요.
google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0여기서 pub-0000000000000000은 예시이므로 반드시 본인 계정의 게시자 ID로 바꿔야 합니다. google.com, 게시자 ID, 관계 유형, 인증기관 ID의 네 필드는 쉼표로 구분되며, 불필요한 쉼표·전각 문자·숨은 특수문자·다른 계정의 ID가 섞이지 않았는지 확인합니다.
정상 예
애드센스에서 복사한 줄과 게시자 ID가 정확히 일치하고, 일반 텍스트로 한 줄씩 저장되어 있습니다.
오류 가능성
사이트킷에 연결한 계정과 ads.txt의 계정이 다르거나, 복사 과정에서 따옴표·HTML 태그·추가 쉼표가 들어갔습니다.
여러 광고 네트워크를 사용한다면 각 네트워크가 제공한 레코드를 함께 넣을 수 있습니다. 다만 다른 사이트에서 복사한 줄을 임의로 추가하지 말고, 각 판매자와의 실제 관계에 맞는 값만 사용해야 합니다. ads.txt는 공개적으로 허가된 판매자를 선언하는 표준이므로 IAB Tech Lab의 ads.txt 표준 안내와 각 광고 네트워크의 공식 스니펫을 기준으로 작성하세요.
3. www·비www·HTTP·HTTPS 리디렉션이 일관적인지 확인하세요
워드프레스 사이트는 실제 주소가 www.example.com인데 애드센스에는 example.com으로 등록되어 있거나, 반대인 경우가 많습니다. 홈페이지는 정상적으로 이동하더라도 /ads.txt 경로에는 별도의 리디렉션 규칙이 적용되지 않아 한쪽 주소에서 404가 발생할 수 있습니다.
다음 네 주소를 각각 확인하세요. 최종적으로 모두 같은 내용의 ads.txt에 도달하거나, 지원되는 정상 리디렉션을 거쳐야 합니다.
http://example.com/ads.txthttps://example.com/ads.txthttp://www.example.com/ads.txthttps://www.example.com/ads.txt
Google은 HTTP와 HTTPS 양쪽에서 ads.txt를 확인하려고 하며, 한쪽만 제공하는 경우 다른 쪽에서 올바르게 이동하도록 설정하라고 안내합니다. 또한 공식 FAQ는 원래 루트 도메인 밖의 목적지로 이동하는 경우 한 번의 HTTP 리디렉션을 지원한다고 설명하므로, 여러 단계의 이동·자바스크립트 이동·메타 리프레시보다 단순한 서버 측 301 또는 302 흐름이 안전합니다.
주의사항
애드센스에서 사이트를 삭제했다가 다시 추가하는 행동은 리디렉션 문제를 해결하지 못합니다. 먼저 도메인 네 가지 조합의 응답을 확인하고, WordPress 주소·사이트 주소·호스팅 리디렉션·Cloudflare 리디렉션 규칙이 같은 기준을 사용하도록 정리하세요.
리디렉션 정책의 세부 기준은 Google AdSense ads.txt FAQ에서 확인할 수 있습니다.
4. robots.txt·보안 플러그인·WAF가 크롤러를 막지 않는지 확인하세요
브라우저에서는 정상인데 애드센스만 파일을 찾지 못한다면 사용자 에이전트나 IP에 따라 응답이 달라지는지 확인해야 합니다. robots.txt의 전체 차단, Wordfence 같은 보안 플러그인의 봇 차단, Cloudflare의 관리형 챌린지, 호스팅 방화벽의 국가·IP 제한이 Google 크롤러에 403 또는 503을 반환할 수 있습니다.
Google의 ads.txt 크롤링 문서는 robots.txt가 크롤링을 막지 않아야 하며, 필요하면 Googlebot이 /ads.txt에 접근할 수 있도록 허용하라고 안내합니다. robots.txt에 아래와 같이 전체 경로를 막는 규칙이 있다면 ads.txt 접근에도 영향을 줄 수 있으므로 실제 규칙의 우선순위를 점검하세요.
User-agent: Googlebot
Allow: /ads.txt보안 플러그인이나 WAF를 완전히 끄기보다 /ads.txt 경로에 CAPTCHA, 브라우저 무결성 검사, 로그인 요구, 속도 제한이 적용되지 않도록 예외를 만드는 편이 좋습니다. 변경 전후의 서버 접근 로그에서 ads.txt 요청의 상태 코드가 200으로 바뀌는지 확인하면 원인을 명확히 판단할 수 있습니다.
피해야 할 대응
Google 전체 크롤러를 무조건 허용하거나 사이트 보안을 장기간 해제하지 마세요. 문제 경로와 차단 규칙을 좁혀 최소한의 예외만 적용하고, 변경 후에는 접근 로그와 보안 이벤트를 함께 점검해야 합니다.
5. 캐시·CDN·ads.txt 플러그인 충돌이 없는지 확인하세요
워드프레스에서는 ads.txt를 두 방식으로 제공하는 경우가 많습니다. 하나는 문서 루트에 실제 ads.txt 파일을 두는 방식이고, 다른 하나는 플러그인이 워드프레스 라우팅을 통해 가상 파일을 출력하는 방식입니다. 두 방식을 동시에 사용하면 관리자에서 수정한 값과 외부 URL에서 보이는 값이 달라질 수 있습니다.
예를 들어 호스팅 루트에 오래된 실제 파일이 남아 있으면 플러그인의 최신 값보다 실제 파일이 우선할 수 있습니다. 반대로 플러그인 비활성화, 고유주소 규칙 변경, 캐시 플러그인 오류로 가상 경로가 404가 될 수도 있습니다. 따라서 관리 방식을 한 가지로 정하고, 최종 판단은 관리자 화면이 아니라 공개 URL의 내용으로 해야 합니다.
캐시 계층별 점검 순서
- 워드프레스 캐시 플러그인의 전체 캐시를 비웁니다.
- 호스팅 서버 캐시 또는 Nginx FastCGI 캐시를 비웁니다.
- Cloudflare 등 CDN 캐시에서
/ads.txt를 제거하고 필요하면 캐시 우회 규칙을 적용합니다. - 시크릿 창과 다른 네트워크에서 공개 URL을 다시 확인합니다.
- 응답 내용과 게시자 ID가 애드센스 스니펫과 일치하는지 비교합니다.
실무 팁
캐시를 비운 직후에는 응답 헤더의 age, cf-cache-status, x-cache 같은 값을 살펴보세요. 캐시 HIT가 계속된다면 워드프레스 내부 수정이 CDN의 오래된 404 또는 이전 ads.txt에 가려질 수 있습니다.
플러그인 방식을 사용할 때는 설치 수만 보고 선택하기보다 현재 워드프레스·PHP 버전과의 호환성, 최근 유지보수, 실제 /ads.txt 출력 여부를 확인하세요. WordPress.org의 Ads.txt Manager 플러그인 페이지처럼 공식 저장소의 설명·지원 정보·호환성을 먼저 검토하는 것이 좋습니다.
6. 애드센스 사이트 상태와 ‘업데이트 확인’을 점검하세요
파일이 정상이어도 애드센스에 등록된 사이트가 다른 도메인이거나, 사이트 검토 상태와 ads.txt 상태를 혼동하면 해결이 늦어집니다. 애드센스의 사이트 메뉴에서 정확한 도메인을 열고 ads.txt 상태가 ‘찾을 수 없음’인지 ‘승인되지 않음’인지 먼저 구분하세요.
수정이 끝났다면 사이트 상세 화면의 ‘업데이트 확인’ 기능을 실행합니다. Google은 ads.txt 변경이 계정에 반영되지 않을 때 이 기능으로 다시 확인을 요청할 수 있다고 안내합니다. 다만 같은 날 여러 번 파일을 수정하면 어떤 버전을 기준으로 검증하는지 추적하기 어려워지므로, 최종 파일과 서버 설정을 확정한 뒤 상태를 유지하는 편이 좋습니다.
발행 전 최종 체크리스트
- ☐ 루트 주소
/ads.txt가 로그인 없이 열린다. - ☐ 최종 응답 상태가 HTTP 200이다.
- ☐ 애드센스 게시자 ID가 정확히 일치한다.
- ☐ www·비www, HTTP·HTTPS가 같은 파일에 도달한다.
- ☐ robots.txt와 WAF가 ads.txt 요청을 차단하지 않는다.
- ☐ 실제 파일과 플러그인 중 한 가지 방식만 사용한다.
- ☐ 워드프레스·서버·CDN 캐시를 모두 비웠다.
- ☐ 애드센스에서 업데이트 확인을 실행했다.
Google ads.txt 문제 해결 도구로 상태 진단
정보 확인하기 →
마무리 요약
한 달째 ads.txt가 반영되지 않는 문제는 대부분 ‘파일을 입력했는가’보다 ‘Google 크롤러가 루트 도메인에서 어떤 응답을 받는가’로 판단해야 합니다. HTTP 200, 정확한 게시자 ID, 단순한 리디렉션, 크롤러 접근, 캐시 일관성, 애드센스 업데이트 확인의 순서로 점검하세요.
모든 항목이 정상인데도 상태가 바뀌지 않는다면 서버 접근 로그와 WAF 이벤트를 확보한 뒤 호스팅 지원팀 또는 Google 공식 문제 해결 경로에 전달하는 것이 효율적입니다. 수익이나 승인 결과는 사이트 상태와 광고 요청량 등에 따라 달라질 수 있으므로, ads.txt 수정만으로 특정 결과를 보장한다고 해석해서는 안 됩니다.
자주 묻는 질문
Q. 한 달 넘게 ads.txt가 반영되지 않으면 무조건 설정이 잘못된 건가요?
반드시 그렇지는 않습니다. Google은 광고 요청이 많지 않은 사이트의 경우 변경 반영에 최대 한 달이 걸릴 수 있다고 안내합니다. 다만 한 달이 지났다면 단순 대기만 하기보다 루트 URL, HTTP 200 상태, 게시자 ID, 리디렉션과 크롤러 차단 여부를 순서대로 점검하는 편이 좋습니다.
Q. 브라우저에서 ads.txt 내용이 보이면 정상인가요?
브라우저에서 내용이 보이는 것은 중요한 1차 확인이지만 충분조건은 아닙니다. 응답 헤더가 HTTP 200인지, HTML 오류 페이지가 아닌지, 최종 URL과 게시자 ID가 정확한지도 확인해야 합니다. 시크릿 창과 curl 명령으로 캐시 영향을 줄여 재확인하면 더 정확합니다.
Q. www와 비www 중 어디에 ads.txt를 둬야 하나요?
기준은 애드센스에 등록한 루트 도메인에서 /ads.txt가 정상적으로 발견되는 것입니다. 비www 주소가 www 주소로 이동한다면 /ads.txt 경로도 같은 방식으로 최종 파일에 도달해야 합니다. HTTP와 HTTPS 양쪽에서도 파일이 열리거나 올바르게 리디렉션되는지 함께 확인하세요.
Q. ads.txt 플러그인과 실제 파일을 같이 사용해도 되나요?
동시에 사용할 수는 있지만 권장되는 운영 방식은 아닙니다. 실제 파일과 플러그인이 서로 다른 내용을 반환하면 관리자 화면에서 수정한 값과 외부에서 보이는 값이 달라질 수 있습니다. 한 가지 관리 방식만 남기고 캐시를 비운 뒤 최종 URL의 내용을 기준으로 검증하세요.
Q. 수정 후 애드센스에서 무엇을 해야 하나요?
애드센스의 사이트 메뉴에서 해당 도메인을 열고 ads.txt 상태의 업데이트 확인 기능을 실행하세요. 같은 날 여러 번 파일을 바꾸기보다 모든 점검을 끝낸 최종 상태를 유지하는 편이 좋습니다. 문제가 계속되면 공식 ads.txt 문제 해결 도구를 이용하고 서버 접근 로그나 보안 차단 기록도 함께 확인하세요.
공식 자료를 바탕으로 한 리서치 인사이트
Google AdSense 공식 문서는 저트래픽 사이트의 반영 지연이 최대 한 달까지 가능하다고 안내하지만, 동시에 루트 도메인 접근, HTTP 200, robots.txt 허용, 형식 오류, HTTP·HTTPS 접근을 별도 점검 항목으로 제시합니다. 따라서 한 달을 넘긴 문제는 단순 대기와 기술적 접근 오류를 분리해 진단해야 합니다.
워드프레스 환경에서는 실제 파일, 플러그인 라우팅, 서버 캐시, CDN, WAF가 겹치기 때문에 관리자 화면의 설정값보다 공개 URL의 최종 응답을 기준으로 판단하는 것이 핵심입니다. IAB Tech Lab의 표준은 ads.txt를 승인된 디지털 판매자를 공개적으로 선언하는 메커니즘으로 설명합니다.
참고 자료·업데이트 확인처