Citeon
실무 심화

다국어 사이트의 AEO: hreflang과 콘텐츠 전략

정유진
정유진 · 콘텐츠·SEO 에디터

Google AI Overviews·Perplexity·ChatGPT Search가 다국어 쿼리에 응답할 때, 인용 후보 선택은 두 신호 레이어에서 결정된다. 첫째, Googlebot이 색인 단계에서 처리하는 hreflang·Content-Language 시그널, 둘째, RAG 파이프라인이 실제 텍스트와 JSON-LD inLanguage에서 추출하는 언어 컨텍스트다. 두 레이어가 불일치하면 AI 엔진이 잘못된 언어 버전을 인용하거나 인용 후보에서 탈락하는 현상이 발생한다.

hreflang 메커니즘 — 크롤러 처리 경로 3가지

hreflang은 Googlebot이 색인 단계에서 처리하는 언어·지역 대상 신호다. 선언 경로는 세 가지이며 Googlebot은 세 경로를 동등하게 수집·합산한다.

AI 답변엔진이 다국어 신호를 처리하는 방식

hreflang은 크롤러 색인 신호다. Google AI Overviews가 인용 후보를 선택할 때는 색인된 URL의 언어가 쿼리 언어와 일치하는지 판단하며, 이때 실제 텍스트 언어JSON-LD inLanguage가 우선 참조된다. Perplexity의 RAG 파이프라인은 임베딩 생성 시 텍스트 언어를 직접 감지하므로 hreflang 선언만으로는 AI 인용 언어 버전을 제어할 수 없다.

구현: HTML·HTTP 헤더·sitemap 3계층 코드 예시

아래는 한국어·영어 2개 언어 버전을 hreflang으로 선언하고, Article JSON-LD에 inLanguagesameAs를 병행 선언하는 최소 구현이다. XML sitemap 선언도 포함한다.

<!-- HTML <head> — 한국어 버전 페이지 -->
<link rel="alternate" hreflang="ko"        href="https://example.com/ko/guide/" />
<link rel="alternate" hreflang="en"        href="https://example.com/en/guide/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/guide/"    />

<!-- JSON-LD: AI 인용 언어 컨텍스트 명시 -->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "전력량 계산 완전 가이드",
  "inLanguage": "ko",
  "url": "https://example.com/ko/guide/",
  "sameAs": [
    "https://example.com/en/guide/"
  ],
  "author": { "@type": "Organization", "name": "Example Corp" }
}
</script>

<!-- HTTP Link 헤더 (Nginx 예시, PDF 등 비HTML 리소스에 적용) -->
add_header Link '<https://example.com/en/guide/>; rel="alternate"; hreflang="en",
                 <https://example.com/ko/guide/>; rel="alternate"; hreflang="ko"';

<!-- XML Sitemap — xhtml:link 선언 (sitemap.xml) -->
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://example.com/ko/guide/</loc>
    <xhtml:link rel="alternate" hreflang="ko"
                href="https://example.com/ko/guide/"/>
    <xhtml:link rel="alternate" hreflang="en"
                href="https://example.com/en/guide/"/>
    <xhtml:link rel="alternate" hreflang="x-default"
                href="https://example.com/guide/"/>
  </url>
</urlset>

검증과 측정

신호 유형 전통 SEO Google AI Overviews Perplexity / ChatGPT Search
hreflang (HTML/sitemap/헤더) 직접 처리 — 언어·지역 URL 매핑 색인 단계 처리 — 인용 URL 풀에 간접 영향 처리 안 함 — RAG 파이프라인 외부
JSON-LD inLanguage 보조 신호 인용 언어 매칭 시 직접 참조 임베딩 언어 컨텍스트로 활용(추정)
URL 언어 세그먼트 (/ko/) 중요 — 크롤 경로 분리 중요 — 색인 URL 언어 식별 중요 — 쿼리 언어 매칭
HTTP Content-Language 헤더 보조 (Chrome 자동번역 참조) 보조 미처리

흔한 오해와 올바른 처리

오해: hreflang을 선언하면 AI 답변엔진도 해당 언어 버전을 인용한다.
hreflang은 Googlebot의 색인 단계 신호이며, AI Overviews의 RAG 레이어나 Perplexity의 임베딩 생성 단계에는 직접 전달되지 않는다. AI가 인용 언어 버전을 선택하는 실질 결정 요인은 (1) 쿼리 언어와 페이지 실제 텍스트 언어의 일치, (2) JSON-LD inLanguage 명시, (3) URL 언어 세그먼트다. 올바른 접근법은 hreflang을 크롤 단계 신호로 관리하되, AI 인용 제어에는 각 언어 버전 페이지에 inLanguage를 포함한 JSON-LD와 실제 해당 언어로 작성된 본문을 병행하는 것이다.

FAQ 1. hreflang 미선언 시 Google AI Overviews 인용에 실제 영향이 있는가?

직접 영향은 없으나 간접 경로로 문제가 발생한다. hreflang 미선언 또는 오선언 상태에서는 Googlebot이 어느 URL이 어느 언어·지역을 대상으로 하는지 파악하지 못해 잘못된 언어 버전이 주요 색인에 포함되거나 중복 콘텐츠 판정을 받을 수 있다. AI Overviews는 이 색인을 인용 풀로 사용하므로, hreflang 오선언이 결과적으로 잘못된 언어 버전 URL을 인용하는 형태로 나타난다. 따라서 hreflang 자체가 AI 인용을 제어하지는 않지만, 올바른 색인 상태 유지를 위한 필수 전제 조건이다.

FAQ 2. 서브도메인(ko.example.com)과 서브디렉토리(/ko/) 중 AEO 관점에서 어느 쪽이 유리한가?

AEO 관점에서도 서브디렉토리가 일반적으로 유리하다. 동일 도메인 내 언어 세그먼트는 도메인 수준의 권위가 분산되지 않고, 크롤러의 언어 매핑과 RAG 인용 풀 구성 면에서 일관성이 높다. 서브도메인은 독립 도메인처럼 취급되어 도메인 권위가 분산될 수 있다. 다만 CDN 분리·캐싱 정책·팀 운영 구조 등 인프라 요건이 우선이라면 서브도메인도 hreflang + JSON-LD sameAs를 통한 명시적 언어 연결로 인용 신뢰도를 보완할 수 있다. 어느 방식이든 한 번 선택한 URL 구조는 변경 시 hreflang 전체와 sitemap을 동시에 갱신해야 하므로 초기 결정이 중요하다.

참고 자료

이 글의 권고는 아래 공식 문서·연구를 근거로 합니다.

정유진
정유진 · 콘텐츠·SEO 에디터

스키마·FAQ·콘텐츠 구조 등 실무 체크리스트를 쉽고 편안하게 정리합니다. 바로 따라 할 수 있는 글을 지향합니다.

내 사이트의 AI 검색 점수가 궁금하다면

30초 무료 진단으로 SEO·AEO·GEO 점수와 처방을 받아보세요.

무료 진단 시작
← 블로그 목록으로