환자가 "무릎 인공관절 수술 잘하는 병원"이나 "어깨 회전근개파열 비수술 치료"를 ChatGPT Search·Perplexity·Google AI Overviews에 입력할 때, 어떤 클리닉의 콘텐츠가 인용 후보로 선정되는지는 두 가지 기술적 판단에 달려 있다. 하나는 YMYL(Your Money or Your Life) 분류 하에서 출처의 권위성·신뢰성 신호를 파싱하는 단계고, 다른 하나는 의료 엔티티(병원·의사·시술)를 구조화 데이터로 얼마나 명확하게 표현했느냐다. 일반 SEO와 달리 의료 도메인은 E-E-A-T 신호의 기계 판독 가능 여부가 인용 확률에 직접 개입하기 때문에, JSON-LD 스키마와 콘텐츠 아키텍처를 YMYL 기준으로 정밀하게 구현해야 한다.
AI 엔진의 의료 쿼리 처리 메커니즘
ChatGPT Search와 Perplexity는 의료 쿼리를 YMYL로 분류하면 일반 정보성 쿼리보다 엄격한 소스 필터링을 적용한다(정확한 임계값은 공개되지 않음). 인용 후보 선정에 영향을 주는 신호는 다음과 같다.
- 도메인 권위성 계층 — Perplexity는 의료 쿼리에서 정부 기관(
.go.kr)·학회·학술 DOI를 1순위 풀로 삼는 경향이 관찰된다. 개인 클리닉이 이 풀에 진입하려면 의사 자격·소속을 구조화 데이터로 명시해야 한다. - 의사 자격 증명 파싱 — LLM 파이프라인이 HTML 자연어("정형외과 전문의 20년")를 신뢰 신호로 추출하는 능력은 제한적이다.
schema.org/Physician의hasCredential로 기계 판독 가능하게 선언해야 한다. - 리뷰·평점 집계 — Google AI Overviews는
AggregateRating스키마가 있는 로컬 비즈니스를 시술 비용·추천 쿼리에서 함께 인용하는 패턴이 2025년 이후 보고된다(전수 보장 아님).
| 항목 | SEO | AEO | GEO |
|---|---|---|---|
| 목표 결과물 | SERP 상위 링크 클릭 | AI Overview·Featured Snippet 인용 | LLM 생성 답변 내 브랜드·정보 포함 |
| 의료 핵심 신호 | 백링크·NAP 일관성·모바일 속도 | MedicalProcedure·Physician 스키마 | 의사 저술·감수 날짜·학술 레퍼런스 |
| 측정 지표 | GSC 클릭수·CTR·순위 | AI Overview 인용 여부·Snippet 점유 | AI 리퍼러 세션·직접 인용 텍스트 |
| YMYL 가중치 처리 | E-E-A-T 품질 평가 (수동) | 자격 구조화 데이터 (기계 파싱) | 사전학습 데이터 내 권위 소스 반영 |
MedicalOrganization·Physician·MedicalProcedure JSON-LD 구현
병원 홈페이지 <head>에 아래 스키마를 삽입한다. @graph로 세 엔티티를 연결하면 AI 엔진이 "어느 의사가 어떤 시술을 수행하는 병원인가"를 단일 파싱 패스로 처리한다.
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "MedicalOrganization",
"@id": "https://example-clinic.kr/#organization",
"name": "서울정형외과 클리닉",
"url": "https://example-clinic.kr",
"telephone": "+82-2-1234-5678",
"medicalSpecialty": "https://schema.org/Orthopedic",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 123",
"addressLocality": "강남구",
"addressRegion": "서울특별시",
"postalCode": "06000",
"addressCountry": "KR"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "312",
"bestRating": "5"
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
"opens": "09:00",
"closes": "18:00"
}
]
},
{
"@type": "Physician",
"@id": "https://example-clinic.kr/doctors/kim-cs#physician",
"name": "김철수",
"honorificPrefix": "Dr.",
"worksFor": { "@id": "https://example-clinic.kr/#organization" },
"medicalSpecialty": "https://schema.org/Orthopedic",
"hasCredential": {
"@type": "EducationalOccupationalCredential",
"credentialCategory": "전문의",
"recognizedBy": {
"@type": "Organization",
"name": "대한정형외과학회"
}
},
"alumniOf": {
"@type": "EducationalOrganization",
"name": "서울대학교 의과대학"
}
},
{
"@type": "MedicalProcedure",
"@id": "https://example-clinic.kr/procedures/tka#procedure",
"name": "무릎 인공관절 전치환술",
"procedureType": "https://schema.org/SurgicalProcedure",
"bodyLocation": "무릎 관절",
"preparation": "수술 전 혈액검사, 심전도, 흉부 X선 필요",
"howPerformed": "전신 또는 척추마취 하 손상 연골·뼈 제거 후 인공관절 삽입",
"followup": "수술 후 재활 6~12주, 보행 훈련 포함",
"performedBy": { "@id": "https://example-clinic.kr/doctors/kim-cs#physician" }
}
]
}
- 왜
@graph로 묶나 — 엔티티 간@id참조를 단일 문서 내에서 해석하므로, "이 의사 → 이 병원 → 이 시술" 관계를 LLM 파이프라인이 추론 없이 직독할 수 있다. - 왜
medicalSpecialty에 URL을 쓰나 — 문자열 "정형외과"보다schema.org/Orthopedic열거형 URI를 써야 크롤러가 표준 의료 분류 체계로 값을 해석한다. - 왜
aggregateRating을 붙이나 — "인공관절 잘하는 병원 추천" 류 쿼리에서 Google AI Overviews가 AggregateRating 값을 참조해 병원을 나열하는 패턴이 확인됐다(일부 쿼리 기준).
YMYL E-E-A-T 신호 구조화: 콘텐츠·llms.txt 설정
시술 안내 페이지의 저자 귀속
시술 안내·증상 설명 페이지에 Physician을 author와 reviewedBy로 동시에 명시해야 AI 엔진이 전문성 신호를 기계 판독 가능 형태로 수신한다.
- Article + author 연결 —
"author": {"@id": "...#physician"}로 Physician 엔티티를 참조한다. 자연어 바이오 텍스트만으로는 파싱 신뢰도가 낮다. - MedicalWebPage.lastReviewed —
dateModified와 별도로lastReviewed를 ISO 8601 형식으로 명시해야 AI 엔진이 정보 신선도를 판단한다. 의료 정보는 3~6개월 이상 미갱신 시 인용 우선순위가 낮아지는 경향이 있다(추정). - llms.txt 구조 — 루트
/llms.txt에 병원 개요·시술 목록·의사 프로필 URL을 섹션별로 나열한다. Perplexity·Bing Copilot이 이 파일을 참조해 색인 우선순위를 조정하는 사례가 보고됐으나, 모든 엔진이 지원하는 공식 표준은 아니므로 선택적으로 적용한다.
llms.txt·robots.txt 의료 특화 설정과 흔한 오해
오해: "의료 사이트는 robots.txt로 전체 차단해야 개인정보가 보호된다"
User-agent: * Disallow: /로 전체를 차단하면 GPTBot·Perplexitybot이 시술 안내·의사 프로필처럼 공개 정보성 콘텐츠도 색인하지 못한다. 결과적으로 "강남 무릎 전문 병원"을 AI에게 묻는 환자의 쿼리에서 해당 클리닉은 후보에 오르지 않는다. 개인정보보호법상 보호 대상은 식별 가능한 환자 데이터이지 공개된 병원 소개 텍스트가 아니다.
올바른 처리 — 환자 데이터 경로만 Disallow하고 정보성 경로는 명시적으로 허용한다.
# robots.txt — 의료 사이트 AI 크롤러 분리 설정 예시
User-agent: GPTBot
Disallow: /appointment/
Disallow: /mypage/
Disallow: /records/
Allow: /doctors/
Allow: /procedures/
Allow: /about/
Allow: /faq/
User-agent: PerplexityBot
Disallow: /appointment/
Disallow: /mypage/
Disallow: /records/
Allow: /
User-agent: Bingbot
Disallow: /appointment/
Disallow: /mypage/
Disallow: /records/
Allow: /
Sitemap: https://example-clinic.kr/sitemap.xml
AI 리퍼러 귀속 측정과 인용 검증
- GA4 커스텀 채널 그룹 —
chatgpt.com·perplexity.ai·bing.com/chat을 각각 별도 채널로 등록한다. GA4 기본 분류는 AI 트래픽을direct또는referral로 섞어 집계하므로 수동 설정이 필수다. - UTM 자동 파라미터 — ChatGPT가 링크 삽입 시
?utm_source=chatgpt.com을 자동으로 붙이는 경우가 있다(전체 링크에 보장되는 사양이 아님). UTM 필터로 이 세션을 별도 집계하고, 미붙은 세션은 리퍼러 도메인 기준으로 보완 집계한다. - 인용 텍스트 수동 검증 — 시술 페이지의 핵심 문장(예: "로봇 인공관절 수술 정확도 ±0.5mm 이내")을 Perplexity에 직접 쿼리해 인용 여부를 확인한다. JSON-LD 변경 후 48~72시간 뒤 재확인이 기준점이다(크롤러 갱신 주기는 사이트 권위성·규모에 따라 다름).
- Google Search Console AI Overview 보고 — 2025년 이후 GSC가 AI Overview 노출 impressions를 별도 필터로 제공한다. "검색 유형 > AI Overview"로 필터해 쿼리별 인용 현황을 추출한다.
FAQ 1: MedicalProcedure 스키마와 FAQPage 스키마를 같은 페이지에 함께 써도 되는가?
기술적으로 가능하고 권장된다. @graph 배열에 MedicalProcedure와 FAQPage를 함께 선언하면 Google은 각 타입을 독립적으로 파싱한다. 단, FAQPage의 acceptedAnswer에 시술 위험·금기 사항 같은 YMYL 내용이 들어가는 경우, Google 가이드라인 기준 "감수 의사를 입증할 수 없으면 Featured Snippet 적격에서 제외될 수 있다"는 점을 주의해야 한다. MedicalWebPage의 reviewedBy에 반드시 Physician @id를 연결할 것.
FAQ 2: AI 엔진이 병원 정보를 인용할 때 자동으로 면책 조항("의학적 조언이 아닙니다")을 삽입하는가, 그리고 이를 병원이 제어할 수 있는가?
ChatGPT·Perplexity는 의료 쿼리 응답에 "이 정보는 의학적 조언을 대신하지 않습니다" 류의 문구를 내부 안전 정책에 따라 자체 생성해서 삽입한다. 이 문구는 병원 사이트의 콘텐츠·스키마·robots.txt로 제거하거나 수정할 수 없다. 병원 입장에서는 이를 수용 불가한 제약으로 볼 것이 아니라, 대신 인용되는 콘텐츠 자체의 정확성·최신성·저자 명시성을 높이는 데 집중하는 것이 현실적인 접근이다. AI 엔진이 면책 문구를 붙이더라도 병원 명칭·시술 설명이 인용되는 것 자체가 브랜드 노출 효과를 발생시킨다.
참고 자료
이 글의 권고는 아래 공식 문서·연구를 근거로 합니다.