AI 검색 가시성 측정에서 가장 큰 오차원은 엔진도 모델도 아니라 '어떤 질문을 던졌는가'다. SOV(Share of Voice)가 12%로 나왔든 48%로 나왔든, 그 숫자는 당신이 고른 질문 세트가 만들어낸 결과다. 질문 세트는 측정의 '부수 조건'이 아니라 측정 도구(instrument) 그 자체다. 체온계를 겨드랑이에 꽂느냐 입에 무느냐에 따라 같은 사람의 체온이 다르게 찍히듯, 같은 브랜드도 질문 세트를 바꾸면 가시성 점수가 통째로 흔들린다. 이 글은 '왜 그런지'를 RAG(retrieval→reranking→generation) 메커니즘까지 내려가 설명하고, 그로스·퍼포먼스 관점에서 결과를 신뢰할 수 있는 질문 세트를 설계하는 법을 다룬다.
질문 세트는 데이터가 아니라 '측정 도구'다
퍼포먼스 마케터에게 익숙한 비유로 시작하자. 검색광고에서 키워드 세트를 바꾸면 노출·클릭·전환이 통째로 달라진다. 같은 랜딩페이지라도 '저렴한 노트북'에 입찰하느냐 '디자이너용 노트북'에 입찰하느냐에 따라 들어오는 트래픽의 질과 양이 다르다. AI 검색 가시성 측정의 질문 세트도 정확히 같은 역할을 한다. 다만 결정적 차이가 하나 있다. 광고에서 키워드는 '내가 사는 트래픽'이지만, 가시성 측정에서 질문 세트는 '내가 세상을 들여다보는 렌즈'다. 렌즈가 휘어 있으면 세상이 휘어 보인다.
SOV의 정의부터 보자. SOV는 '특정 카테고리의 AI 답변들 중 우리 브랜드가 언급된 비율'이다. 분모는 '카테고리 답변 전체', 분자는 '우리가 언급된 답변'이다. 그런데 '카테고리 답변 전체'를 무엇으로 정의하는가? 바로 당신이 던진 질문들의 답변 모음이다. 즉 분모 자체가 질문 세트로 정의된다. 질문을 바꾸면 분모가 바뀌고, 분모가 바뀌면 같은 분자라도 비율이 출렁인다. 이것이 단일 SOV 숫자를 액면 그대로 믿으면 안 되는 1차 이유다.
| 같은 브랜드(가상의 B2B SaaS), 질문 세트만 교체 | 측정된 SOV | 왜 이렇게 나오나 |
|---|---|---|
| 브랜드명 포함 질문 위주 ("OO 가격", "OO 사용법") | 높게 나옴 | 이미 우리를 아는 사람이 던지는 질문 → 우리가 안 나오기가 더 어렵다 |
| 일반 카테고리 질문 ("협업 툴 추천", "중소기업 ERP 비교") | 낮게 나옴 | 경쟁사·중립 매체와 동일 선상 경쟁 → 진짜 시장 점유에 가깝다 |
| 구매 직전 질문 ("OO vs 경쟁사 어느 게 낫나") | 중간, 변동 큼 | 비교 콘텐츠 보유 여부에 따라 극단적으로 갈림 |
세 줄 모두 같은 브랜드다. 그런데 누군가 "우리 SOV 높던데요?"라고 말할 때, 첫 번째 세트로 잰 것인지 두 번째 세트로 잰 것인지를 밝히지 않으면 그 숫자는 의미가 없다. 마케팅 측정 도구 업계의 표현을 빌리면, 콘텐츠 분석 도구 Conductor는 신뢰할 수 없는 검색량 데이터에 대해 "신뢰할 수 없는 데이터는 없는 것보다 나쁘다"고 못 박았다(출처). 질문 세트의 출처와 구성을 밝히지 않은 SOV가 바로 그 '없는 것보다 나쁜 데이터'다.
왜 질문 한 글자가 RAG 전체 경로를 바꾸는가
여기서 한 단계 더 들어가자. 질문을 바꾸면 '왜' 결과가 달라지는가? 답은 AI 검색이 작동하는 RAG 파이프라인 안에 있다. RAG는 Lewis 등이 2020년 제안한 구조로(arXiv:2005.11401), 모델이 외운 지식(파라메트릭 메모리)과 그때그때 검색해 온 문서(비파라메트릭 메모리)를 결합해 답을 만든다. 질문은 이 파이프라인의 맨 앞 입력이고, 입력이 바뀌면 세 단계가 연쇄적으로 다르게 작동한다.
1단계 retrieval — 질문이 검색 쿼리로 변환된다
사용자 질문은 먼저 임베딩(의미 벡터)으로 바뀌어 후보 문서를 끌어온다. 의미 기반 검색(Dense Passage Retrieval, Karpukhin 등 2020, arXiv:2004.04906)은 단순 키워드 매칭(BM25)을 능가하지만, 바로 그 때문에 질문의 '단어'가 아니라 '의미'에 민감하다. "협업 툴 추천"과 "팀 메신저 뭐 써"는 사람에겐 비슷해도 임베딩 공간에서는 다른 좌표를 찍고, 그 결과 끌려오는 후보 문서 풀이 통째로 달라진다.
도서관 비유로 보자. 하이브리드 검색은 '키워드 색인 카드(BM25)'와 '주제를 이해하는 사서(의미 검색)'를 함께 쓰는 것과 같다. 색인 카드만 쓰면 정확히 같은 단어가 적힌 책만 찾고, 사서만 쓰면 비슷한 주제를 잘 찾지만 고유명사를 놓친다. 둘을 합치면 회수율이 크게 오른다 — 공개 벤치마크 종합에서 recall@10이 의미 단독 약 78%, BM25 단독 약 65%인데 둘을 RRF로 합친 하이브리드는 약 91%까지 올라간다. 핵심은, 질문의 표현이 색인 카드 경로와 사서 경로 양쪽에서 다른 책을 꺼내온다는 점이다. 질문 표현 하나가 후보 풀을 갈아엎는다.
2단계 reranking — 질문과 후보를 '함께 읽어' 재정렬한다
끌려온 1차 후보들은 cross-encoder 같은 재정렬기가 질문과 각 문서를 한 쌍으로 묶어 다시 읽고 순위를 매긴다. 이 단계에서 NDCG가 5~15점(난도 높은 질문에선 약 20점) 오른다. 중요한 건 재정렬이 '질문에 비춘 적합도'라는 점이다. 같은 문서라도 질문이 "가격"이면 가격표가 위로, "보안"이면 인증 정보가 위로 올라간다. 질문이 곧 '무엇이 위로 올라올지'를 결정한다.
3단계 generation — 위에 올라온 문서가 답이 된다
마지막으로 모델은 상위에 놓인 문서를 근거로 답을 생성한다. 여기서 'Lost in the Middle' 현상이 끼어든다(Liu 등 2023, arXiv:2307.03172). 긴 맥락에서는 중간에 놓인 정보가 손실되고 앞·끝의 정보가 답에 반영되는 U자형 편향이 나타난다. 즉 retrieval·reranking이 우리 브랜드 문서를 끌어왔더라도, 그게 맥락 중간에 묻히면 답에 인용되지 않는다. 그리고 '맥락 중간에 묻히는지'는 다시 질문이 몇 개의 문서를 끌어왔고 우리 문서가 몇 번째였는지에 달려 있다.
정리하면 이렇다.
질문 표현 바뀜
→ (retrieval) 후보 문서 풀이 통째로 바뀜
→ (reranking) 질문 적합도 기준으로 순위가 바뀜
→ (Lost in the Middle) 상위에 못 올라가면 답에서 누락
→ 우리 브랜드 인용 여부가 바뀜
→ SOV 숫자가 바뀜
질문 한 줄이 이 네 단계를 전부 흔든다. 그래서 '질문 세트 설계 = 측정 설계'다. 측정값을 바꾸고 싶지 않다면 질문 세트를 함부로 바꾸면 안 되고, 측정값을 믿고 싶다면 질문 세트가 어떻게 짜였는지부터 알아야 한다.
망가진 질문 세트의 5가지 패턴 (실제 문장 대조)
현장에서 SOV를 부풀리거나 왜곡하는 질문 세트는 대개 다음 다섯 패턴 중 하나다. 각각 ❌약한 예와 ✅강한 예를 실제 질문 문장으로 보여준다. (브랜드명은 'OO'로 표기)
패턴 1 — 브랜드 함정(branded bias)
브랜드명을 질문에 넣으면 retrieval이 자사 문서를 끌어올 확률이 치솟는다. 우리를 이미 아는 사람의 질문으로 '발견 가능성'을 재는 셈이라 숫자가 과대평가된다.
- ❌ "OO 요금제 알려줘" — 답에 OO가 안 나오는 게 더 이상하다. 측정 의미 없음.
- ✅ "50명 규모 스타트업이 쓸 만한 협업 툴 추천해줘" — 카테고리 경쟁 상황에서 우리가 호명되는지를 잰다.
패턴 2 — 유도 질문(leading question)
우리 강점을 질문에 미리 심으면 그 강점을 다루는 문서가 유리해진다. 결과가 아니라 가정을 측정하게 된다.
- ❌ "가장 저렴한 OO 대안은?" 또는 "보안이 가장 강력한 협업 툴은?" (우리가 보안 마케팅을 한다면)
- ✅ "협업 툴 고를 때 뭘 봐야 하나?" — 평가 기준 자체를 AI가 어떻게 제시하는지, 거기에 우리가 끼는지를 본다.
패턴 3 — 표현 단일화(phrasing monoculture)
같은 의도를 한 가지 표현으로만 물으면 retrieval 경로가 하나로 고정돼, 그 표현에 최적화된 페이지만 보인다. 실사용자는 같은 걸 열 가지 말로 묻는다.
- ❌ "ERP 비교" 한 줄만 반복 측정
- ✅ "ERP 추천" / "중소기업 ERP 뭐가 좋아" / "회계 자동화 솔루션 비교" / "우리 회사 ERP 도입하려는데" — 같은 의도의 표현 변이를 묶어서 측정
패턴 4 — 깔때기 단계 혼합(funnel mixing)
인지 단계 질문과 구매 직전 질문을 한 통에 섞어 평균 내면, 두 단계의 전혀 다른 성과가 뭉개진 무의미한 평균이 나온다. 퍼포먼스 관점에서 이건 ROAS와 CTR을 더해 2로 나누는 것과 같다.
- ❌ 인지·고려·구매 질문을 한 세트에 섞고 SOV 한 숫자로 보고
- ✅ TOFU("협업이 왜 중요한가") / MOFU("협업 툴 비교") / BOFU("OO vs 경쟁사 어디가 낫나") 단계별로 분리해 각각 측정
패턴 5 — 엔진 합산(engine averaging)
여러 엔진의 SOV를 하나로 합치면 메커니즘이 가려진다. 인용 패턴 대규모 분석에서 ChatGPT와 Perplexity의 인용 도메인 중복은 약 11%에 불과했고, 인용의 약 90%가 엔진마다 달랐다(Profound/Discovered Labs 등 분석). ChatGPT는 위키백과 비중이 약 47.9%, Perplexity는 Reddit 비중이 약 46.7%로 성향 자체가 다르다. 합산 평균은 이 차이를 통째로 지운다.
- ❌ "전체 AI 검색 SOV 30%"
- ✅ "ChatGPT 41% / Perplexity 22% / Gemini 28% / Claude 19% — 엔진별 분해"
엔진마다 질문이 다르게 읽힌다 — 합산이 위험한 이유
패턴 5를 더 깊게 보자. 같은 질문도 엔진마다 다른 답을 만든다. 각 엔진의 retrieval 소스와 보수성이 다르기 때문이다.
| 엔진 | 인용 성향 | 질문 세트 설계 시 함의 |
|---|---|---|
| ChatGPT | 위키백과·커뮤니티 비중 높음 | 엔티티(위키 수준) 권위가 없는 브랜드는 카테고리 질문에서 잘 안 보임 |
| Gemini | 구글 색인·E-E-A-T 반영 | 기존 SEO 자산이 강하면 유리. 같은 질문도 SEO 강자가 인용됨 |
| Claude | 근거 약한 콘텐츠를 보수적으로 걸러냄(Citations API) | 출처·근거가 부실하면 아예 후보에서 탈락. 질문이 사실 검증형일수록 격차 큼 |
| Perplexity | 실시간 웹·인라인 인용, Reddit 비중 | 최신성·커뮤니티 언급이 질문 결과를 좌우 |
국내라면 변수가 하나 더 있다. 네이버는 외부 크롤러를 차단해, 글로벌 AI들은 네이버 콘텐츠를 직접 못 읽고 나무위키·위키백과·티스토리를 통해 우회 인용한다. 즉 '네이버에서 잘 보이는 것'과 '글로벌 AI에서 잘 보이는 것'은 질문이 같아도 결과가 다르다. 네이버 자체 AI 환경도 빠르게 바뀌는 중이라(AI 브리핑이 통합검색 쿼리의 20% 이상에 적용, 한 표본분석에서 AI 브리핑 인용 출처의 약 58%가 블로그) 국내 브랜드는 글로벌 엔진 세트와 네이버 세트를 분리해 재는 편이 안전하다.
결론은 단순하다. 엔진별로 같은 질문 세트를 던지되, 결과는 절대 합산하지 말고 엔진별로 나란히 본다. 합산 SOV 한 숫자는 보기엔 깔끔하지만, 어느 엔진에서 왜 이기고 지는지를 가려버려 처방을 불가능하게 만든다.
같은 질문, 같은 엔진인데도 답이 흔들린다 — 비결정성
질문 세트를 완벽히 설계해도 끝이 아니다. LLM은 temperature=0에서도 결과가 흔들린다. GPU 연산 순서와 배치 처리 때문이다. 한 분석에서는 2,350억 파라미터급 모델을 1,000회 돌렸을 때 80가지 출력이 나왔다고 보고됐다. 6개 모델 480회 실험을 다룬 연구도 이 비결정성을 정량화했다(arXiv:2602.14349). AI 가시성의 불확실성을 다룬 연구는 인용이 멱법칙으로 출렁이므로 다중 실행과 부트스트랩 신뢰구간을 권장한다(arXiv:2603.08924).
이게 질문 세트 설계와 어떻게 연결되나? 비결정성이 있다는 것은 질문 1개를 1번 던진 측정은 노이즈라는 뜻이다. 신뢰할 수 있는 측정의 최소 단위는 '의도 1개 × 표현 변이 N개 × 엔진별 × 다중 실행'이다. 단일 질문·단일 실행으로 "이번 주 SOV가 5%p 올랐다"고 보고하면, 그 5%p가 진짜 개선인지 GPU 주사위가 굴러간 결과인지 구별할 수 없다.
| 측정 방식 | 나오는 것 | 신뢰도 |
|---|---|---|
| 질문 1개 × 1회 | 점 하나 | 노이즈. 보고 금지 |
| 질문 1개 × 5회 | 그 질문의 변동폭 | 이 질문 한정 신뢰구간 |
| 의도 1개(표현 5변이) × 엔진 4 × 3회 | 의도 단위 신뢰구간 | 보고 가능한 최소 단위 |
그래서 어떻게 설계하나 — 신뢰 가능한 질문 세트 프로토콜
그로스 관점에서 실전 프로토콜을 정리한다. 핵심은 '도구를 먼저 고정하고, 고정한 도구로만 추이를 본다'다.
1. 의도(intent) 단위로 설계하고, 표현은 변이로 묶는다
측정의 기본 단위는 '질문 문장'이 아니라 '구매 의도'다. 의도 하나에 실사용자 표현 변이를 3~5개 붙여 한 묶음으로 본다. 표현 변이는 영업·CS 로그, 실제 검색어, 고객 인터뷰에서 길어 올린다(상상으로 짜지 말 것 — 그러면 패턴 3에 빠진다).
2. 깔때기 단계로 층을 나눈다
TOFU/MOFU/BOFU를 분리해 각각 SOV를 낸다. 퍼포먼스 마케터에게 이건 자연스럽다 — 인지·고려·전환을 한 지표로 합치지 않는 것과 같다. 단계별로 처방도 다르다. TOFU 약세는 카테고리 콘텐츠 부재, BOFU 약세는 비교 콘텐츠·근거 부재 신호다.
3. 브랜드 질문은 '컨트롤'로만 쓴다
브랜드명 포함 질문을 측정에서 완전히 빼라는 게 아니다. 별도 '컨트롤 그룹'으로 격리한다. 브랜드 질문에서조차 우리가 안 나온다면 그건 기초 위생 문제(robots.txt 차단, 스키마 부재)다 — AI 크롤러(GPTBot·OAI-SearchBot·PerplexityBot·ClaudeBot·anthropic-ai·Google-Extended)가 robots.txt에서 막혀 있으면 후보 진입조차 못 한다. 이건 카테고리 경쟁(논브랜드 세트)과 분리해서 봐야 한다.
4. 세트를 동결(freeze)하고 버전을 매긴다
일단 합의된 질문 세트는 동결한다. 추이를 보려면 자(도구)가 매번 같아야 한다. 세트를 바꿔야 할 때는 새 버전(v2)으로 명시하고, 비교 시점에는 v1과 v2를 겹쳐 측정해 '점프가 진짜 변화인지 도구 교체 효과인지'를 분리한다. 이건 어트리뷰션에서 측정 모델을 바꿀 때 과거·신규 모델을 병행 집계하는 것과 같은 원칙이다.
5. 다중 실행 + 신뢰구간으로 보고한다
의도×엔진마다 최소 수 회 반복하고, 단일 숫자가 아니라 범위로 보고한다.
- ❌ "이번 주 SOV 34%"
- ✅ "BOFU 의도 세트, ChatGPT SOV 31~37%(3회, 95% 신뢰구간). 전주 22~27% 대비 상향 — 구간이 겹치지 않아 유의한 개선으로 판단"
6. 가시성은 2차 지표임을 잊지 않는다
마지막으로 가장 중요한 그로스 원칙. SOV는 그 자체가 목적이 아니라 매출·리드를 설명하는 2차 지표다(Overdrive의 CFO식 측정 관점). 질문 세트를 정교하게 짜는 이유도 결국 '어떤 의도에서 보이는 것이 실제 유입·전환으로 이어지는가'를 추적하기 위해서다. 일부 분석에서는 AI 검색 유입의 전환율이 일반 검색보다 몇 배 높게 나타나기도 하는데, 그렇다면 BOFU 의도 세트의 SOV 개선이 다른 단계보다 매출 기여가 클 가능성이 있다. 질문 세트를 깔때기 단계로 나눠 두면 '어느 단계의 가시성이 돈이 되는가'를 어트리뷰션과 연결해 볼 수 있다.
SMR·SOV 변형 지표를 만날 때의 체크리스트
일부 국내 업체는 SOV의 변형으로 SMR(Share of Model Response) 같은 지표를 쓴다. 이름이 무엇이든, 그 숫자를 받았을 때 던질 질문은 똑같다.
- 질문 세트는 몇 개이고, 어떻게 선정됐나? (브랜드 함정·유도 질문 점검)
- 표현 변이를 묶었나, 단일 표현인가?
- 깔때기 단계가 섞였나, 분리됐나?
- 엔진별로 분해됐나, 합산됐나?
- 몇 회 실행했고, 신뢰구간이 있나?
- 세트가 동결돼 추이가 같은 자로 측정됐나?
이 여섯 개에 답하지 못하는 가시성 숫자는 'Conductor가 말한 없는 것보다 나쁜 데이터'다. 깔끔한 단일 퍼센트일수록 의심하라.
Citeon은 이 원리를 제품에 담았다
Citeon은 가시성을 '예쁜 한 숫자'로 보여주는 도구가 아니라, 질문 세트가 곧 측정 도구라는 원칙 위에 만들어졌다. 그래서 우리는 ChatGPT·Gemini·Perplexity·Claude 4개 엔진의 인용을 각각 측정해 SOV로 분해한다 — 합산해서 메커니즘을 가리지 않는다. 어느 엔진에서 왜 이기고 지는지가 보여야 처방이 나오기 때문이다.
또한 사이트 진단엔진으로 robots.txt·스키마 등 '후보 진입' 단계의 기초 위생부터 점검하고(브랜드 질문에서조차 안 보이는 원인), 경쟁사 역추적으로 같은 카테고리 질문에서 누가 어떻게 인용되는지를 비교한다. 주간 모니터링 추이는 동일한 측정 조건으로 시간에 따른 변화를 추적해, 단발성 노이즈가 아닌 진짜 추세를 본다.
당신의 브랜드가 어떤 질문에서 보이고 어디서 사라지는지부터 정직하게 확인하고 싶다면, Citeon 무료 진단(₩0)으로 시작하라. 질문 세트가 휘어 있으면 그 위에 쌓은 모든 마케팅 의사결정이 함께 휜다.
자주 묻는 질문
질문 세트는 몇 개가 적당한가요?
'몇 개'보다 '몇 의도'가 먼저다. 핵심 구매 의도를 깔때기 단계별로 추린 뒤(보통 TOFU/MOFU/BOFU 합쳐 10~30 의도), 각 의도에 실사용자 표현 변이를 3~5개 붙이고, 엔진별·다중 실행을 곱한다. 적은 의도라도 변이·엔진·반복으로 신뢰구간을 확보하는 편이, 단일 표현 질문 100개를 1회씩 던지는 것보다 훨씬 신뢰도가 높다.
브랜드명을 넣은 질문으로 측정하면 안 되나요?
금지가 아니라 '격리'다. 브랜드 질문은 별도 컨트롤 그룹으로 둔다. 거기서조차 우리가 안 나오면 robots.txt 차단·스키마 부재 같은 기초 위생 문제이므로 먼저 고쳐야 한다. 다만 카테고리 경쟁력(시장 점유)을 재는 논브랜드 세트와는 절대 섞지 마라. 섞으면 SOV가 과대평가되어 의사결정을 오도한다.
여러 엔진 결과를 하나의 SOV로 합쳐 보고해도 되나요?
권하지 않는다. 인용 패턴 분석에서 ChatGPT와 Perplexity의 인용 도메인 중복은 약 11%에 불과하고 인용의 약 90%가 엔진마다 다르다. 엔진별 retrieval 소스와 보수성이 다르기 때문에, 합산 평균은 '어디서 왜 지는가'를 가려 처방을 불가능하게 만든다. 같은 질문 세트를 던지되 결과는 엔진별로 나란히 보라.
측정할 때마다 숫자가 조금씩 다른데 도구가 잘못된 건가요?
도구 문제가 아니라 LLM의 본질적 비결정성이다. temperature=0에서도 GPU 연산·배치 때문에 결과가 흔들린다(한 분석에서 2,350억 파라미터급 모델 1,000회에 80가지 출력). 그래서 단일 측정은 노이즈로 보고, 다중 실행 후 신뢰구간으로 보고해야 한다. 전주 대비 변화가 유의한지는 두 구간이 겹치는지로 판단한다.
질문 세트를 한번 정하면 영원히 못 바꾸나요?
바꿀 수 있지만 버전 관리해야 한다. 자(도구)를 바꾸면 추이의 연속성이 끊기기 때문이다. 세트를 개정할 때는 v2로 명시하고, 전환 시점에 v1과 v2를 겹쳐 측정해 '점프가 진짜 변화인지 도구 교체 효과인지'를 분리한다. 어트리뷰션 모델을 교체할 때 과거·신규 모델을 병행 집계하는 것과 같은 원칙이다.
참고자료
- Lewis et al. 2020 — Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
- Karpukhin et al. 2020 — Dense Passage Retrieval for Open-Domain QA
- Liu et al. 2023 — Lost in the Middle: How Language Models Use Long Contexts
- Aggarwal et al. 2023 (KDD 2024) — GEO: Generative Engine Optimization
- AI 가시성 불확실성 정량화 — 멱법칙·부트스트랩 신뢰구간 연구
- Conductor — Debunking AI Prompt Volume
