본문 바로가기
SEO·GEO 용어사전

캐노니컬 태그 (Canonical Tag)

마지막 업데이트
선호 출처로 추가

캐노니컬 태그는 같거나 매우 비슷한 페이지가 여러 URL로 열릴 때, 검색엔진에 선호하는 대표 주소를 알려 주는 HTML 요소입니다. 같은 상품이나 글에 여러 주소가 생겼다면 그중 어떤 URL을 검색에 보여 주고 싶은지 표시합니다.

검색엔진은 태그뿐 아니라 페이지 내용과 리디렉션, 사이트맵, 내부 링크도 함께 검토합니다. 따라서 사이트가 제안한 주소와 검색엔진이 실제로 선택한 대표 주소는 다를 수 있습니다.

캐노니컬 태그와 대표 URL의 관계

캐노니컬 URL은 검색엔진이 유사한 페이지 중 대표로 선택한 주소입니다. 캐노니컬 태그는 그 선택에 참고하도록 사이트 운영자가 제공하는 코드이며, HTML의 <head> 안에 넣습니다.

<link rel="canonical" href="https://example.com/product/green-bag">

이 예시는 현재 페이지의 대표 주소로 https://example.com/product/green-bag을 제안합니다. Google은 캐노니컬 태그를 강한 신호로 사용합니다. 다만 반드시 따라야 하는 명령은 아니므로 다른 정보가 태그와 어긋나면 별도의 URL을 대표로 고를 수 있습니다.

중복 URL이 생기는 원인

페이지를 따로 작성하지 않아도 사이트 기능이나 주소 설정 때문에 중복 URL이 생깁니다.

  • 정렬이나 필터 기능이 같은 콘텐츠의 주소에 매개변수를 붙입니다.
  • 광고와 뉴스레터의 추적 코드가 URL 뒤에 추가됩니다.
  • HTTP와 HTTPS, www가 있는 주소와 없는 주소가 함께 열립니다.
  • 같은 글을 인쇄용 페이지나 여러 카테고리 경로로 제공합니다.
  • 모바일 사이트를 별도로 구현하면서 유사한 페이지가 생깁니다.

예를 들어 아래 주소들은 같은 상품을 보여 줄 수 있습니다.

https://example.com/product/green-bag
https://example.com/product/green-bag?sort=popular
https://example.com/product/green-bag?utm_source=newsletter

이처럼 같은 상품으로 연결되는 주소가 여러 개라면 캐노니컬 태그로 선호하는 대표 주소를 알릴 수 있습니다. 다른 언어로 번역한 페이지는 보통 중복으로 보지 않습니다. 번역 페이지를 원문 URL 하나로 모으기보다 각 언어의 대표 URL을 유지하고, hreflang으로 언어별 페이지의 관계를 표시합니다.

세 개의 유사 URL이 canonical 태그로 하나의 대표 URL을 가리키는 구조
여러 URL이 같은 콘텐츠를 보여 줄 때 canonical로 검색엔진에 대표 URL을 알릴 수 있습니다.

대표 URL 설정 기준

대표로 지정할 페이지가 정상적으로 열리고 검색에 제공할 수 있는 상태인지 먼저 확인합니다.

  1. 대표 URL이 200 응답을 반환하는지 확인합니다.
  2. 대표 페이지에 noindex가 없는지 확인합니다.
  3. 실제 운영하는 HTTPS 주소를 사용합니다.
  4. /product/green-bag 같은 상대 경로보다 https://example.com/product/green-bag처럼 전체 절대 URL을 적습니다.
  5. 한 페이지에서 서로 다른 canonical을 여러 개 출력하지 않도록 합니다.
  6. 태그를 유효한 HTML의 <head> 안에 둡니다.
  7. 내부 링크와 사이트맵에도 같은 대표 URL을 사용합니다.

PDF처럼 HTML 태그를 넣을 수 없는 파일은 HTTP 응답 헤더로 canonical을 전달할 수 있습니다. Google 웹 검색은 아래 방식을 지원합니다. 네이버는 HTML의 <head>에 넣는 태그를 안내하므로 두 방식을 동일하게 지원한다고 가정하지 않습니다.

Link: <https://example.com/guide>; rel="canonical"

WordPress와 쇼핑몰 CMS는 플러그인이나 템플릿이 태그를 자동으로 만들기도 합니다. 코드를 추가하기 전에 이미 어떤 태그를 출력하고 있는지 확인합니다. 여러 도구가 서로 다른 대표 URL을 선언하면 신호가 충돌합니다.

캐노니컬, 리디렉션, noindex의 차이

목적처리 방법사용자가 보는 결과
여러 유사 URL을 유지하면서 대표 주소 제안캐노니컬 태그접속한 URL에 그대로 머뭅니다.
이전 URL을 폐기하고 새 주소로 이동301 또는 308 리디렉션새 URL로 이동합니다.
페이지를 검색결과에서 제외noindex주소를 직접 열면 페이지를 이용할 수 있습니다.
삭제한 페이지의 종료 상태 전달404 또는 410페이지가 없다는 응답을 받습니다.

사용자까지 새 주소로 보내야 한다면 리디렉션을 설정합니다. 각 URL을 계속 이용하게 하면서 검색에 보여 줄 대표를 제안하려면 캐노니컬 태그를 검토합니다.

noindex는 해당 페이지를 검색에서 제외하라는 지시입니다. 중복 페이지의 신호를 대표 URL에 모으려는 목적이라면 canonical을 사용합니다. 사이트맵도 대표 URL을 알리는 신호지만 캐노니컬 태그보다 약합니다. 두 설정이 어긋나지 않도록 같은 대표 URL을 지정합니다.

Google이 다른 대표 URL을 선택한 경우

Search Console에서 〈사용자가 선언한 표준 URL〉과 〈Google이 선택한 표준 URL〉이 다를 수 있습니다. 태그의 문법만 다시 확인할 것이 아니라 다른 신호가 같은 주소를 가리키는지 살펴봐야 합니다.

예를 들어 기본 주소를 대표로 선언했는데 내부 링크와 사이트맵에는 ?sort=popular이 붙은 주소를 주로 사용한다면, 먼저 이 주소들을 일치시킵니다. 그 밖에 대표 페이지 자체에 문제가 없는지도 점검합니다.

  • 대표 URL이 리디렉션되거나 404, 5xx 응답을 반환하는지 확인합니다.
  • 대표 페이지에 noindex가 있거나 robots.txt가 접근을 막는지 확인합니다.
  • 대표 페이지와 중복 페이지의 내용이 실제로 충분히 비슷한지 대조합니다.
  • HTTP와 HTTPS, www와 마지막 슬래시 표기가 일관적인지 확인합니다.
구글 서치콘솔 URL 검사에서 사용자 선언 캐노니컬과 구글 선택 캐노니컬을 비교하는 화면(해당사항 없음)
캐노니컬 문제는 사용자가 선언한 URL과 Google이 선택한 URL을 함께 확인해야 합니다.

실제로 선택된 대표 URL 확인하기

Search Console의 URL 검사에 전체 URL을 입력하고, 색인된 페이지의 검사 결과에서 두 항목을 비교합니다. 라이브 테스트는 Google이 선택할 대표 URL을 예측하지 못합니다.

항목의미
사용자 선언 표준 URL사이트에서 대표 주소로 제안한 URL입니다.
Google 선택 표준 URLGoogle이 여러 신호를 검토해 실제로 선택한 대표 주소입니다.

두 주소가 같고 의도한 대표 페이지가 색인됐다면 설정이 목적에 맞게 반영된 것입니다. 중복 URL의 〈적절한 표준 태그가 포함된 대체 페이지〉 상태도 의도한 통합 결과일 수 있습니다.

네이버도 HTML <head>의 canonical 태그로 선호 URL을 확인합니다. 다만 Search Console은 Google의 처리 결과를 보여 주므로, 이 결과만으로 네이버에서도 같은 URL을 선택했다고 판단할 수는 없습니다.

자주 묻는 질문

캐노니컬 태그를 넣으면 Google이 반드시 그 URL을 선택하나요?

Google은 태그 외에도 리디렉션과 사이트맵, 내부 링크, 페이지 내용을 함께 검토합니다. 다른 신호가 충돌하면 선언한 주소와 다른 URL을 선택할 수 있습니다.

모든 페이지에 자기 자신을 가리키는 캐노니컬이 필요한가요?

필수는 아닙니다. 자기 참조 canonical은 현재 페이지가 대표라는 뜻을 명시하는 방법입니다. CMS가 자동으로 생성한다면 임시 주소나 다른 페이지가 아니라 실제로 사용할 대표 URL을 가리키는지 확인합니다.

캐노니컬 태그와 301 리디렉션은 같은가요?

캐노니컬은 사용자를 이동시키지 않고 대표 주소를 제안합니다. 301 리디렉션은 사용자와 검색로봇을 새 URL로 보냅니다.

캐노니컬과 noindex를 함께 사용해도 되나요?

중복 URL을 대표 페이지에 통합하려는 목적이라면 noindex를 함께 넣지 않는 편이 좋습니다. Google은 대표 URL을 선택하게 할 목적으로 noindex를 사용하지 말라고 안내합니다. 검색에서 해당 페이지를 제외하는 것이 목적이라면 noindex를 적용합니다.

다른 도메인을 캐노니컬 URL로 지정할 수 있나요?

가능합니다. 다른 도메인에 같거나 매우 비슷한 콘텐츠가 있을 때 그 URL을 대표로 제안할 수 있습니다. 다만 Google이 외부 URL을 선택하면 현재 페이지 대신 그 주소가 대표가 되므로, 어느 사이트의 페이지를 검색에 남길지 정한 뒤 설정합니다.

함께 알아두면 좋은 용어

  • 표준 URL: 검색엔진이 유사 URL 가운데 대표로 선택한 주소
  • 중복 콘텐츠: 같거나 매우 비슷한 내용이 여러 URL에 존재하는 상태
  • 리디렉션: 사용자와 검색로봇을 다른 URL로 이동시키는 처리
  • noindex: 페이지를 검색 색인에서 제외하라는 지시
  • 사이트맵: 검색엔진에 중요한 대표 URL 목록을 알려 주는 파일
  • URL 검사: Google이 선택한 대표 URL과 색인 상태를 확인하는 기능

참고 문서