hreflang 태그란 무엇인가

hreflang 태그는 한 페이지에 여러 언어나 지역 버전이 있을 때, 각 URL이 어떤 언어와 지역의 사용자를 위한 것인지 구글 같은 검색엔진에 알리는 HTML 속성이다. 다국어 사이트의 국제 SEO에서 언어별 페이지를 올바른 사용자에게 노출시키는 표준 수단이다.

이름은 "href"(링크 주소)와 "lang"(언어)의 합성이다. 구글이 공식 문서에서 페이지의 현지화 버전을 알리는 방법으로 안내하는 속성이지만, Ahrefs가 374,756개 도메인을 조사한 결과 구현의 67%에서 오류가 발견될 만큼 실수가 잦다.

hreflang 태그는 어떻게 작성하는가

기본 형태는 <link rel="alternate" hreflang="언어코드" href="URL" />이다. 언어 버전마다 한 줄씩 선언한다.

<link rel="alternate" hreflang="ko" href="https://example.com/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/" />

작성 규칙은 네 가지다. 전부 구글 검색 센터 가이드라인에 명시돼 있다.

  1. 언어 코드는 ISO 639-1, 지역 코드는 ISO 3166-1 Alpha 2를 쓴다. 한국어는 ko, 영국 영어는 en-GB. 지역 코드만 단독으로 쓸 수 없다.
  2. 자기 참조를 포함한다. 현재 페이지 자신을 가리키는 hreflang도 목록에 넣어야 한다.
  3. 상호 참조가 필수다. 페이지 X가 Y를 가리키면 Y도 X를 가리켜야 한다. 한쪽만 선언하면 구글이 무시하거나 잘못 해석할 수 있다.
  4. x-default는 어느 언어에도 일치하지 않는 사용자에게 보여줄 기본 페이지를 지정하는 예약 값이다.

세 가지 구현 방식은 어떻게 다른가

구글이 인정하는 구현 방식은 HTML 태그, XML 사이트맵, HTTP 헤더 세 가지다. 어느 방식이든 효과는 같고, 사이트 규모와 콘텐츠 형태에 따라 고른다.

방식 위치 적합한 경우
HTML link 태그 각 페이지의 <head> 페이지 수가 적고 템플릿 수정이 쉬운 사이트
XML 사이트맵 sitemap.xml 페이지가 많아 개별 수정이 부담스러운 대규모 사이트
HTTP 헤더 서버 응답 헤더 PDF 등 HTML이 아닌 파일

HTML 방식은 위 작성 예시 그대로 <head>에 넣는다. XML 사이트맵 방식은 URL마다 xhtml:link로 대체 버전을 나열한다.

<url>
  <loc>https://example.com/</loc>
  <xhtml:link rel="alternate" hreflang="ko" href="https://example.com/" />
  <xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/" />
</url>

HTTP 헤더 방식은 PDF처럼 <head>가 없는 파일에 쓴다.

Link: <https://example.com/file.pdf>; rel="alternate"; hreflang="ko",
      <https://example.com/en/file.pdf>; rel="alternate"; hreflang="en"

사이트맵 방식은 페이지 코드에 손대지 않고 한 파일에서 관리할 수 있어 유지보수가 쉽다. 대신 언어 버전이 늘어날수록 사이트맵이 빠르게 커진다.

왜 국제 SEO에 중요한가

hreflang은 같은 콘텐츠의 언어 버전들이 서로 경쟁하거나 중복 문서로 취급되는 것을 막는다. 번역 페이지는 구조가 비슷해 hreflang 선언이 없으면 검색엔진이 중복 콘텐츠로 오해할 수 있다.

사용자 언어에 맞는 버전이 노출되면 클릭률과 전환율이 올라간다. 영어 사용자에게 한국어 페이지가 뜨는 것 자체가 이탈 요인이기 때문이다.

AI 검색에서도 효과가 확인된다. Weglot이 130만 건의 인용을 분석한 결과 번역된 웹사이트는 단일 언어 사이트보다 AI Overview 가시성이 327% 높았다. 실제로 "hreflang 태그" 한국어 검색 결과에도 AI Overview가 노출되며, 인용 소스는 정의와 코드 예시를 짧은 단위로 제공한 문서들이었다 (서치폴라리스 자체 조회, 2026-08-12). AI 검색 인용을 노리는 최적화는 GEO 문서에서 다룬다.

자주 하는 실수는 무엇인가

Ahrefs 조사에서 hreflang 구현의 67%가 문제를 갖고 있었다. 구글의 John Mueller가 hreflang을 가장 복잡한 SEO 요소 중 하나로 꼽은 이유다.

  • 상호 참조 누락: A가 B를 가리키는데 B가 A를 가리키지 않는 경우. 가장 흔하고, 선언 전체가 무시될 수 있다.
  • 자기 참조 누락: 현재 페이지를 목록에서 빼먹는 경우.
  • 잘못된 코드: en-UK처럼 ISO에 없는 코드, 또는 지역 코드 단독 사용 (kr만 쓰는 경우. 한국어는 ko다).
  • canonical과의 충돌: hreflang이 가리키는 URL이 canonical이 아닌 URL이면 신호가 엇갈린다. hreflang은 항상 canonical URL을 가리켜야 한다.
  • 번역 안 된 페이지 연결: hreflang은 실제로 해당 언어로 된 페이지를 가리켜야 한다.

제대로 적용됐는지 어떻게 확인하는가

세 가지 방법으로 점검한다.

  1. 소스 직접 확인: 페이지 소스에서 hreflang을 검색해 자기 참조와 상호 참조가 양쪽에 있는지 본다.
  2. Google Search Console: 국가별 노출 데이터로 의도한 지역에 의도한 페이지가 노출되는지 확인한다. 구글 공식 문서의 디버깅 가이드가 오류 유형별 해결책을 안내한다.
  3. 크롤링 도구: Ahrefs Site Audit, Screaming Frog 같은 도구가 상호 참조 누락과 잘못된 코드를 자동 검출한다.

자주 묻는 질문 (FAQ)

서치콘솔에서 "사이트에 hreflang 태그가 없습니다"라고 뜨면 문제인가?

단일 언어 사이트라면 문제가 아니다. hreflang은 언어 버전이 둘 이상일 때만 필요하고, 없다는 표시는 오류가 아니라 상태 안내다. 다국어 사이트인데 이 메시지가 뜬다면 위 세 가지 방식 중 하나로 선언하면 된다.

네이버도 hreflang을 지원하나?

네이버 서치어드바이저는 구글의 국가 타겟팅 같은 기능을 제공하지 않는다. 다만 다국어 사이트의 언어 구분 신호로 hreflang 태그를 참고하므로 선언해 두는 편이 낫다.

<a> 태그의 hreflang 속성과 같은 것인가?

속성 이름은 같지만 역할이 다르다. <a hreflang="en">은 링크가 가리키는 문서의 언어를 표시하는 참고 정보일 뿐이고, 국제 SEO에서 말하는 hreflang은 <head><link rel="alternate"> 선언이다.

참고 자료

우리 브랜드는 AI 답변에 나오고 있을까?

서치폴라리스가 AI 검색 가시성을 진단하고 GEO 실행까지 대행합니다.

GEO 최적화 서비스 보기