블로그로 돌아가기
HREFLANG 가이드

Hreflang 가이드: 구문, 실수, 모범 사례

Hreflang은 다국어 SEO에서 가장 오류가 발생하기 쉬운 부분입니다. 올바르게 설정하면 특정 로케일 페이지가 목표 지역에서 순위를 얻습니다. 잘못 설정하면 Google이 대체 페이지를 조용히 무시합니다. 중국어 페이지가 미국 검색 사용자에게 표시되고, 영어 페이지가 홍콩에서 순위를 얻으며, 명확한 순위 하락 없이 트래픽이 급감합니다. 이 가이드는 구문, 흔한 실수, 테스트, 그리고 2026년 모범 사례를 다룹니다.

Hreflang이란 무엇이며 왜 중요한가

Hreflang('rel=alternate hreflang'이라고도 함)은 검색 엔진에 어떤 검색 사용자의 결과에 페이지의 어떤 언어 및 지역 버전을 표시할지 알려주는 HTML link 속성입니다. 2011년 Google이 다국어 사이트가 직면한 중복 콘텐츠 문제를 해결하기 위해 도입했습니다. 동일한 콘텐츠를 가진 영어 페이지와 스페인어 페이지가 있으면 Google이 하나를 다른 하나의 중복으로 간주하여 하나만 색인할 수 있습니다. Hreflang은 Google에 '이들은 서로 다른 사용자를 위한 의도적인 대체 페이지이므로 둘 다 색인하고 검색 사용자를 적절히 안내하라'고 알려줍니다.

hreflang이 없으면 'plumber near me'를 검색하는 미국 사용자가 스페인어 페이지를 볼 수 있으며(Google이 해당 쿼리와 관련이 있다고 판단하기 때문에) 스페인어를 읽지 못해 이탈합니다. 올바른 hreflang을 사용하면 Google은 미국 검색 사용자에게 영어 페이지를, 멕시코 검색 사용자에게 스페인어 페이지를 표시합니다. 결과적으로 더 나은 참여, 더 높은 전환, 그리고 로케일 간 잠식이 없습니다.

Hreflang은 다음에 가장 중요합니다: 다국어 서비스 비즈니스(이민자 커뮤니티, 국경을 넘나드는 전문직), 국제 전자상거래, 그리고 동일한 콘텐츠를 여러 언어로 게시하는 모든 사이트. 사이트가 단일 로케일이라면 hreflang은 불필요합니다. Google은 해당 속성 없이도 올바르게 처리합니다.

Hreflang 구문: 명세

Hreflang은 hreflang 값과 함께 link rel=alternate 속성을 사용합니다. 이 값은 ISO 639-1 언어 코드와 선택적 ISO 3166-1 alpha-2 지역 코드를 결합합니다. 예: en(영어, 모든 지역), en-US(영어 미국), zh-CN(중국어 간체, 중국 본토), zh-TW(중국어 번체, 대만), es-MX(스페인어 멕시코), fil-PH(필리핀어 필리핀).

중요: 지역 코드는 대소문자를 구분합니다. zh-CN이 올바르며 zh-cn 또는 zh-cN은 그렇지 않습니다. Google은 잘못된 대소문자를 조용히 무시합니다. ISO 표준에 따라 항상 지역 하위 태그를 대문자로 사용하세요.

완전한 hreflang 구현은 모든 페이지에 세 가지 요소가 필요합니다: (1) 자기 참조 hreflang 태그(페이지가 자체 로케일을 선언), (2) 다른 모든 로케일 버전에 대한 hreflang 태그(대체 페이지), 그리고 (3) 대체 페이지가 검색 사용자와 일치하지 않을 때 표시할 로케일을 가리키는 x-default 태그. 이 중 하나라도 누락되면 구현이 깨집니다.

모든 대체 페이지는 양방향이어야 합니다. 페이지 A(영어)가 페이지 B(중국어)를 대체 페이지로 선언하면 페이지 B는 페이지 A를 대체 페이지로 선언해야 합니다. 반환 태그 누락은 가장 흔한 hreflang 실수입니다. 한쪽이 누락되면 Google은 양방향 모두 무시합니다.

가장 흔한 hreflang 실수 7가지(및 해결 방법)

실수 1 — 잘못된 로케일 코드 대소문자. zh-CN 대신 zh-cn, fil-PH 대신 fil-ph. Google은 잘못된 대소문자의 태그를 조용히 무시합니다. 해결: 항상 지역 하위 태그를 대문자로 사용하세요.

실수 2 — 반환 태그 누락. 페이지 A는 페이지 B를 대체 페이지로 선언하지만 페이지 B는 페이지 A를 선언하지 않습니다. 해결: 모든 대체 페이지는 양방향이어야 합니다. 새 로케일을 추가하면 모든 기존 페이지를 업데이트하여 이를 다시 선언하세요.

실수 3 — x-default 누락 또는 잘못된 설정. x-default가 없으면 Google은 일치하지 않는 검색 사용자에게 표시할 로케일을 추측합니다. 일반적으로 가장 많이 색인된 로케일을 선택하는데, 이는 원하는 것이 아닐 수 있습니다. 해결: x-default를 명시적으로 선언하세요(보통 주요 비즈니스 로케일을 가리킴).

실수 4 — canonical URL과 일치하지 않는 Hreflang URL. /pricing의 canonical이 /pricing인데 hreflang이 /pricing?utm_source=internal을 가리키면 Google은 대체 페이지를 무시합니다. 해결: hreflang URL은 canonical URL과 문자 단위로 일치해야 합니다.

실수 5 — noindex 또는 다른 URL로 canonical 처리된 페이지의 Hreflang. 색인이 차단된 페이지는 hreflang을 선언해서는 안 됩니다. 해결: noindex 라우트, 리디렉션된 라우트, 다른 URL로 canonical 처리된 페이지에서는 hreflang 태그를 생략하세요.

실수 6 — soft-404 또는 '로케일 사용 불가' 페이지로의 Hreflang. '죄송합니다. 이 페이지는 귀하의 언어로 제공되지 않습니다'라는 메시지를 반환하는 URL을 대체 페이지로 선언하지 마세요. 이는 soft 404이며 Google은 양방향 모두 불이익을 줍니다. 해결: 실제 콘텐츠가 있는 대체 페이지만 선언하세요. 페이지가 특정 로케일에 존재하지 않으면 해당 로케일을 대체 페이지로 선언하지 마세요.

실수 7 — 페이지 간 일관성 없는 로케일 변형. 페이지 A는 로케일 en, zh-CN, es를 선언하지만 페이지 B는 en과 zh-CN만 선언합니다. 불일치는 Google을 혼란스럽게 합니다. 해결: 여러 로케일에 존재하는 모든 페이지는 존재하는 모든 로케일을 선언해야 하며, 존재하지 않는 로케일은 선언하지 않아야 합니다.

hreflang 구현을 테스트하는 방법

1단계 — 렌더링된 HTML 검사. 모든 다국어 페이지에서 소스 보기를 하고 head 섹션에서 link rel=alternate 태그를 확인하세요. 자기 참조 태그 하나, 대체 로케일당 태그 하나, x-default 태그 하나가 보여야 합니다. 대소문자, URL 일치, 양방향 태그를 확인하세요.

2단계 — Google Search Console. International Targeting > Country에서 Google은 사이트에서 발견한 hreflang 오류를 보고합니다. 흔한 오류: 반환 태그 누락, 잘못된 로케일 코드, 끊어진 대체 URL. Google이 보고하는 모든 오류를 수정하세요.

3단계 — Ahrefs 또는 Sitebulb 크롤링. 이러한 도구는 대규모로 hreflang 문제를 감지합니다. 수천 페이지에 걸친 양방향 태그 불일치, 끊어진 대체 페이지, 잘못된 로케일 코드. 분기마다 전체 사이트 크롤링을 실행하세요.

4단계 — 수동 SERP 테스트. 다양한 로케일별 기기에서 브랜드 이름을 검색하고(홍콩의 경우 google.com.hk와 같은 Google 국가별 도메인 또는 VPN 사용) 올바른 로케일 버전이 표시되는지 확인하세요. 로케일 잠식(잘못된 지역에서 잘못된 버전 순위)이 보이면 hreflang이 원인일 가능성이 높습니다.

5단계 — Search Console에서 색인 확인. 페이지의 각 로케일 버전에 URL 검사를 사용하여 Google이 모든 대체 페이지를 색인했는지 확인하세요. 로케일 버전이 색인되지 않으면 hreflang이 신호를 올바르게 전달하지 못하는 것입니다.

2026년 Hreflang 모범 사례

모범 사례 1 — 지역별 콘텐츠가 없으면 언어 전용 코드(en, zh, es)를 사용하세요. 콘텐츠가 지역에 따라 실제로 다른 경우(통화, 법적 참조, 어휘)에만 지역 코드(en-US, en-GB, zh-CN, zh-TW)를 사용하세요. 콘텐츠가 동일한데 지역 코드를 과도하게 지정하면 불필요한 대체 페이지가 생성됩니다.

모범 사례 2 — x-default를 주요 비즈니스 로케일(보통 회사 본국의 로케일)로 설정하세요. 미국 비즈니스의 경우 x-default = en 또는 en-US입니다. 영어 버전이 있는 중국 비즈니스의 경우 주요 대상이 중국어라면 x-default = zh-CN, 국제적이라면 en입니다.

모범 사례 3 — 단일 진실 공급원(CMS 또는 웹사이트 빌더)에서 hreflang을 생성하세요. 수천 페이지에 걸쳐 hreflang을 수동으로 유지하면 드리프트가 발생할 수밖에 없습니다. Cogo Site, WordPress + WPML, Shopify의 다국어 기능은 모두 hreflang을 자동 생성합니다. 그렇게 하는 빌더를 선택하세요.

모범 사례 4 — hreflang URL을 깨끗하고 안정적으로 유지하세요. hreflang URL에 쿼리 매개변수, 세션 ID, 추적 매개변수를 포함하지 마세요. 대체 URL이 게시된 후에는 리디렉션 없이 변경하지 마세요. Google의 hreflang 캐시는 다시 구축하는 데 몇 주가 걸립니다.

모범 사례 5 — 로케일 출시, 로케일 제거, 대규모 콘텐츠 마이그레이션 후마다 hreflang을 감사하세요. 드리프트는 발생합니다. hreflang은 다국어 사이트 상태를 알리는 탄광의 카나리아입니다.

Cogo Site가 hreflang을 올바르게 구현하는 방법

Cogo Site는 단일 진실 공급원인 로케일 접두사 URL 라우팅에서 hreflang을 생성합니다. 모든 페이지는 올바른 ISO 대소문자, 양방향 반환 태그, canonical과 일치하는 URL을 가진 자기 참조, 대체, x-default 태그를 자동으로 포함합니다. 태그를 작성할 필요도, 유지 관리할 필요도 없습니다.

로케일을 추가하면 모든 페이지에서 hreflang이 원자적으로 다시 생성됩니다. 기존 페이지에서 새 대체 페이지가 누락되는 기간이 없습니다. 로케일을 제거하면 모든 페이지에서 해당 로케일에 대한 hreflang이 깔끔하게 제거되어 soft 404를 방지합니다.

페이지별 로케일 가시성을 통해 페이지를 영어 전용 또는 중국어 전용으로 표시할 수 있습니다. hreflang은 둘 다 존재하는 경우에만 대체 페이지를 선언하여 'soft-404 대체 페이지' 실수를 방지합니다.

x-default 로케일은 사이트별로 구성할 수 있으며 기본값은 원래 게시 로케일입니다. Hreflang URL은 canonical URL과 동일한 라우팅에서 파생되므로 드리프트될 수 없습니다.

Hreflang 빠른 참조 체크리스트

  • 모든 다국어 페이지에는 자기 참조 + 대체 + x-default 태그가 있습니다
  • 로케일 코드는 대문자 지역 하위 태그를 사용합니다 (zh-cn이 아닌 zh-CN)
  • 모든 대체 항목은 양방향입니다 (페이지 A가 페이지 B를 선언하고 그 반대도 성립)
  • Hreflang URL은 canonical URL과 문자 단위로 일치합니다
  • x-default는 일치하는 로케일이 없는 검색자에게 표시할 로케일을 가리킵니다
  • noindex, 리디렉션 또는 canonical로 대체된 페이지에는 hreflang이 없습니다
  • 소프트 404 또는 '로케일 사용 불가' 페이지로 향하는 hreflang은 없습니다
  • 로케일 변형은 모든 페이지에서 일관됩니다 (누락된 로케일 없음)

자주 묻는 질문

hreflang이란 무엇이며 어떤 역할을 하나요?

Hreflang은 검색 엔진에 어느 검색자의 결과에 어떤 언어 및 지역 버전의 페이지를 표시할지 알려주는 HTML 링크 속성(rel=alternate hreflang)입니다. Hreflang이 없으면 Google은 잘못된 검색자에게 잘못된 로케일 버전을 표시할 수 있습니다. 예를 들어 영어를 사용하는 검색자에게 스페인어 페이지를 보여주어 이탈과 순위 손실을 초래할 수 있습니다. 올바른 hreflang을 사용하면 각 로케일 버전이 대상 사용자층에서 순위를 얻습니다. Hreflang은 동일한 콘텐츠를 여러 언어로 게시하는 모든 다국어 사이트에 필수적입니다.

hreflang 태그를 올바르게 작성하려면 어떻게 해야 하나요?

각 다국어 페이지의 head 섹션에는 세 가지가 필요합니다: (1) 페이지 자체의 로케일을 선언하는 자기 참조 hreflang 태그(예: hreflang='en-US'), (2) 다른 모든 로케일 버전에 대한 hreflang 태그(예: hreflang='zh-CN' href='/zh-CN/pricing'), (3) 일치하는 로케일이 없는 검색자에게 표시할 로케일을 가리키는 x-default 태그(예: href='https://example.com/pricing' hreflang='x-default'). 모든 대체 항목은 양방향이어야 합니다. A가 B를 선언하면 B도 A를 선언해야 합니다. 로케일 코드는 대문자 지역 하위 태그를 사용해야 합니다 (zh-cn이 아닌 zh-CN).

가장 흔한 hreflang 실수는 무엇인가요?

주요 실수: (1) 잘못된 로케일 코드 대소문자 (zh-CN 대신 zh-cn), (2) 반환 태그 누락 (A가 B를 선언하지만 B가 A를 선언하지 않음), (3) x-default 누락 또는 잘못된 x-default, (4) canonical URL과 일치하지 않는 hreflang URL, (5) noindex 페이지의 hreflang, (6) 소프트 404 또는 '로케일 사용 불가' 페이지로 향하는 hreflang, (7) 페이지 간 일관되지 않은 로케일 변형. 이 중 어느 하나라도 구현을 조용히 망가뜨립니다. Google은 알려주지 않고 잘못된 hreflang을 무시합니다. Cogo Site는 구조적으로 hreflang을 올바르게 생성합니다. WordPress + WPML과 같은 주류 솔루션은 이러한 실수를 피하기 위해 세심한 유지 관리가 필요합니다.

hreflang이 올바른지 어떻게 테스트하나요?

다섯 단계: (1) 렌더링된 HTML에서 자기 참조 + 대체 + x-default 태그를 검사합니다, (2) Google Search Console의 국제 타겟팅 보고서에서 오류를 확인합니다, (3) Ahrefs 또는 Sitebulb로 전체 사이트 크롤링을 실행하여 대규모로 양방향 불일치를 감지합니다, (4) 국가별 Google 도메인(google.com.hk, google.com.mx)을 사용하여 SERP를 수동으로 테스트합니다, (5) Search Console의 URL 검사에서 각 로케일 버전이 색인되는지 확인합니다. 로케일 버전이 색인되지 않거나 잘못된 버전이 잘못된 지역에서 순위를 얻는다면 hreflang이 유력한 원인입니다.

hreflang은 Baidu와 Bing에도 도움이 되나요, 아니면 Google에만 해당하나요?

Hreflang은 Google, Bing, Yandex에서 지원됩니다. Baidu는 역사적으로 hreflang을 일관되게 처리하지 못했습니다. 태그를 읽기는 하지만 반영하는 데 시간이 더 걸릴 수 있고, Baidu의 크롤러는 새로운 대체 항목을 발견하는 속도가 느립니다. 특히 Baidu의 경우 Baidu 웹마스터 도구를 통해 중국어 사이트맵을 제출하고 올바른 로케일 접두사 URL 라우팅을 보장하세요. Cogo Site는 네 개의 모든 검색 엔진에서 작동하는 사이트맵과 hreflang을 생성합니다. WPML이 있는 WordPress와 같은 주류 CMS는 올바른 hreflang을 생성하지만 로케일별 사이트맵 구성이 필요합니다.

hreflang을 수동으로 디버깅하는 것을 그만두세요

Cogo Site는 모든 페이지의 모든 로케일에서 모든 hreflang 태그를 올바르게 생성합니다. 무료로 시작하세요 — 카드가 필요하지 않습니다.

관련 다국어 리소스

쿠키를 사용합니다

저희는 쿠키를 사용하여 브라우징 경험을 향상시키고 사이트 트래픽을 분석합니다. 'Accept'를 클릭하시면 쿠키 사용에 동의하는 것으로 간주됩니다. 쿠키 정책에 대해 자세히 알아보기