영문, 한국어 페이지의 hreflang은 어떻게 설정하나요?

한국어 페이지와 영문 페이지의 <head>에 서로를 가리키는 hreflang 링크를 넣고, 각 페이지에 자기 자신의 링크도 함께 적으면 됩니다. 구글 검색 센터 문서(2025년 12월 갱신)에 따르면 두 페이지가 서로를 가리키지 않을 때 이 태그는 무시됩니다.
hreflang은 무엇을 하는 태그인가요?
같은 내용의 언어별 페이지가 있다는 사실을 구글에 알려 주는 표시입니다. 해외 바이어가 영어로 검색했는데 한국어 페이지가 나오는 상황을 줄이려고 씁니다. 바이어가 보는 화면의 언어를 맞춰 주는 설정이라고 생각하면 이해하기 쉽습니다.
이 태그가 페이지의 언어를 정하지는 않습니다. 같은 구글 문서(2025년 12월 갱신)는 hreflang이나 HTML의 lang 속성으로 언어를 판별하지 않고 알고리즘으로 판별한다고 설명합니다. 그래서 영문 페이지의 본문은 실제로 영어로 쓰여 있어야 합니다. 같은 문서는 본문이 번역되지 않은 채 남아 있는 경우에만 언어별 페이지를 중복으로 본다고 적고 있습니다. 메뉴만 영어로 바꾸고 제품 설명을 한국어로 둔 페이지는 이 경우에 걸릴 수 있습니다.
두 페이지에는 어떤 코드를 넣나요?
한국어 페이지와 영문 페이지 모두에 ko, en, 필요하면 x-default 링크를 똑같이 넣습니다. 아래는 주소가 /ko/oem/과 /en/oem/인 회사의 예시입니다.
```html
두 페이지의 링크 세 줄이 같다는 점이 핵심입니다. 페이지마다 자기 주소를 빼고 상대 언어만 적는 실수가 흔합니다.
코드는 언어(ISO 639-1)를 먼저 쓰고, 지역(ISO 3166-1 Alpha 2)은 필요할 때만 뒤에 붙입니다. 미국과 영국에 내용이 다른 페이지를 따로 둔다면 en-US, en-GB처럼 나누고, 영문 페이지가 하나라면 en만 쓰면 됩니다. 같은 언어의 지역별 페이지를 여러 개 둔다면, 구글 문서는 지역을 정하지 않은 사용자를 위한 주소도 함께 두는 것을 권합니다.
| 틀린 값 | 맞는 값 | 이유 |
|---|---|---|
hreflang="kr" |
hreflang="ko" |
한국어 언어 코드는 ko이고, 지역 코드만 단독으로 쓸 수 없음 |
hreflang="en-UK" |
hreflang="en-GB" |
영국의 지역 코드는 GB |
href="/en/oem/" |
href="https://example.com/en/oem/" |
http 또는 https를 포함한 전체 주소가 필요함 |
href="//example.com/en/oem/" |
href="https://example.com/en/oem/" |
프로토콜을 생략할 수 없음 |
서로 가리키지 않으면 어떻게 되나요?
그 태그는 무시됩니다. 구글 문서는 이유도 함께 밝힙니다. 다른 사이트가 임의로 자기 페이지를 여러분 페이지의 언어 버전이라고 표시하지 못하게 하려는 장치입니다.
언어가 많아서 모든 조합을 맞추기 어렵다면 일부 페이지에서 일부 언어를 뺄 수 있고, 구글은 서로 가리키는 쌍만 처리합니다. 한국어와 영어 두 언어만 운영하는 제조사라면 맞출 쌍이 하나뿐이므로 페이지마다 빠짐없이 짝을 맞추는 편이 간단합니다.
영문 사이트가 별도 도메인이면 어떻게 하나요?
같은 방식으로 설정할 수 있습니다. 구글 문서는 대체 주소가 같은 도메인에 있을 필요가 없다고 안내합니다. 한국어 사이트가 example.co.kr이고 영문 사이트가 example.com이라면 각 페이지의 href에 상대 도메인의 전체 주소를 적으면 됩니다.
두 사이트를 다른 제작사나 다른 담당자가 관리한다면 고칠 사람을 정해 두어야 합니다. 한쪽 사이트를 개편하면서 주소가 바뀌면 짝이 깨지는데, 화면에는 아무 오류도 나타나지 않아 한동안 모르고 지나가기 쉽습니다.
canonical은 어떻게 맞춰야 하나요?
각 언어 페이지가 같은 언어의 대표 주소를 가리키게 합니다. 구글의 중복 URL 문서(2026년 7월 갱신)는 hreflang을 쓸 때 같은 언어의 canonical 페이지를 지정하라고 안내합니다.
영문 페이지의 canonical이 한국어 페이지를 가리키고 있으면 hreflang이 전하려는 내용과 어긋납니다. 홈페이지 제작 도구가 canonical을 자동으로 넣어 주는 경우가 많으니, 영문 페이지에서 이 값이 한국어 주소로 고정되어 있지 않은지 살펴봅니다.
x-default는 꼭 넣어야 하나요?
언어 선택 화면이나 언어에 따라 자동으로 넘어가는 홈이 있다면 넣는 편이 좋지만 의무 사항은 없습니다. x-default는 사용자의 언어가 어느 버전과도 맞지 않을 때 보여 줄 대체 페이지를 뜻합니다.
한국어 외 언어권 바이어가 대부분 영어로 거래한다면 위 예시처럼 영문 페이지를 지정할 수 있습니다. 어떤 페이지로 정할지는 회사 상황에 따라 고르면 됩니다.
HTML, HTTP 헤더, 사이트맵 중 무엇을 써야 하나요?
사이트를 고치기 쉬운 방법 하나만 고르면 됩니다. 구글 문서(2025년 12월 갱신)는 세 방법이 구글 입장에서 같다고 밝히고, 함께 써도 이득이 없다고 설명합니다.
| 방법 | 넣는 곳 | 어울리는 경우 |
|---|---|---|
| HTML link 태그 | 각 페이지의 head 안 | 페이지 수가 적고 템플릿을 고칠 수 있음 |
| HTTP 헤더 | 서버 응답 | PDF처럼 HTML이 없는 파일 |
| XML 사이트맵 | 사이트맵의 URL 항목 | 페이지가 많거나 head를 고치기 어려움 |
호스팅형 홈페이지 제작 서비스를 쓴다면 head 편집이 가능한지 먼저 확인합니다. 편집이 막혀 있으면 사이트맵 방식이 가능한지 제작사에 물어봅니다.
사이트맵을 쓸 때도 규칙은 같습니다. 각 URL 항목마다 자기 자신을 포함한 모든 언어 버전을 적어야 합니다. 구글 문서는 이 항목들의 순서는 상관없다고 설명하지만, 순서를 같게 맞춰 두면 틀린 곳을 찾기가 쉬워집니다. 여러 방법을 섞어 쓰면 한 곳만 고치고 다른 곳을 잊기 쉬우므로 하나로 통일하는 편이 관리에 유리합니다.
설정은 어떤 순서로 하나요?
- 한국어 페이지와 영문 페이지의 짝을 표로 적습니다. 짝이 없는 페이지는 태그를 넣지 않습니다.
- 각 짝의 주소를 https가 포함된 전체 주소로 정리합니다.
- 두 페이지의 head 안에 자기 자신을 포함한 링크를 넣습니다.
- 브라우저에서 렌더링된 HTML을 HTML 검사 도구에 넣어 링크가 head 안에 있는지 봅니다.
- 페이지를 새로 만들거나 없앨 때 짝이 되는 페이지의 태그도 함께 고칩니다.
4번을 따로 두는 이유가 있습니다. 구글 문서는 link 태그가 올바른 head 안에 있어야 한다고 안내하는데, 스크립트나 삽입 코드 때문에 head가 일찍 끊기면 그 아래의 태그가 인식되지 않을 수 있습니다.
제대로 들어갔는지는 어떻게 확인하나요?
두 페이지의 소스를 나란히 열어 아래 항목을 대조합니다. 페이지가 몇 개 안 되면 손으로 확인해도 충분하고, 많으면 사이트 점검 도구로 목록을 뽑아 봅니다.
| 점검 항목 | 보는 곳 | 정상인 상태 |
|---|---|---|
| 자기 자신 링크 | 현재 페이지의 head | 자기 주소가 목록에 있음 |
| 상대 페이지 링크 | 짝 페이지의 head | 이쪽 페이지 주소가 적혀 있음 |
| 주소 형식 | 각 href 값 | https로 시작하는 전체 주소 |
| 주소 상태 | 각 주소를 브라우저로 열기 | 삭제되거나 다른 곳으로 넘어가지 않음 |
| 언어 코드 | 각 hreflang 값 | ko, en 또는 언어-지역 형식 |
| canonical | head의 canonical | 같은 언어의 주소 |
개편 직후에는 주소 상태를 꼭 다시 봅니다. 주소가 바뀌었는데 태그를 그대로 두면 없는 페이지를 가리키게 됩니다.
접속 국가에 따라 자동으로 페이지를 바꿔도 되나요?
권장되지 않습니다. 구글의 다국어 사이트 문서(2025년 12월 갱신)는 IP 분석으로 내용을 바꾸지 말고 자동 이동도 피하라고 안내합니다. Googlebot은 주로 미국에서 접속하고 Accept-Language 헤더를 보내지 않기 때문에, 자동 이동이 있으면 구글이 한국어 페이지에 닿지 못할 수 있습니다.
대신 모든 페이지 상단에 언어 전환 링크를 눈에 보이게 둡니다. 바이어가 직접 언어를 고를 수 있고, 검색엔진도 그 링크를 따라갈 수 있습니다.
hreflang만 넣으면 해외 바이어가 찾아오나요?
hreflang은 언어 버전을 연결하는 설정이어서 문의를 만들어 주지는 않습니다. 바이어가 찾는 품목, MOQ, 인증, 리드타임이 영문 본문에 글로 있어야 검색 결과에서 고를 이유가 생깁니다. 화장품 제조사가 어떤 내용을 갖춰야 하는지는 화장품 OEM 안내에서 볼 수 있습니다.
여기서 다룬 규칙은 구글 검색 문서의 내용입니다. 네이버나 ChatGPT가 같은 방식으로 이 태그를 처리하는지는 이 문서로 판단할 수 없으므로, 각 서비스의 공식 안내를 따로 확인해야 합니다.
자주 묻는 질문
한국어 페이지에도 hreflang을 넣어야 하나요?
네, 넣어야 합니다. 구글 문서는 각 언어 버전이 자기 자신과 다른 언어 버전을 모두 표시하도록 안내합니다. 영문 페이지에만 넣으면 서로 가리키는 관계가 만들어지지 않습니다.
한국어 코드는 kr인가요, ko인가요?
언어 코드는 ko입니다. KR은 대한민국을 뜻하는 지역 코드이고, 구글은 지역 코드만 단독으로 쓸 수 없다고 안내합니다. 지역까지 나누려면 ko-KR처럼 언어 코드 뒤에 붙입니다.
hreflang을 넣으면 검색 순위가 오르나요?
구글 문서는 hreflang을 언어별 버전을 알려 주는 표시로 설명하며, 순위를 올린다는 내용은 없습니다. 해외 바이어가 맞는 언어의 페이지를 보게 하는 설정으로 이해하는 편이 정확합니다.
