색인·웹마스터 도구 · 공식 문서

A/B 테스트 SEO 영향과 캐노니컬·302 설정 순서

구글은 버튼 색·문구 같은 작은 변경은 검색 스니펫과 순위에 영향이 거의 없다고 적었습니다. URL을 나누는 테스트라면 대체 URL에 원래 URL을 가리키는 캐노니컬을 넣고, 방문자를 보낼 때 302 리디렉션을 쓰고, 끝나면 테스트 요소를 지웁니다.

A/B 테스트는 같은 페이지의 버전을 둘 이상 띄워 어느 쪽이 더 잘 팔리는지 보는 일입니다. 검색 쪽에서 걸리는 것은 버전 자체보다 URL과 리디렉션입니다.

구글은 테스트가 검색에 주는 영향을 줄이는 법을 문서 하나로 따로 적었습니다. 이 편은 그 문서를 설정 순서로 옮겼습니다.

발견 01

구글은 버튼·문구 같은 작은 변경이 스니펫과 순위에 거의 영향이 없다고 적었습니다

Small changes, such as the size, color, or placement of a button or image, or the text of your "call to action" ("Add to cart" vs. "Buy now!"), can have a surprising impact on users' interactions with your page, but often have little or no impact on that page's search result snippet or ranking.

버튼이나 이미지의 크기·색·위치, 클릭 유도 문구 같은 작은 변경은 사용자 반응에는 크게 영향을 줄 수 있지만, 검색 결과 스니펫이나 순위에는 대개 거의 영향이 없다.

Google Search Central 「Minimize A/B testing impact in Google Search」

테스트 중인 버전이 크롤링되어도 대개 큰일이 아닙니다. 구글은 실험을 색인할 만큼 자주 크롤링한다면 끝난 뒤 바꾼 내용도 빨리 색인할 것이라고 적었습니다.

신경 쓸 자리는 테스트 방식입니다. 원문은 방식을 2가지로 나눴고, 방식에 따라 챙길 설정이 다릅니다.

테스트 방식하는 방법챙길 권장사항공식 문서 원문
URL을 나누는 테스트버전마다 URL을 따로 만들고 방문자 일부를 그 URL로 보냅니다.클로킹 금지, rel="canonical", 302 리디렉션, 필요한 기간만 모두You can run tests by creating multiple versions of a page, each with its own URL.한 페이지의 여러 버전을 각각 자체 URL로 만들어 테스트할 수 있다.
같은 URL에서 바꾸는 테스트URL은 그대로 두고 자바스크립트로 보여 줄 버전을 고릅니다.클로킹 금지, 필요한 기간만You can also run tests without changing the URL by inserting variations dynamically on the page.URL을 바꾸지 않고 페이지에 버전을 동적으로 넣어 테스트할 수도 있다.
권장사항 이름은 아래 표와 같습니다. 같은 URL에서 바꾸는 테스트는 캐노니컬·리디렉션을 둘 자리가 없습니다.

발견 02

URL을 나누는 테스트에는 구글 권장사항 4가지가 모두 걸립니다

권장사항설정적용 대상공식 문서 원문
클로킹 금지Googlebot과 사용자에게 같은 URL 집합을 보입니다. robots.txt로 테스트 URL만 차단하는 것도 같은 문제로 칩니다.모든 테스트Don't show one set of URLs to Googlebot, and a different set to humans. Cloaking counts whether you do it by server logic or by robots.txt, or any other method.Googlebot과 사용자에게 서로 다른 URL을 보이지 말 것. 서버 논리든 robots.txt든 다른 방법이든 모두 클로킹으로 본다.
rel="canonical"대체 URL마다 원래 URL을 가리키는 캐노니컬 태그를 넣습니다. noindex 대신 씁니다.URL을 나누는 테스트If you're running a test with multiple URLs, you can use the rel="canonical" link attribute on all of your alternate URLs to indicate that the original URL is the preferred version. We recommend using rel="canonical" rather than a noindex meta tag because it more closely matches your intent in this situation.여러 URL로 테스트하면 모든 대체 URL에 rel="canonical"을 넣어 원래 URL이 기본 버전임을 알릴 수 있다. 이 상황의 취지에 더 맞으므로 noindex 메타 태그보다 rel="canonical"을 권한다.
302 리디렉션원래 URL에서 대체 URL로 보낼 때 302(임시) 리디렉션을 씁니다. 자바스크립트 리디렉션도 됩니다.방문자를 대체 URL로 보내는 테스트If you're running a test that redirects users from the original URL to a variation URL, use a 302 (temporary) redirect, not a 301 (permanent) redirect. JavaScript-based redirects are also fine.사용자를 원래 URL에서 다른 버전 URL로 보내는 테스트라면 301(영구)이 아니라 302(임시) 리디렉션을 쓴다. 자바스크립트 기반 리디렉션도 괜찮다.
필요한 기간만결론이 나면 이긴 버전을 원래 URL에 반영하고 대체 URL·스크립트·마크업을 지웁니다.모든 테스트Once you've concluded the test, update your site with the desired content variation(s) and remove all elements of the test as soon as possible, such as alternate URLs or testing scripts and markup.테스트가 끝나면 원하는 버전으로 사이트를 업데이트하고, 대체 URL·테스트 스크립트·마크업 같은 테스트 요소를 가능한 한 빨리 모두 지운다.
원문 「Best practices when testing」의 순서대로 적었습니다. 한국어판 제목은 「테스트 시 권장사항」입니다.

302를 쓰는 이유는 검색 결과에 원래 URL을 남기기 위해서입니다. 임시 리디렉션이면 구글은 원래 URL을 표준으로 둔 채 리디렉션만 따라갑니다.

301이 영구 이동을 알리는 신호라서 테스트 페이지가 원래 URL 자리를 차지할 수 있습니다. 두 코드의 일반 차이는 「301 302 리다이렉트 차이와 상황별 선택 기준」 편에 자세히 적었습니다.

Googlebot follows the redirect, but the indexing pipeline doesn't use the redirect as a signal that the redirect target should be canonical.

Googlebot은 리디렉션을 따르지만, 색인 생성 파이프라인은 이를 리디렉션 대상이 표준이라는 신호로 쓰지 않는다.

Google Search Central 「Redirects and Google Search」

캐노니컬을 noindex 대신 쓰는 이유도 원문에 있습니다. 테스트 URL을 원래 URL의 변형으로 묶는 것이 목적이어서, noindex를 쓰면 예기치 않은 결과가 나올 수 있다고 적었습니다.

Using noindex rather than rel="canonical" in such a situation can sometimes have unexpected bad effects.

이런 상황에서 rel="canonical" 대신 noindex를 쓰면 때로 예기치 않은 나쁜 결과가 생길 수 있다.

Google Search Central 「Minimize A/B testing impact in Google Search」

발견 03

쿠키로 버전을 나누면 Googlebot은 쿠키 없는 브라우저가 보는 버전만 봅니다

확인할 것공식 문서 원문
Googlebot의 쿠키 지원If you're using cookies to control the test, keep in mind that Googlebot generally doesn't support cookies.쿠키로 테스트를 제어한다면 Googlebot은 대개 쿠키를 지원하지 않는다는 점에 유의할 것.
Googlebot이 보는 버전This means it will only see the content version that's accessible to users with browsers that don't accept cookies.그래서 Googlebot은 쿠키를 받지 않는 브라우저 사용자가 볼 수 있는 버전만 본다.
쿠키를 받지 않는 브라우저로 원래 URL을 열어 보면 Googlebot이 볼 버전을 짐작할 수 있습니다.

쿠키가 없는 방문자에게 어떤 버전이 가는지 테스트 도구 설정에서 먼저 정합니다. 그 버전이 검색에 쓰일 버전이 됩니다.

발견 04

테스트가 끝나면 대체 URL과 스크립트를 지워야 검색에서도 끝납니다

Once you've concluded the test, update your site with the desired content variation(s) and remove all elements of the test as soon as possible, such as alternate URLs or testing scripts and markup.

테스트가 끝나면 원하는 버전으로 사이트를 업데이트하고, 대체 URL·테스트 스크립트·마크업 같은 테스트 요소를 가능한 한 빨리 모두 지운다.

Google Search Central 「Minimize A/B testing impact in Google Search」
상황공식 문서 원문
불필요하게 긴 실험If we discover a site running an experiment for an unnecessarily long time, we may interpret this as an attempt to deceive search engines and take action accordingly.불필요하게 오래 실험하는 사이트를 발견하면 검색엔진을 속이려는 시도로 보고 조치할 수 있다.
한 버전을 대부분의 사용자에게 보일 때This is especially true if you're serving one content variant to a large percentage of your users.한 버전을 사용자 대다수에게 보이고 있다면 더욱 그렇다.
기간 기준 숫자는 원문에 없습니다. 원문은 좋은 테스트 도구가 데이터가 충분한 때를 알려 준다고 적었습니다.

발견 05

같은 권장사항도 B2B·B2C·B2G 는 먼저 챙길 자리가 다릅니다

예시 ① 요금 페이지 두 버전을 시험하는 문의형 기업 사이트(B2B)

요금 페이지를 새 구성으로 따로 만들고 방문자 절반을 그 URL로 보내는 경우입니다. URL을 나누는 테스트라서 권장사항이 모두 걸립니다.

새 URL에는 원래 요금 페이지를 가리키는 캐노니컬을 넣고, 보내는 리디렉션은 302로 둡니다. 결론이 나면 이긴 구성을 원래 URL에 옮깁니다.

예시 ② 장바구니 버튼 문구를 시험하는 쇼핑몰(B2C)

상품 페이지 URL은 그대로 두고 자바스크립트로 버튼 문구만 바꾸는 경우입니다. 구글이 영향이 거의 없다고 적은 작은 변경에 해당합니다.

버전을 쿠키로 나눈다면 쿠키 없는 방문자에게 가는 버전을 정해 둡니다. 테스트가 끝나면 스크립트를 상품 페이지에서 걷어 냅니다.

예시 ③ 민원 안내 페이지 개편안을 시험하는 공공기관 누리집(B2G)

개편안을 별도 URL로 올려 일부 방문자에게 보이는 경우입니다. 사업 기간이 끝나면 수행사가 바뀌어 대체 URL이 그대로 남기 쉽습니다.

과업 검수 항목에 「테스트 URL·스크립트 삭제 확인」을 한 줄로 넣어 둡니다. 남은 대체 URL과 302 리디렉션은 함께 걷어 냅니다.

그럼 A/B 테스트는 어떤 순서로 설정하나요?

  1. 테스트 방식을 정합니다. URL을 나누는지, 같은 URL에서 자바스크립트로 바꾸는지에 따라 챙길 권장사항이 4가지 또는 그보다 적어집니다.
  2. Googlebot과 사용자에게 같은 URL 집합이 보이는지 확인합니다. robots.txt로 대체 URL만 차단하는 설정은 빼 둡니다.
  3. URL을 나눈다면 대체 URL마다 원래 URL을 가리키는 rel="canonical"을 넣습니다. noindex 대신 이 태그를 씁니다.
  4. 원래 URL에서 대체 URL로 보낼 때 302 리디렉션이나 자바스크립트 리디렉션을 씁니다.
  5. 쿠키로 버전을 나눈다면 쿠키 없는 브라우저에 가는 버전을 정합니다.
  6. 결론이 나면 이긴 버전을 원래 URL에 반영하고, 대체 URL·테스트 스크립트·마크업을 지웁니다. 캐노니컬 일반은 「캐노니컬 태그」 편에 자세히 적었습니다.

조사 방법

  • Google Search Central 「Minimize A/B testing impact in Google Search」 (문서 수정일 2025-12-10) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/website-testing
  • Google Search Central 「Redirects and Google Search」 (문서 수정일 2026-04-14) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/301-redirects
  • 설정 순서는 위 문서의 권장사항 4가지를 테스트 준비부터 종료까지의 순서로 다시 묶은 것입니다. 묶는 방식은 편집 판단입니다.
  • 예시 ①②③은 이해를 돕기 위해 만든 가상 상황이며, 실제 기업·기관의 사례가 아닙니다.
  • 원문은 영어판(hl=en)이고, 도구·용어 이름은 같은 문서 한국어판(hl=ko) 표기를 따랐습니다.