방법 · 업데이트 2026-11-07

데이터 출처와 측정 방법

seops는 다른 서비스에서 읽어 오거나 직접 측정한 숫자를 보여 줍니다. 모듈마다 출처, 읽는 주기, 지연, 계산 방식, 그리고 그 숫자로 판단하기 전에 알아야 할 한계를 정리했습니다. 시간은 이스탄불 시간(UTC+3)입니다.

Google Search Console

출처
Search Console Search Analytics API. 속성에 추가한 읽기 전용 seops 서비스 계정으로 읽습니다.
주기
보고서를 열 때. 1시간 캐시(오늘과 어제의 시간별 보기는 15분).
지연
Google은 일일 합계를 2~3일 늦게 공개합니다. seops는 최신 데이터도 요청하므로 최근 며칠은 불완전하고 아직 바뀝니다.

계산 방식

  • 클릭수, 노출수, 평균 순위는 Google의 수치이며 seops가 다시 계산하지 않습니다. CTR은 클릭수를 노출수로 나눈 값입니다.
  • 평균 순위는 Google의 정의 그대로, 각 검색에서 사이트의 가장 높은 순위를 노출수로 평균한 값입니다.
  • 기회 검색어는 같은 데이터에서 걸러 냅니다. 순위 4~20, 노출이 많고 CTR이 낮은 검색어와 그 노출을 받은 페이지입니다.
  • Search Console의 하루는 태평양 시간 기준이며, 오늘과 어제의 시간별 보기는 내 시간대로 보여 줍니다.

주의할 점

  • Google은 개인정보 보호를 위해 매우 드문 검색어를 제외합니다. 그래서 검색어 행의 합계는 사이트 전체 합계보다 작습니다.
  • seops는 28일 동안 클릭 50회 미만 또는 노출 500회 미만을 작은 표본으로 봅니다. 클릭 몇 번이 큰 비율 변화처럼 보일 수 있습니다.
  • Search Console은 AI 개요(AI Overview) 노출을 웹 검색 합계에 포함하며 따로 보고하지 않습니다.

검색 순위

출처
Search Console: 추적 키워드(검색어와 정확히 일치)별, 날짜·기기별 노출수 가중 평균 순위.
주기
매일 06:00(03:00 UTC). 매번 최근 10일을 다시 기록합니다.
지연
Search Console과 같습니다. 가장 최근 2~3일은 불완전합니다.

계산 방식

  • 사이트당 최대 200개 키워드. 데스크톱과 모바일을 따로 기록하며 태블릿은 모바일로 셉니다.
  • 순위는 100위까지 기록합니다. 그 키워드의 노출이 없었던 날에는 순위가 없습니다.
  • Search Console과 Bing 순위는 크레딧을 쓰지 않습니다.

주의할 점

  • 이 값은 내 페이지가 노출된 모든 검색의 평균이며, 한 장소에서 한 번 확인한 결과가 아닙니다. 같은 단어로 검색해도 사람마다 결과가 다를 수 있습니다.
  • 자체 인프라에서 실제 Google 순위를 매일 확인하는 기능이 곧 제공되며 팩 크레딧으로 실행됩니다. 그전까지 seops의 순위는 Search Console과 Bing에서만 옵니다.

Bing과 Yandex

출처
Bing Webmaster Tools API(내 API 키)와 Yandex Webmaster API(내 OAuth 토큰).
주기
백그라운드에서 읽고 12~24시간 캐시합니다.
지연
검색엔진마다 고유한 지연이 있으며 seops가 줄일 수 없습니다.

계산 방식

  • Bing 순위는 Bing이 보고하는 평균 노출 순위이며, 행을 합칠 때는 노출수로 가중합니다.
  • Yandex: 클릭, 노출, 검색어, 색인, 사이트 문제를 Yandex가 보고한 그대로 보여 줍니다.

주의할 점

  • Bing과 Yandex 수치는 Google과 직접 비교할 수 없습니다. 노출과 순위를 세는 방식이 검색엔진마다 다릅니다.

Google 애널리틱스 4

출처
Google Analytics Data API. 같은 서비스 계정(뷰어 역할)으로 읽습니다.
주기
보고서를 열 때. 1시간 캐시(오늘은 5분). 실시간 방문자는 30초마다 새로 고칩니다.
지연
Google에 따르면 GA4 데이터 처리는 24~48시간 걸릴 수 있어 오늘과 어제의 숫자는 아직 늘어날 수 있습니다.

계산 방식

  • 집계 보고서만: 사용자, 세션, 참여, 주요 이벤트, 채널, 방문 페이지, 기기, 도시. 사용자 단위 데이터는 없습니다.
  • AI 어시스턴트 트래픽은 소스가 ChatGPT, Perplexity, Gemini, Claude, Copilot, DeepSeek, Grok, Meta AI 등과 일치하는 세션입니다.

주의할 점

  • 어시스턴트 방문은 브라우저가 리퍼러나 utm_source를 보낼 때만 인식되며, 없으면 직접 유입으로 표시됩니다.
  • GA4 자체의 데이터 기준점과 샘플링이 seops가 읽는 데이터에도 적용됩니다.

seops Analytics

출처
내 사이트의 seops 스크립트(2.1KB, 압축 시 1.2KB). i.seops.app으로 보내져 Cloudflare Analytics Engine에 저장됩니다.
주기
실시간. 전날 요약을 매일 03:30에 기록합니다.
지연
원시 데이터는 몇 초.

계산 방식

  • 페이지뷰마다 요청 1회, 페이지를 떠날 때 체류 시간과 스크롤 깊이, 그리고 내가 보내는 이벤트.
  • 쿠키 없음, 브라우저 저장소 없음, 영구 식별자 없음. 같은 날의 방문자는 일일 솔트, IP 주소, 사용자 에이전트, 사이트 키의 해시로 구분합니다. 각 날의 솔트는 그날이 끝나고 이틀 뒤에 삭제되며 원본 IP는 저장하지 않습니다.
  • 알려진 봇과 크롤러는 봇으로 기록하고 보고서에서 제외합니다. localhost와 자동화 브라우저에서는 아무것도 보내지 않습니다.
  • 쿼리 문자열은 보내지 않습니다. 예외는 UTM 태그, 광고 클릭 ID의 존재 여부(값은 아님), 허용한 사이트 내 검색 매개변수입니다.

주의할 점

  • 같은 사람이 이틀에 걸쳐 방문하면 방문자 2명으로 셉니다. 날짜를 넘는 재방문자는 설계상 없습니다.
  • 일부 광고 차단기는 스크립트를 차단합니다. 숫자는 측정값이지 감사 결과가 아닙니다.
  • 최근 90일은 원시 데이터에서, 더 긴 기간은 일일 요약(목록당 상위 200개)에서 가져옵니다. 데이터가 매우 많으면 저장 계층이 샘플링할 수 있으며 합계에서 보정합니다.

AI 가시성

출처
ChatGPT, Claude, Gemini, Perplexity에 Cloudflare AI Gateway를 거쳐 실시간 웹 검색을 켠 상태로 직접 질문합니다.
주기
매주: 매주 월요일 07:00부터 활성 프롬프트를 선택한 엔진마다 대기열에 넣고, 답변은 30분마다 묶어서 처리합니다. 프롬프트 하나를 바로 실행할 수도 있습니다.
지연
실행 외의 지연은 없습니다. 엔진이 답을 돌려주는 즉시 저장합니다.

계산 방식

  • 사이트당 최대 20개 프롬프트. 프롬프트 × 엔진 하나가 답변 하나이며, 출처와 모델이 실행한 검색과 함께 전문을 저장합니다.
  • ChatGPT는 웹 검색이 켜진 OpenAI Responses API, Claude는 웹 검색이 켜진 Anthropic Messages API(검색 최대 3회), Gemini는 Google 검색 그라운딩, Perplexity는 Sonar로 실행됩니다. API가 받는 경우 프로젝트의 국가를 대략적인 위치로 보내며, 모델 이름은 답변마다 저장합니다.
  • 언급: 브랜드 용어나 도메인이 답변 본문에 온전한 단어로 나타나는 경우입니다. 대소문자와 악센트 차이는 무시합니다. 도메인의 첫 부분이 5글자 이상이면 그것도 셉니다.
  • 인용: 도메인이나 하위 도메인이 답변의 출처 목록에 있는 경우입니다. 인용 순위는 엔진이 돌려준 순서대로 그 목록에서의 위치이며 첫 번째가 1입니다. Gemini의 Google 리디렉션 링크는 먼저 실제 주소로 바꿉니다.
  • 언급률과 인용률은 기간 내 답변 중 언급이나 인용이 있는 답변의 비율입니다.
  • 답변마다 팩 크레딧을 씁니다. 크레딧이 부족하면 기다렸다가 다음 날 다시 시도하고, 일주일이 지나면 새 주의 실행으로 바뀝니다. 실패한 답변은 최대 3번 시도합니다.

주의할 점

  • 답변은 표본이며 모든 사람의 경험을 측정한 값이 아닙니다. 프롬프트와 엔진마다 일주일에 답변 하나입니다. 같은 질문도 1분 뒤에는 다른 답을 받을 수 있습니다.
  • 답변은 웹 검색이 켜진 제공업체 API에서 오며, 로그인한 사람이 쓰는 앱의 답변이 아닙니다. 메모리, 개인화, 앱 기능이 다릅니다.
  • 언급 판정은 글자 그대로 일치하는지 봅니다. 철자가 틀린 브랜드나 이름 없이 설명된 브랜드는 세지 않으며, 흔한 단어를 브랜드 용어로 쓰면 많이 셀 수 있습니다.
  • 프롬프트 20개와 엔진 4개라면 답변 하나가 비율을 1%p 넘게 움직입니다. 추세는 몇 주에 걸쳐 보세요.

Cloudflare

출처
Cloudflare GraphQL Analytics API와 REST API. 영역(zone)용으로 만든 읽기 전용 API 토큰을 씁니다.
주기
보고서를 열 때. 30분~1시간 캐시합니다.
지연
Cloudflare 데이터는 거의 실시간이며, seops가 더하는 지연은 최대 캐시 시간뿐입니다.

계산 방식

  • 보안 이벤트: 방문자 요청을 보안 조치와 출처(WAF, 속도 제한, 봇 규칙)별로 국가, 경로와 함께 묶습니다.
  • AI 크롤러: 요청을 사용자 에이전트와 Cloudflare가 취한 조치별로 묶습니다.
  • 엣지 오류: 최근 7일 동안 방문자에게 돌아간 4xx·5xx 응답, 경로별 캐시 상태.
  • 실사용자 Core Web Vitals: 사이트에 Cloudflare Web Analytics가 켜져 있으면 최근 28일의 페이지·기기별 LCP, INP, CLS 75번째 백분위수.
  • 계정의 Workers, D1, R2 사용량.

주의할 점

  • Cloudflare의 적응형(adaptive) 데이터셋은 양이 많으면 샘플링됩니다. 수치는 Cloudflare가 확대 추정한 값이라 작은 숫자는 크게 튈 수 있습니다.
  • Cloudflare를 거친 트래픽만 보입니다. 크롤러는 보낸 사용자 에이전트로 세며, Cloudflare의 검증된 봇 표시는 있을 때 보여 줍니다.
  • Web Analytics 데이터는 브라우저가 비콘을 실행한 방문자에 대해서만 있습니다.

페이지 속도

출처
Google PageSpeed Insights API: Lighthouse 실험실 측정과, Google에 데이터가 있으면 Chrome UX 보고서(CrUX) 필드 데이터.
주기
홈페이지와 중요한 페이지(기본 10개, 20개나 50개 선택 가능)를 모바일과 데스크톱에서 측정합니다. 각 페이지는 10분마다 도는 배치로 7일마다 다시 측정합니다.
지연
실험실: 측정한 시점. 필드(CrUX): 최근 28일 실제 Chrome 사용자의 75번째 백분위수.

계산 방식

  • 중요도는 Google 클릭수로 페이지를 정렬하고, 노출수와 Analytics 세션으로 보완합니다. Search Console이 없으면 사이트맵 앞부분을 씁니다.
  • 평가: 페이지 자체의 필드 데이터(LCP, INP, CLS)가 있으면 그것을, 없으면 실험실 값을 쓰며 INP 대신 TBT를 씁니다.
  • 페이지 자체의 필드 데이터가 없으면 CrUX가 출처(origin) 전체 값을 줄 수 있으며, 패널은 이를 출처 데이터로 표시합니다.
  • 측정 1회(페이지 × 기기)에 사이트 크레딧 2개를 씁니다.

주의할 점

  • 실험실 점수는 네트워크와 서버 부하에 따라 측정할 때마다 달라집니다. 한 번의 결과가 아니라 추세를 비교하세요.
  • Chrome 트래픽이 적은 페이지에는 필드 데이터가 없습니다.
  • 측정이 두 번 연속 실패하면 알림이 생깁니다. 403은 대개 WAF 규칙이 PageSpeed를 막고 있다는 뜻입니다.

사이트 감사

출처
seops 자체 크롤러(사용자 에이전트 seopsBot/1.0)가 사이트맵의 URL을 가져옵니다.
주기
각 페이지는 7일마다 다시 점검합니다. 10분마다 배치로 돌며 사이트당 부하는 초당 1요청보다 훨씬 낮게 유지합니다.
지연
없음: 점검 시점에 서버가 돌려준 내용입니다.

계산 방식

  • 사이트맵은 robots.txt의 Sitemap 줄에서, 없으면 /sitemap.xml에서 가져오며 사이트맵 색인 파일도 따라갑니다.
  • 점검 항목: 상태 코드, 리디렉션, noindex(메타 태그와 X-Robots-Tag), 제목(없음, 20자 미만 또는 65자 초과, 중복), 메타 설명(없음, 70자 미만 또는 165자 초과, 중복), H1(없음 또는 여러 개), canonical(없음 또는 다른 주소를 가리킴), JSON-LD 유무, 얇은 콘텐츠(250단어 미만), 느린 응답(2초 초과).
  • 403, 429, 503은 차단됨으로 보고합니다. 대개 WAF나 속도 제한 규칙입니다.
  • 점검한 페이지마다 사이트 크레딧 1개. 제외한 경로는 크롤링하지 않습니다.

주의할 점

  • 크롤러는 서버가 보낸 HTML을 읽고 JavaScript는 실행하지 않습니다. 스크립트 실행 후에만 나타나는 콘텐츠는 보지 못합니다.
  • 사이트맵의 URL만 점검하며, 사이트맵에 없는 페이지를 링크를 따라가 찾지 않습니다.
  • 길이 기준은 참고값이지 Google 규칙이 아닙니다.

색인

출처
Google에는 Search Console URL 검사 API, Bing, Yandex 등 참여하는 검색엔진에는 IndexNow.
주기
URL 검사: Google의 사이트당 하루 2,000건 할당량 안에서 10분마다 배치. 각 페이지는 최소 14일마다, 중요한 페이지부터. IndexNow: 자동 제출이 켜져 있으면 사이트맵에서 바뀐 페이지를 하루 한 번 09:00 이후에 제출.
지연
URL 검사는 Google이 알고 있는 마지막 상태를 보여 주며, 최근 크롤링보다 늦을 수 있습니다.

계산 방식

  • 중요도 점수: Google 클릭이 가장 크게 작용하고 노출수와 Analytics 세션이 보완합니다. 상위 20% 페이지가 높음입니다.
  • Search Console에서 색인 생성을 요청한 페이지는 1시간 뒤, 그리고 이후 14일 동안 다시 검사합니다.
  • IndexNow는 먼저 Yandex로 보냅니다(프로토콜상 제출은 다른 검색엔진과 공유됩니다). Yandex가 받지 않으면 Bing에 직접 보내며, 한 번에 최대 500개 URL입니다.
  • Google은 일반 페이지의 색인 생성을 요청하는 API를 제공하지 않습니다. seops는 사이트맵을 제출하고 상태를 확인합니다.

주의할 점

  • URL 검사 결과는 URL 단위이므로 Search Console 페이지 색인 생성 보고서의 합계와 다를 수 있습니다.
  • IndexNow 제출이 받아들여졌다는 것은 URL이 접수됐다는 뜻이지 색인된다는 뜻이 아닙니다.

일정

위의 숫자를 기록하는 백그라운드 작업. 이스탄불 시간(UTC+3).

언제실행 내용
매일 00:00일일 사이트 크레딧과 팩 크레딧이 갱신됩니다(이월 없음).
매일 03:30전날의 seops Analytics 일일 요약.
매일 06:00추적 키워드의 Search Console 순위(최근 10일을 다시 기록).
매일 09:00 이후IndexNow: 자동 제출이 켜져 있으면 사이트맵에서 바뀐 페이지.
10분마다URL 검사, 사이트 감사, 페이지 속도, 접근 점검 배치.
30분마다대기 중인 AI 가시성 답변, 알림, 그 밖의 대기 작업.
월요일 07:00그 주의 AI 가시성 프롬프트를 대기열에 넣고 주간 요약을 작성.
수요일 08:00지난주 요약을 완전한 Search Console 데이터로 다시 작성.

크레딧

Search Console, GA4, Bing, Yandex, Cloudflare 데이터를 읽는 데에는 크레딧이 들지 않습니다. 사이트 감사, 페이지 속도, URL 검사는 무료 일일 사이트 크레딧을 쓰고, AI 가시성 답변은 팩 크레딧으로만 실행됩니다. 작업별 비용은 요금 페이지에 있습니다. 요금 →

사이트 하나로 무료로 시작하세요

첫 사이트는 카드 없이 영구 무료. 추가 사이트는 월 2.50달러입니다.