이 글에서 배울 수 있는 것

  • 다국어 사이트가 중복 콘텐츠 위험에 특히 취약한 이유
  • hreflang 태그의 기본 원리와 작동 방식
  • 실무에서 자주 발생하는 hreflang 구현 실수
  • 실제 코드로 보는 올바른 작성법과 잘못된 작성법
  • 다국어 페이지 발행 전 확인할 체크리스트

① 다국어 SEO가 특히 어려운 이유

한국어와 영어로 같은 내용을 담은 페이지를 각각 만들면, 검색엔진 입장에서는 두 페이지가 '같은 내용의 다른 언어 버전'인지 '중복된 콘텐츠'인지 구분하기 어렵습니다. 이 구분이 잘못되면 두 페이지 모두 순위에서 불이익을 받을 수 있습니다.

핵심 포인트

hreflang은 "이 페이지는 다른 언어의 같은 내용이니, 사용자의 언어·지역에 맞는 버전을 보여주세요"라고 검색엔진에게 명확히 알려주는 신호입니다.

⚠️ 주의

hreflang이 없으면 구글이 임의로 어떤 버전을 대표 페이지로 판단해버릴 수 있습니다. 한국 사용자에게 영어 페이지가 노출되는 것처럼 의도치 않은 결과로 이어질 수 있습니다.

② hreflang이 하는 일과 기본 원리

hreflang은 페이지 간 관계를 알려주는 태그일 뿐, 번역이나 자동 리디렉션을 해주지는 않습니다. 각 언어 페이지가 서로를 가리키도록 태그를 넣어야 정상적으로 작동합니다.

구성 요소설명
언어 코드ISO 639-1 표준 (예: ko, en, ja)
지역 코드(선택)ISO 3166-1 표준 (예: KR, US, JP)
x-default어떤 언어에도 해당하지 않는 사용자에게 보여줄 기본 페이지 지정
상호 참조모든 언어 버전이 서로를 포함해 태그를 넣어야 함

③ 흔한 구현 실수

hreflang은 문법이 간단해 보이지만, 실제 구현에서는 사소한 실수로 전체가 무효화되는 경우가 많습니다.

  • 상호 참조 누락: A 페이지는 B를 가리키는데 B 페이지는 A를 가리키지 않으면 hreflang 전체가 무시됩니다.
  • 자기 자신 미포함: 각 페이지는 자기 자신을 가리키는 hreflang도 함께 포함해야 합니다.
  • 언어 코드 오타: "kr" 대신 "ko"를 써야 하는 것처럼 국가 코드와 언어 코드를 혼동하는 경우가 흔합니다.

확인하는 법

구글 서치 콘솔의 국제 타겟팅 보고서나 온라인 hreflang 검증 도구로 상호 참조가 정상적으로 연결되어 있는지 주기적으로 확인해야 합니다.

④ 코드로 보는 좋은 예 vs 나쁜 예

같은 목적이라도 태그를 어떻게 작성하느냐에 따라 실제로 작동하는지가 갈립니다.

✗ 나쁜 예

<!-- 한국어 페이지에만 넣고 영어 페이지에는 넣지 않음 --> <link rel="alternate" hreflang="en" href="https://example.com/en/" />

문제점: 상호 참조가 없어 검색엔진이 이 관계를 신뢰하지 않고 무시할 수 있습니다.

✓ 좋은 예

<!-- 한국어 페이지(ko)에 --> <link rel="alternate" hreflang="ko" href="https://example.com/ko/" /> <link rel="alternate" hreflang="en" href="https://example.com/en/" /> <link rel="alternate" hreflang="x-default" href="https://example.com/en/" />

포인트: 자기 자신을 포함한 모든 언어 버전을 양쪽 페이지에 동일하게 넣고, x-default로 기본값도 지정했습니다.

⑤ 구현 체크리스트

다국어 페이지를 발행하기 전 아래 순서로 점검하면 흔한 실수를 대부분 걸러낼 수 있습니다.

  1. 모든 언어 버전 페이지에 서로를 가리키는 hreflang이 들어있는지 확인합니다.
  2. 각 페이지가 자기 자신도 포함하고 있는지 확인합니다.
  3. 언어·지역 코드가 ISO 표준과 일치하는지 확인합니다.
  4. 필요하다면 x-default를 지정합니다.
  5. 서치 콘솔이나 검증 도구로 정상 작동 여부를 확인합니다.

⑥ 자주 묻는 질문 (FAQ)

hreflang을 설정하지 않으면 어떻게 되나요?

검색엔진이 어떤 언어 버전을 어느 지역 사용자에게 보여줘야 할지 판단하지 못해, 엉뚱한 언어 페이지가 노출되거나 언어별 페이지들이 서로 중복 콘텐츠로 인식될 수 있습니다. 그 결과 순위가 분산되어 어느 언어 페이지도 제대로 상위 노출되지 못하는 경우가 흔합니다.

언어만 다르고 지역은 상관없어도 hreflang이 필요한가요?

네, 필요합니다. hreflang은 지역뿐 아니라 언어만으로도 지정할 수 있습니다(예: ko, en). 지역 구분이 필요 없다면 언어 코드만 사용하는 것이 오히려 더 간단하고 관리하기 쉽습니다.

번역 페이지가 하나뿐이어도 hreflang을 써야 하나요?

언어 버전이 2개 이상일 때부터 의미가 있습니다. 한국어 페이지 하나만 있다면 hreflang이 필요 없지만, 영어 버전을 추가하는 순간부터 두 페이지 모두에 서로를 가리키는 hreflang 태그를 넣어야 중복 콘텐츠 문제를 피할 수 있습니다.

관련 인사이트

무료 진단

우리 사이트, 기술적으로 문제없이 구성되어 있을까요?

URL만 입력하면 SEO·AEO·GEO 현황을 30초 안에 무료로 진단해 드립니다.

무료 사이트 진단 시작 →