요약
인기 검색어 리포트는 실제 검색이 아닌 OpenSearch URL 템플릿 플레이스홀더(예: {searchTerms})로 인해 오염되고 있습니다. 이로 인해 대시보드가 오해를 불러일으킬 수 있으며, {searchTerms}가 0% CTR로 1위 "검색어"로 표시되는 경우가 많습니다.
또한, AI를 매개로 한 브라우징이 증가함에 따라 검색 분석에서 AI 에이전트가 시작한 검색을 선택적으로 별도로 태그하는 것이 유용할 것입니다.
문제 1: SearchLog의 OpenSearch 플레이스홀더 노이즈
제 사이트에서는 {searchTerms}가 #1 인기 검색어로 나타나며, 수천 개의 항목과 0% CTR을 기록하고 있습니다. 이러한 항목은 크롤러/봇(예: Googlebot, Bingbot 등)이 /opensearch.xml을 크롤링하고 실제 쿼리가 아닌 리터럴 플레이스홀더 문자열로 검색 엔드포인트를 호출할 때 발생합니다.
이전에 논의된 바 있습니다:
하지만 여전히 플레이스홀더 용어가 분석에 표시됩니다.
재현 단계
- 사이트에서 OpenSearch(예:
/opensearch.xml)를 활성화/서빙합니다. - 크롤러의 접근을 허용합니다(기본 공개 동작).
- 크롤러가 OpenSearch 템플릿을 가져오고 검색 엔드포인트를 호출할 때까지 기다립니다.
- 관리자 → 리포트 → 인기 검색어를 봅니다.
{searchTerms}와 같은 플레이스홀더 값이 리포트를 지배하는 것을 관찰합니다.
기대 동작
OpenSearch 클라이언트가 사용하는 플레이스홀더/템플릿 문자열은 실제 검색으로 기록되어서는 안 되며, 인기 검색어에 표시되지 않아야 합니다.
실제 동작
플레이스홀더 문자열(예: {searchTerms})이 SearchLog에 저장되어 실제 검색어로 표시되며, 분석 데이터를 오염시킵니다.
제안된 수정 사항
SearchLog에 기록하기 전에 알려진 OpenSearch 플레이스홀더 문자열을 필터링하십시오. 예를 들어:
{searchTerms}{search_term_string}
(다른 일반적인 변형이 있다면 추가해도 무방합니다.)
이것은 본질적으로 "봇 노이즈"이며, 결코 적법한 인간 쿼리가 될 수 없으며, 리포트의 유용성을 해칩니다.
더 큰 기회: AI 시대의 검색 분석 (선택 사항 / 중장기)
{searchTerms} 문제는 더 넓은 공백을 강조합니다: 점점 더 많은 검색이 사용자를 대신한 AI 에이전트에 의해 수행되고 있습니다(예: 사용자가 어시스턴트에게 "이 포럼에서 X를 검색해 줘"라고 요청할 때). 이러한 검색은 실제 사용자 의도를 나타낼 수 있지만, 현재는 모든 다른 트래픽과 혼합되어 이해하기 어렵습니다.
중기 (선택 사항)
User-Agent 휴리스틱을 사용하여 AI 에이전트가 시작한 것으로 추정되는 검색에 태그를 지정합니다(예시만):
- ChatGPT 브라우징 / 에이전트 UA 변형
- Perplexity 봇
- Claude 관련 에이전트
- Google AI 관련 UA (예:
GoogleOther등)
이것은 완벽할 필요가 없습니다—관리자에게 가시성을 제공하기 위해 충분히 좋으면 됩니다.
장기 (선택 사항)
인기 검색어 리포트에 “AI 검색” 필터/탭을 추가하여 관리자가 다음을 볼 수 있게 합니다:
- 인간 검색
- AI 에이전트 검색
- 전체 합산
왜 이것이 중요한가
- 플레이스홀더 오염은 대시보드의 신뢰성을 떨어뜨리고 “인기” 순위를 지배할 수 있습니다.
- 관리자가 분석을 수동으로 정리하거나 손상된 상위 항목을 무시해야 하는 상황이 없어야 합니다.
- AI 매개 검색 트래픽은 증가하고 있으며, 사이트 소유자는 이러한 의도에 대한 가시성에서 이익을 얻습니다.