SEO

hreflang

By Jake Luo · Published 2026년 7월 23일

hreflang은 페이지의 특정 버전이 어떤 언어와 지역을 대상으로 쓰였는지를 검색 엔진에 알려 주는 주석으로, 검색하는 사람에게 그를 위한 버전이 제공되도록 합니다. 이는 타겟팅 신호이지 순위 상승 요인이 아닙니다 — 여러분의 번역본 중 어느 것이 노출될지를 결정할 뿐, 그 페이지가 애초에 노출될 자격이 있는지는 전혀 결정하지 않습니다.

hreflang이 실제로 하는 일

같은 페이지가 여러 언어로 존재할 때, 검색 엔진은 두 가지 질문에 부딪힙니다: 이것들이 같은 페이지인가, 그리고 이 특정 검색자에게는 어느 것을 보여 줘야 하는가? hreflang은 이 둘 모두에 답합니다. 버전들을 같은 검색어를 두고 경쟁하는 거의 중복된 페이지가 아니라 서로의 번역본으로 묶어 주고, 각각에 그것이 쓰인 대상 청중을 표시해 줍니다. 이것이 없으면 검색 엔진은 추측할 수밖에 없고, 눈에 띄는 증상은 상파울루의 검색자가 영어 페이지에 도착했다가 떠나 버리는 것입니다.

hreflang이 하지 않는 일을 정확히 짚어 둘 가치가 있습니다. hreflang은 페이지를 순위에 오르게 하지 않고, 캐노니컬 태그처럼 순위 신호를 통합해 주지도 않으며, 아무도 검색하지 않는 번역본을 구해 주지도 않습니다. 페이지는 먼저 자신의 언어에서 스스로 순위를 벌어야 합니다; hreflang은 이미 경쟁력 있는 페이지 중 올바른 버전이 노출되도록 확인해 줄 뿐입니다. 이 구분이 바로, 아무 순위도 없는 사이트를 번역해도 아무것도 만들어지지 않는 이유입니다 — 애초에 번역할지 말지에 대한 결정은 SEO를 위해 웹사이트를 번역해야 할까요에서 다룹니다.

hreflang은 어떻게 구현하는가

이를 선언할 수 있는 유효한 위치는 세 곳이며, 사이트마다 섞어 쓰지 않고 정확히 하나만 고릅니다. 무엇을 고르든 코드와 상호 참조에 관한 규칙은 동일하게 적용됩니다.

  • head 안의 링크 태그 — 버전마다 하나씩의 alternate link 요소를 두며, 모든 버전에 존재해야 합니다. 가장 흔한 방식이며, 라우팅 테이블에서 생성하기도 가장 쉽습니다.
  • HTTP Link 헤더 — 같은 정보를 응답 헤더로 보냅니다. 태그를 넣을 head가 없는 PDF 같은 비HTML 파일에는 이 방법을 씁니다.
  • XML 사이트맵 항목 — 사이트맵의 각 URL이 자신의 대체 버전들을 나열합니다. 수천 개 페이지가 아니라 파일 하나에 주석을 모아 둘 수 있어 대규모 사이트에 유용합니다.
  • x-default 값 — 여러분이 타겟팅하지 않는 언어의 검색자를 위한 대체값으로, 대개 기본 언어 페이지나 언어 선택 페이지를 가리킵니다. 선택 사항이지만, 아무것도 일치하지 않을 때 누가 무엇을 받을지에 대한 모호함을 없애 줍니다.

값은 ISO 639-1 언어 코드이며, 그 뒤에 선택적으로 ISO 3166-1 Alpha 2 지역 코드를 붙입니다 — en, pt-br, zh-Hans. 언어만 있어도 유효하지만, 지역만으로는 유효하지 않습니다. 모든 버전은 다른 모든 버전과 *자기 자신*을 참조해야 하며, 그 참조들은 상호적이어야 합니다: A 페이지가 B를 자신의 스페인어 버전이라고 주장하는데 B가 한 번도 A를 다시 가리키지 않는다면, 검색 엔진은 그 주장을 확인되지 않은 것으로 보고 무시합니다.

hreflang이 잘못되는 지점

거의 모든 실패는 편집상의 문제가 아니라 기계적인 문제이며, 그래서 hreflang 문제는 훌륭한 번역에서도 살아남고 대개 출시하고도 한참 지나서야 발견됩니다.

  • 단방향 주석 — 단연 가장 흔한 오류입니다. 반환 링크는 양쪽에서 모두 확인되어야 하며, 그렇지 않으면 클러스터 전체가 버려집니다.
  • 지어냈거나 잘못 맞춘 코드 — en-uk은 유효하지 않습니다, 영국의 지역 코드는 gb이기 때문입니다. 형식이 잘못된 값 하나가 그 주석을 조용히 무효로 만듭니다.
  • URL 토큰이 곧 언어 태그라고 가정하기 — 사이트가 /pt 경로에서 브라질 포르투갈어를 서비스하면서 pt-BR로 주석을 붙이는 것은 얼마든지 정상입니다. 경로에서 태그를 유추하는 것은 잘못된 라벨의 조용한 원인입니다.
  • 리디렉션되거나, 404이거나, noindex가 붙은 URL을 가리키기 — 대상은 살아 있고 색인 가능한 버전이어야 하며, 그렇지 않으면 신호가 버려집니다.
  • 브라우저 언어로 방문자를 자동 리디렉션하기 — 하나의 버전으로 튕겨 나간 크롤러는 그것이 안내받은 다른 버전에 결코 도달하지 못하므로, 이는 주석 전체를 무력화합니다.

FAQ

hreflang은 순위 요인인가요?
아닙니다. 어떤 버전의 순위를 끌어올리는 신호가 아니라, 주어진 검색자에게 어느 언어 버전을 보여 줄지 결정하는 타겟팅 신호입니다. 페이지는 여전히 자신의 언어 안에서 일반적인 기준으로 경쟁력을 갖춰야 합니다. hreflang에서 얻는 이득은 잘못된 언어로 노출되는 횟수가 줄고 클릭률이 좋아지는 것이며, 이는 실제로는 순위 개선이 아니면서도 종합 리포트에서는 순위 개선처럼 보일 수 있습니다.
hreflang을 쓰면서도 캐노니컬 태그가 여전히 필요한가요?
네, 둘은 서로 다른 일을 합니다. 캐노니컬은 하나의 언어 버전 안에서 중복을 해결하고, hreflang은 서로 다른 언어 버전들을 이어 줍니다. 흔한 실수는 모든 번역본의 캐노니컬을 영어 페이지로 향하게 하는 것인데, 이는 검색 엔진에게 번역본들을 아예 색인하지 말라고 말하는 셈이 되어 hreflang 작업 전체를 무효로 만듭니다. 각 버전은 자기 자신을 캐노니컬로 삼아야 합니다.
x-default는 무엇에 쓰이나요?
다른 어떤 버전도 검색자의 언어나 지역과 일치하지 않을 때 보여 줄 페이지를 표시합니다 — 보통은 기본 언어 페이지, 언어 선택 페이지가 있다면 그 페이지입니다. 선택 사항이지만, 몇 개 언어만 타겟팅하면서 그 밖의 모든 곳에서 트래픽을 받는 사이트라면, 이는 의도된 대체 경로와 검색 엔진이 대신 골라 버리는 것의 차이를 만듭니다.
hreflang이 언어 간 중복 콘텐츠 문제를 해결해 주나요?
서로 다른 언어의 콘텐츠는 애초에 중복 콘텐츠가 아니므로 고칠 것이 없습니다. hreflang이 막아 주는 것은 검색 엔진이 번역본들을 서로 바꿔 쓸 수 있는 것처럼 취급해 잘못된 것을 고르는, 그와 관련된 문제입니다. 같은 언어 안에서 진짜로 중복된 콘텐츠 — 거의 동일한 영어로 된 미국판과 영국판 페이지 — 야말로 hreflang이 구분을 실질적으로 도와주는 경우입니다.
Related terms
프로그래매틱 SEO(pSEO)내부 링크스키마 마크업엔티티 SEO

An AI growth team that runs this for you

AgentCeres is a managed AI marketing team — you approve what ships. 14-day free trial, from $19/month.

Start free trialBrowse the glossary