Keyword Cockpit v2.0, 구글 키워드 검색을 붙이고 기능 4개를 내린 기록

구글 키워드 검색 데이터를 도구에 붙이는 데 두 달이 걸렸다. Google Ads API 승인을 받고 화면을 좌우 대칭으로 갈아엎은 뒤 9월 8일에 v2.0을 배포했다. 이때 주력 기능 네 개를 스스로 내렸다.

이 글은 Keyword Cockpit v2.0의 기능 목록이 아니다. 무엇이 늘었고 무엇이 사라졌는지, 왜 멀쩡해 보이는 기능을 내리기로 했는지를 적은 기록이다. 혼자 만들고 혼자 운영하는 도구라 잘못된 판단도 그대로 남는다.

구글 키워드 검색을 도구에 붙이기까지

네이버 하나만 보는 도구의 한계

v1.7까지는 네이버 검색광고 데이터만 썼다. 구글 키워드 검색 쪽은 아예 창구가 없었다. 그런데 이 블로그는 워드프레스이고 유입은 구글에서 온다. 네이버 검색량 710회인 표현이 구글에서는 클릭을 한 건도 만들지 않았고, 네이버에서 조회조차 해본 적 없는 표현이 실제 유입을 만들었다.

같은 도구를 쓰면서도 어느 검색엔진 기준으로 판단하는지가 빠져 있었다. 구글 키워드 검색 데이터가 필요했던 이유가 여기 있다. 네이버 수치로 구글 유입을 예측하려던 두 달을 흘려보낸 뒤였다.

Google Ads API 승인 절차

Basic Access 권한을 받기까지 MCC 계정 개설, 개발자 토큰 신청, OAuth 인증, 브랜드 확인을 차례로 거쳤다. 한 번에 통과하지 못하고 보완 요청을 받아 다시 제출했다. 7월 하순에 검토를 시작해 8월 중순에 승인이 났다.

구글 키워드 검색에서 가져오는 데이터는 네 가지다. 월간 검색량 구간, 경쟁도 지수, 페이지 상단 입찰가, 12개월 계절성이다. 구글은 정확한 검색량 대신 구간으로 준다. 10에서 100, 100에서 1000 같은 형태다. 네이버가 주는 정확한 수치에 익숙하다보니 처음엔 답답하게 느껴지기도 했다.

구글 키워드 검색량 구간과 경쟁도 지수 화면
구글은 검색량을 10~100 같은 구간으로 준다.

두 검색엔진을 같은 줄에 놓았다

화면은 좌우 대칭으로 다시 짰다. 왼쪽이 네이버, 오른쪽이 구글이고 같은 성격의 지표를 같은 행에 둔다. 검색량은 검색량끼리, 경쟁도는 경쟁도끼리, 연관 키워드는 연관 키워드끼리 나란히 놓인다. 눈이 위아래로 헤매지 않고 좌우로만 움직이게 하는 것이 목적이었다.

게이지는 일부러 서로 다르게 그렸다. 네이버 경쟁도는 15칸 개수 게이지, 구글 경쟁도는 위치 마커다. 산출 근거가 다른 값인데 같은 모양으로 그리면 직접 빼서 비교해도 되는 값처럼 보인다. 실제로 네이버는 노출 광고 수를, 구글은 광고주 밀도를 센다. 구글 키워드 검색 지표를 네이버 옆에 놓을 때 가장 신경 쓴 부분이 이 지점이었다.

구글 키워드 검색과 네이버 지표를 나란히 보여주는 통합 보기 화면
왼쪽 네이버, 오른쪽 구글. 같은 성격의 지표를 같은 행에 뒀다.

배포 일주일 만에 기능 네 개를 내렸다

블로그 상위 10에 네이버 블로그가 없었다

8월 중순에 이상한 화면을 봤다. 키워드로 조회한 네이버 블로그 상위 10에 네이버 블로그가 하나도 없었다. 전부 다른 플랫폼 글이었다. 네이버 검색창에 같은 키워드를 넣으면 네이버 블로그가 멀쩡히 상위에 있었다.

처음에는 코드를 의심했다. 블로그 아이디를 뽑아내는 부분에 버그가 있다고 생각했다. 그런데 화면만 보고 추정하는 대신 응답을 직접 세어보기로 하고 진단 스위치를 넣었다.

응답 100건 중 0건이었다

호스트 분포를 집계해보니 성격이 다른 두 키워드 모두 상위 100건 안에 네이버 블로그가 0건이었다. 실제 네이버 검색에서 4위에 있는 글도 API 결과 100건에 들어 있지 않았다.

네이버 블로그 검색 API의 정확도순 정렬이 실제 검색 노출 순서와 크게 어긋나고 있었다. 코드 문제가 아니라 데이터 문제였다. 내가 고칠 수 있는 종류의 문제가 아니었다는 뜻이다.

조사 과정에서 네이버가 검색 API를 클라우드 쪽으로 이관했다는 사실도 함께 알게 됐는데, 네이버 검색 API가 달라진 과정은 따로 정리해두었다.

틀린 순위는 없는 게 낫다

여기서 판단이 필요했다. 순위를 그대로 보여줄지, 내릴지였다.

내리기로 했다. 순위가 없으면 사용자는 다른 방법을 찾지만, 틀린 순위를 보면 그걸 믿고 판단한다. 도구를 쓰는 이유가 감 대신 숫자로 판단하기 위해서인데, 숫자가 틀리면 감보다 나쁘다. 순위 카드 하나를 살리려다 도구 전체의 신뢰를 잃을 수 있었다.

내린 기능은 네 가지다. 네이버 블로그 상위 10, 키워드 노출 순위, 포스팅 지수, 내 포스팅 검색 보강이다.

노출 레이더 지수는 100점 중 45점이 순위 기반이라 순위 없이 계산하면 잘 쓴 글도 0.55 이하로 눌린다. 그래서 지수 산정 자체를 멈췄다.

코드는 지우지 않고 한두 줄로 우회하게 막았다. 정상화되면 되돌리기 위해서다.

네이버 순위 기능 중단 안내 문구
도구 화면에 중단 사유를 그대로 적어뒀다.

빈자리를 발행 현황으로 메웠다

순위를 못 보게 되자 경쟁 강도를 잴 방법이 없어졌다. 그래서 발행 현황 카드를 새로 만들었다.

이 키워드로 오늘 몇 건이 올라왔는지, 100건이 쌓이는 데 얼마나 걸리는지, 1000건 기준으로는 어떤지를 보여준다. 순위가 없어도 이 세 값이면 자리가 얼마나 붐비는지는 읽힌다. 100건이 차는 데 15시간이면 하루도 못 버티고 밀려난다는 뜻이다. 두 값을 나란히 보면 발행 속도가 최근 변했는지도 읽힌다.

여기에 기회 지수를 얹었다. 월간 검색량을 30일 환산 발행량으로 나눈 값이다. 편당 100회가 넘으면 매우 좋음, 10회 미만이면 포화다. 검색량만 보면 큰 키워드에 끌리는데 이 값이 그 함정을 걷어낸다.

추가 API 호출 없이 이미 가진 두 값의 나눗셈으로 만들었다. 구글 키워드 검색 구간이 넓어 정밀도가 떨어지는 만큼, 이 값은 네이버 수치를 기준으로 계산한다.

네이버 발행 현황과 기회 지수 카드
100건이 3.5일, 1,000건 발행은 25일 소요. 기회 지수는 포화.

혼자 만들면서 놓친 것들

승인받은 API가 운영에서 돌아간 적이 없었다

9월 8일에 운영 도메인으로 승격하면서 세 가지를 발견했다. 가장 심각한 것은 운영 설정 파일에 구글 API 라우트가 아예 없었다는 점이다.

그대로 올렸으면 구글 키워드 검색 기능이 통째로 죽었을 것이다. 두 달을 들여 승인받은 API가 운영 환경에서는 한 번도 동작한 적이 없었다는 뜻이기도 하다. 개발 환경에서만 확인하고 운영 설정은 대조하지 않았다. 구글 키워드 검색 기능을 붙이는 데만 신경을 쓰고 배포 경로는 살피지 않은 것이다.

같은 자리에서 robots.txt 파일명이 단수형으로 잘못 올라가 있는 것과, 사이트맵 최종 수정일이 두 달 가까이 갱신되지 않은 것도 함께 나왔다. 이런 사소한 실수를 하다니.

한 방향만 검증한 것

구글 모드에서 네이버 호출이 나가지 않아야 하는데, 나는 구글 호출이 안 나가는 것만 확인했다. 네이버 쪽은 세지 않았다. 그래서 구글 모드인데 네이버 API가 호출되는 비대칭을 한동안 놓쳤다.

이후로는 API별 카운터를 두고 양방향으로 센다. 나가지 않아야 할 호출이 나가는지도 함께 세야 검증이 끝난다. 그리고 9월 10일 Admin 화면을 수정해, 이를 함께 모니터링하기 시작했다.

도구 운영 관리자 통계 화면
키워드 검색 후 네이버, 구글, 통합 보기 간 소스 전환 빈도 체크

일괄 치환이 코드를 바꿔놓은 것

이모지를 걷어내면서 공백을 정리하는 정규식을 돌렸다. 그 과정에서 부등호 뒤 공백이 사라져 코드 한 줄이 바뀌었다. 코드 오류가 없어서 문제가 없을 줄 알았는데, 역시 꼼꼼히 살펴봐야 하는 자세는 방심하면 안되는 것.

일괄 치환 뒤에는 원본과 줄 단위로 대조하기로 했다. CSS 파일을 통째로 덮어써 디자인 작업이 날아간 적도 있어서, 이후로는 추가분만 별도로 맨 아래에 붙이는 습관을 들이기로 했다. 이후로는 계속 그러고 있다.

자주 묻는 질문

구글 키워드 검색량은 왜 정확한 숫자가 아닌가요?

Google Ads 키워드 플래너가 구간 단위로 제공하기 때문입니다. 10에서 100, 100에서 1000 같은 형태입니다. 네이버는 정확한 수치를 주므로 두 값을 직접 비교하기보다 각 검색엔진 안에서의 상대적 수준으로 읽는 편이 맞습니다. 구간 표기는 구글 키워드 검색 데이터의 원래 제공 방식입니다.

네이버 순위 기능은 언제 복구되나요?

정해진 시점은 없습니다. 네이버 블로그 검색 API의 정확도순 결과가 실제 노출 순서와 맞아떨어지는지 주기적으로 확인하고 있습니다. 정상화되는 대로 복구할 계획이고, 코드는 지우지 않고 남겨두었습니다.

순위 없이 경쟁 강도를 어떻게 판단하나요?

네이버 블로그 발행 현황 카드를 보시면 됩니다. 이 키워드로 글이 얼마나 빠르게 쌓이는지가 경쟁 강도를 대신합니다. 100건이 차는 데 걸린 시간이 짧을수록 새 글이 금방 밀려납니다. 그리고 구글은 관련하여 제공하는 API 없어서 기능 추가는 하지 않았습니다.

두 검색엔진 데이터를 동시에 봐야 하나요?

주력 유입원이 어디인지에 따라 다릅니다. 네이버 블로그만 운영한다면 네이버 지표로 충분합니다. 워드프레스나 티스토리처럼 구글 유입이 섞인다면 구글 키워드 검색 데이터를 함께 보는 편이 판단에 도움이 됩니다. 저는 처음에 네이버와 구글 키워드 검색에서 그 양의 차이가 크지 않을 줄 알았는데, 의외로 큰 차이를 확인하게 됐습니다.

구글 키워드 검색 데이터를 붙이면서 화면이 넓어졌지만 동시에 네이버 순위 기능은 전부 내려놓았다. 더한 것과 뺀 것이 거의 같은 무게였다. 남은 과제도 그대로 있다. 순위 복구 판단, 레이더 두 탭 분리, 블로그 주소 직접 입력이 대기 중이다. 도구를 만드는 일은 기능을 더하는 것보다 어디까지 신뢰를 줄 수 있는 지가 중요하다는 생각이다.

v2.0은 Keyword Cockpit에서 바로 써볼 수 있다

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤