핵심 요약 실제로 번역된 한국어·일본어 페이지까지 영어 원본으로 canonical을 통일하는 것은 피하는 편이 타당합니다. 다만 같은 언어의 국가별 유사 페이지에는 URL을 유지하면서 검색 대표본만 통합하는 선택도 있습니다. 따라서 ‘모두 self-canonical’과 ‘모두 영어로 통합’ 중 하나를 사이트 전체에 적용하지 말고, 페이지별로 제공 목적과 중복 관계를 먼저 나누세요.
아래 설명은 Google 검색을 기준으로 합니다. 실제 HTML, 응답 경로와 색인 자료가 없으므로 현재 사이트에서 이미 손실이 발생했다고 단정하지는 않습니다. 예시 경로는 설계 설명용입니다.
1. 영어 원본 canonical은 무엇이 문제인가
canonical은 중복·유사 페이지의 대표 URL을 제안하는 장치이고, hreflang은 대응하는 언어·지역 버전을 알려주는 장치입니다. canonical은 번역의 원저자나 최초 작성 언어를 표시하는 태그가 아닙니다. 또한 강제 명령이 아니므로 Google이 선언과 다른 URL을 대표본으로 선택할 수 있습니다. Google의 canonical 설명을 기준으로 이해해야 합니다. (developers.google.com)
예를 들어 한국어로 충실히 번역한 /ko/item-a를 한국어 검색의 진입점으로 운영하면서 canonical은 /en/item-a로 지정했다면, 운영 목적과 대표본 선언이 맞지 않습니다. 영어 URL로 묶겠다는 설정이 받아들여지는 경우 현지 페이지의 독립적인 검색 진입점을 유지하려는 의도에 불리하게 작용할 수 있습니다. 반대로 실제 번역 차이 때문에 해당 canonical이 받아들여지지 않을 수도 있습니다. 이는 공식 설명에 따른 가능성이지, 이 사이트에서 확인된 결과는 아닙니다. (developers.google.com)
따라서 문제를 ‘canonical이 hreflang보다 무조건 강하다’로 설명하면 부정확합니다. 실제로는 콘텐츠의 관계, 대표 URL 선택, 지역별 대체 버전 제공을 함께 봐야 합니다. 설정만 보고 모든 비영어 페이지가 반드시 사라진다거나 사이트 전체 페널티가 발생한다고 판단할 근거는 없습니다.
Google은 hreflang을 사용할 때 같은 언어의 canonical을 지정하도록 안내하며, 같은 언어의 대표 페이지가 없는 경우에만 적절한 대체 언어를 고려합니다. 이 예외를 이미 존재하는 정상적인 한국어·일본어 번역본까지 영어로 통합하라는 뜻으로 읽어서는 안 됩니다. canonical 지정 지침을 참고하세요. (developers.google.com)
2. URL 통합과 분리는 세 가지 선택으로 나눠야 한다
실무에서는 다음 두 질문을 따로 결정하는 것이 좋습니다.
- 사용자에게 이 국가·언어 URL을 계속 제공해야 하는가?
- 이 URL을 별도의 검색 대표 페이지로 운영하려는가?
두 질문을 합쳐 버리면 canonical을 바꾸는 작업과 페이지를 없애는 작업이 혼동됩니다. 다음 표는 그 구분을 적용한 운영 판단표입니다.
| 상황 | 서비스 URL | canonical·hreflang 판단 |
|---|---|---|
| 주요 본문이 충실히 번역된 한국어·영어·일본어 페이지 | 언어별 유지 | 각 언어 대표 URL에 self-canonical, 대응 버전끼리 hreflang |
| 같은 영어지만 국가별 배송 조건 자체가 핵심인 안내 페이지 | 국가별 유지 우선 | 별도 대표본을 목표로 self-canonical 검토 |
| 같은 영어의 상품 설명에 지역별 작은 차이만 있고 URL은 필요함 | 지역 URL 유지 가능 | 같은 언어 대표본으로 canonical 통합하고 hreflang 병행 검토 |
| 국가별 차이도 없고 별도 URL을 유지할 이유도 없음 | 통합 가능 | 대응하는 통합 페이지로 영구 리디렉션 검토 |
| 메뉴만 번역되고 주요 본문은 영어 그대로임 | 번역·공개 상태 재검토 | 정상 번역본으로 일괄 취급하지 않음 |
| 국가를 바꾸면 다른 상품이나 다른 목적의 페이지가 됨 | 별도 콘텐츠로 판단 | 같은 상품의 대체 버전이라는 이유로 억지 연결하지 않음 |
이 표에서 가장 중요한 예외는 세 번째 행입니다. Google은 같은 언어의 유사·중복 지역 페이지에 선호 버전을 정하고 canonical과 hreflang을 함께 사용하는 방식을 설명합니다. 따라서 다른 URL을 canonical로 가리킨 지역 페이지가 있다고 해서 그 hreflang 구성이 언제나 잘못된 것은 아닙니다. 다지역·다국어 사이트 지침에 명시된 조건입니다. (developers.google.com)
3. 같은 언어의 가격·배송 페이지: 차이의 존재보다 중요도를 본다
가령 /en-us/item-a와 /en-gb/item-a에 같은 상품 설명이 있고 통화 표시만 달라진다고 가정해 보겠습니다. 별도 지역 URL은 장바구니 설정이나 공유 링크에 필요할 수 있습니다. 그렇다고 두 페이지를 반드시 별도의 검색 대표본으로 만들어야 한다는 결론까지 자동으로 따라오지는 않습니다.
반면 /en-us/shipping과 /en-gb/shipping의 핵심이 각각 배송 가능 지역, 배송비, 도착 예상 범위, 반품 주소를 설명하는 것이라면 이야기가 달라집니다. 이때 배송 조건은 주변 옵션이 아니라 방문자가 확인하려는 답 자체입니다. 한쪽 내용을 다른 쪽의 대표로 삼으면 사용자가 필요한 정보를 놓칠 위험이 있으므로, 별도 URL과 별도 대표본을 유지하는 쪽에 무게를 두는 것이 합리적입니다.
판단할 때는 다음 질문을 사용하세요.
- 한 국가의 페이지를 다른 국가 사용자에게 보여줘도 구매 판단이 달라지지 않는가?
- 현지 가격·세금·배송·재고 정보가 처음 방문한 사용자에게 실제로 보이는가?
- 국가 선택을 하지 않은 상태에서도 해당 URL의 조건이 명확한가?
- 국가별 URL을 없애면 고객지원·광고·공유 링크에서 특정 거래 조건을 직접 안내하기 어려워지는가?
- 현지 정보를 별도 페이지로 유지할 만큼 지속적으로 갱신할 운영 체계가 있는가?
이 질문들은 Google의 중복 판정 공식을 재현하려는 것이 아닙니다. 잘못 통합했을 때 잃는 사용자 가치와 유지 비용을 비교하는 운영 기준입니다. 가격 하나가 다르다고 독립 색인이 보장되지도 않고, 설명이 같다고 배송 차이를 무시해도 되는 것도 아닙니다.
별도 대표본으로 운영하기로 했다면 현지 조건을 실제 페이지에 명확히 제공하세요. 단지 중복을 피하려고 의미 없는 문장을 추가하는 대신, 해당 국가 고객이 주문 전에 알아야 할 정보를 보강하는 편이 목적에 맞습니다.
반대로 유사한 영어 지역 페이지의 검색 대표본만 통합하기로 했다면 /en-gb/item-a를 계속 제공하면서 canonical은 선호 영어 페이지로 정할 수 있습니다. 이 경우 지역별 URL의 존속과 접근성을 유지하고 대응 hreflang을 관리하는 설계입니다. URL 자체를 없애는 작업과는 다릅니다. (developers.google.com)
국가별 페이지를 정말 폐기한다면 대응하는 통합 페이지로 영구 리디렉션하는 방식이 맞습니다. canonical만 추가해서는 기존 URL을 없애는 운영 목적을 달성한 것이 아닙니다. Google 역시 중복 페이지 폐기와 대표본 선언을 구분합니다. (developers.google.com)
4. 불완전한 번역: ‘미완료’라는 표시만으로 결정하지 않는다
번역이 덜 됐다는 말에는 서로 다른 상태가 섞여 있습니다. Google은 주요 본문이 같은 언어로 남고 메뉴·머리말·꼬리말 같은 주변 문구만 번역된 경우를 중복으로 볼 수 있다고 설명합니다. 따라서 /ko/ 경로나 한국어 메뉴만으로 독립적인 한국어 문서라고 판단해서는 안 됩니다. (developers.google.com)
실무에서는 다음처럼 나누어 검토하는 것이 좋습니다.
첫째, 핵심 정보는 한국어이고 일부 제품명·인용문만 영어인 경우입니다. 해당 한국어 사용자에게 필요한 설명과 행동 안내가 충분하다면 일부 미번역만으로 영어 대표본에 합칠 이유는 약합니다. 모든 문자열의 번역 여부보다 구매·이용에 필요한 내용을 이해할 수 있는지 먼저 확인하세요.
둘째, 메뉴만 한국어이고 상품 설명과 이용 조건은 영어인 경우입니다. 번역 완료 전 공개를 미루거나, 실질적인 영어 중복본으로 처리할지 검토할 수 있습니다. 다만 한국 전용 배송·판매 조건이 중요한 독립 정보라면, 번역이 부족하다는 이유로 영어 글로벌 페이지에 합쳐 그 정보까지 묻어 버리는 것은 적절하지 않을 수 있습니다. 이때는 핵심 거래 정보를 먼저 번역하는 것이 우선 과제입니다.
셋째, 번역 오류 때문에 이용자가 잘못 주문하거나 조건을 오해할 수 있는 경우입니다. canonical은 번역 품질을 고치는 장치가 아닙니다. 검색 공개를 보류할지, 본문을 수정할지, 해당 시장의 서비스를 아직 제공하지 않을지를 먼저 결정해야 합니다.
공개 페이지를 의도적으로 검색에서 제외하려고 noindex를 검토할 수는 있지만, 이는 중복본의 대표를 정하는 canonical과 다른 목적입니다. 검색 제외와 해당 페이지의 정상적인 검색 진입점 유지를 동시에 기대해서는 안 됩니다. Google도 대표 URL 선택을 위해 noindex를 사용하는 방식을 권장하지 않습니다. (developers.google.com)
번역률 ‘몇 퍼센트 이상’ 같은 내부 기준을 Google의 공식 규칙처럼 사용하지 마세요. 검수표에는 주요 설명, 가격 조건, 배송·반품, 오류 메시지처럼 사용자가 행동하는 데 필요한 항목을 넣는 편이 낫습니다.
5. 자동 국가 리디렉션: 태그보다 먼저 접근성을 확인한다
각 URL에 태그가 완벽해도 접속 즉시 다른 국가로 이동한다면, 원래 URL에서 의도한 페이지를 확인하기 어렵습니다. Google은 지역 적응형 사이트의 모든 변형을 수집·색인하지 못할 수 있다고 안내합니다. Googlebot은 보통 미국에서 접속하고 Accept-Language 헤더 없이 요청하지만, 모든 접속이 미국에서 발생한다고 단정해서도 안 됩니다. 지역 적응형 페이지의 크롤링 설명을 참고하세요. (developers.google.com)
권장하는 운영 방향은 명시적으로 선택한 국가·언어 URL을 직접 열 수 있게 하고, 다른 버전은 선택지로 제안하는 것입니다. 한국 IP에서 영어 페이지를 열었다고 한국어 페이지로 강제 이동시키기보다 국가·언어 선택 링크를 제공하세요. Google도 추정 언어에 따른 자동 이동을 피하고 사용자가 버전을 선택할 수 있게 하도록 안내합니다. (developers.google.com)
여기에도 예외와 구분이 필요합니다. 사용자가 직접 국가 변경 버튼을 눌러 이동하는 것과, IP만 보고 기존 선택을 덮어쓰는 것은 같은 상황이 아닙니다. 이미 선택한 국가를 기억하더라도 사용자가 명시적인 다른 국가 URL을 열었을 때 그 선택을 존중하는 설계를 우선 검토하세요. 실제 거래 제한이 있다면 페이지 열람과 주문 가능 여부의 통제를 분리할 수 있는지도 살펴볼 만합니다.
x-default는 지정된 언어·지역과 일치하지 않는 사용자를 위한 기본 대체 URL입니다. 국가 선택 페이지 등을 지정할 수 있지만, 차단된 국가 페이지를 크롤링 가능하게 만드는 장치나 canonical의 대체재는 아닙니다. hreflang과 x-default 지침을 참고하세요. (developers.google.com)
핵심 포인트 ‘URL이 존재한다’, ‘그 URL에 직접 접근할 수 있다’, ‘검색 대표본으로 선택된다’, ‘특정 지역 검색에서 적절한 버전이 제공된다’는 각각 다른 점검 항목입니다. 어느 하나만 확인하고 국제 SEO 설정이 정상이라고 결론내리지 마세요.
넥스트티는 이런 판단을 태그만 보고 내리지 않습니다. 선언된 canonical과 hreflang, 실제 응답 헤더, 렌더링 이후의 결과를 따로 수집해 서로 어긋나는 지점을 먼저 찾습니다. 어떤 URL이 대표본으로 선택될지는 저희가 정할 수 없습니다. 다만 선언과 실제가 다른 페이지는 목록으로 뽑아낼 수 있고, 그 목록이 고칠 순서를 정해 줍니다.
크롤링·색인 전반의 점검 순서는 크롤링·색인부터 Core Web Vitals까지에 정리해 두었습니다.
6. 실무 점검 순서와 확인 방법
1단계: 템플릿별 현황표를 만든다
홈 하나만 검사하지 말고 상품, 카테고리, 배송 안내, 회사 소개 등 서로 다른 목적의 페이지를 표본으로 고르세요. URL별 주요 언어, 대상 국가, 거래 조건, 선언 canonical, hreflang 대상, 응답 상태, 검색 공개 의도를 기록합니다. 기존 유입이 중요한 페이지도 표본에 포함하면 변경 우선순위를 정하기 쉽습니다.
2단계: 태그보다 실제 응답을 확인한다
로그인과 기존 쿠키가 없는 상태에서 각 국가 URL을 직접 요청하세요. 가능한 범위에서 접속 국가, Accept-Language의 유무, 기존 국가 선택 쿠키를 달리해 다음을 비교하는 방식이 유용합니다.
- 최초 응답과 최종 도착 URL
- 리디렉션의 반복 여부와 이동 중 상품 경로 보존 여부
- 표시되는 주요 언어·통화·배송 조건
- 원본 응답과 렌더링 이후의 canonical·hreflang
CDN이나 개인화 설정이 있다면 이 조건별 결과도 함께 기록하세요. 브라우저에서 한 번 정상적으로 보였다는 사실만으로 모든 접근 조건을 검증했다고 보지는 않는 것이 좋습니다.
3단계: 페이지별 목표 구조를 확정한다
별도 언어·국가 대표본을 유지하는 예시 구조는 다음과 같습니다.
| 페이지 | 목표 canonical | 대상 표기 예시 |
|---|---|---|
/ko-kr/item-a |
자기 자신 | ko-KR |
/en-us/item-a |
자기 자신 | en-US |
/en-gb/item-a |
자기 자신 | en-GB |
/ja-jp/item-a |
자기 자신 | ja-JP |
이 표는 별도 대표본을 선택한 경우의 예시이지 모든 국가 페이지에 적용할 의무는 아닙니다. 같은 언어의 중복 지역본을 대표화하는 예외는 별도 규칙으로 관리하세요.
hreflang에는 자신과 대응 버전을 포함하고 반환 링크를 점검해야 합니다. 실제 태그에는 완전한 URL을 사용하며, 일본어는 ja, 영국 지역은 GB처럼 지원되는 언어·지역 코드를 확인하세요. 서로 다른 상품이나 상세 페이지와 홈페이지를 무리하게 대체 버전으로 묶지 않는 것도 중요합니다. (developers.google.com)
4단계: 대표화 신호와 공개 의도를 맞춘다
HTML과 HTTP 헤더가 서로 다른 canonical을 내보내지 않는지, JavaScript가 설정을 덮어쓰지 않는지 확인하세요. 사이트맵·내부 링크도 의도한 대표 URL과 일관되게 관리합니다. 다만 같은 언어의 지역 중복본을 유지하는 설계에서는 지역 선택 링크와 hreflang의 역할을 일반적인 대표 URL 링크와 구분해야 합니다. (developers.google.com)
운영 점검표에는 대표 대상이 다시 원래 페이지로 이동하는 구조, 폐기된 URL이 남은 연결, 검색 공개를 원하면서 접근을 막은 설정을 별도 오류 항목으로 두는 것이 좋습니다.
5단계: Search Console에서 선언과 결과를 구분한다
URL 검사 도구의 색인된 데이터에서 사용자 선언 canonical과 Google 선택 canonical을 비교하세요. 마지막 크롤링 시점도 함께 확인해야 수정 전 상태를 현재 결과로 오해하지 않습니다. 실시간 테스트는 현재 접근·렌더링 상태 확인에 도움이 되지만, 최종 canonical 선택을 예측하거나 색인을 보장하지는 않습니다. (support.google.com)
6단계: 변경 후에는 여러 결과를 함께 비교한다
변경 날짜와 적용 템플릿을 기록하고, 재수집 후 선택 canonical 및 의도한 검색 진입점이 어떻게 달라졌는지 관찰하세요. 국가별 검색 실적만 보지 말고 방문자가 도착한 페이지의 언어·통화·배송 조건이 맞는지도 함께 검수하는 것이 좋습니다. 복구까지 걸리는 기간이나 유입 증가율은 사전에 확정하지 마세요.
최종 판단 기준은 간단합니다. 정상적인 번역본은 언어별 검색 진입점을 살리고, 같은 언어의 지역본은 사용자 가치와 중복 관계를 따로 평가하며, 실제로 폐기할 URL에만 서비스 통합을 적용하세요. 그리고 강제 리디렉션이 그 설계를 무너뜨리지 않는지 확인해야 합니다.
- What is URL Canonicalization | Google Search Central | Documentation | Google for Developers (developers.google.com)
- How to specify a canonical URL with rel="canonical" and other methods (developers.google.com)
- Managing multi-regional and multilingual sites (developers.google.com)
- Tell Google about localized versions of your page (developers.google.com)
- How Google crawls locale-adaptive pages (developers.google.com)
- URL Inspection tool (support.google.com)