대부분의 창업자가 SEO에 발을 들이는 방식은 비슷합니다. 유용한 것을 만들고, 배포하고, 기다립니다. 하지만 아무 일도 일어나지 않죠. Letras Diferentes를 운영할 때의 제 모습이 그랬습니다. 인스타그램 바이오, WhatsApp 상태 메시지, 게임 닉네임 등에 붙여넣을 수 있는 장식용 폰트를 만드는 간단한 도구를 만들고자 했습니다. 렌더링 로직, 유니코드 범위, 클립보드 복사 흐름을 연구했습니다. 엔지니어링이 가장 큰 산이라고 생각했습니다. 하지만 알고 보니 가시성(visibility)은 완전히 별개의 산이었습니다. 기능적인 웹사이트와 눈에 띄는 웹사이트는 다릅니다. 배포는 끝이 아니라 시작입니다.
단일 페이지 실험을 검색 중심의 도구 모음으로 발전시키며 배운 점들을 공유합니다.
SEO Is a Product Decision, Not a Checklist
처음에는 검색 최적화를 위생 관리처럼 취급했습니다. 페이지를 완성한 뒤 타이틀 태그에 키워드 몇 개를 끼워 넣고, 메타 설명을 추가하면 작업이 끝났다고 생각했습니다. 페이지는 "최적화"된 상태였죠. 하지만 트래픽은 제자리걸음이었고, 방문자들은 금방 이탈했습니다.
SEO를 단순히 덧칠하는 페인트가 아니라 설계도의 일부로 보기 시작했을 때 진정한 변화가 일어났습니다. SEO는 어떤 도구를 만들지, 그리고 그 도구가 어떻게 작동할지에 영향을 미쳐야 합니다. Letras Diferentes의 경우, 개인적인 호기심이 아니라 실제 검색 행동을 바탕으로 새로운 생성기를 선택하는 것을 의미했습니다. 또한, 단순히 여러 폰트를 모아놓은 것이 아니라 각 도구가 특정 과업(job)을 해결할 수 있도록 구조화하는 것을 의미했습니다. SEO가 로드맵을 주도하면, 문구 한 줄을 쓰기 전부터 모든 새로운 페이지는 존재 이유를 갖게 됩니다. 제품에 사후적으로 가시성을 덧붙이는 것이 아니라, 발견될 수 있도록 제품을 설계하는 것입니다.
One Broad Keyword Is a Trap
초기 저의 집착은 단순했습니다. 바로 letras diferentes라는 키워드로 순위를 올리는 것이었죠. 이 문구는 인기가 많았고, 직접적인 관련성이 있었으며, 사이트 곳곳에 도배되어 있었습니다. 완벽한 타겟처럼 보였죠. 문제는 그것이 세분화된 세그먼트가 아니라 커다란 바구니(bucket)였다는 점입니다.
인스타그램 폰트를 찾는 사람은 복사해서 붙여넣기 좋은 우아함과 빠른 미리보기를 원합니다. 반면 Free Fire 닉네임을 만드는 게이머는 글자 수 제한과 강렬한 스타일링에 신경을 씁니다. 두 사용자 모두 비슷한 검색어를 입력할 수 있지만, 해결하려는 과업은 다릅니다. 모든 사용자를 하나의 일반적인 페이지로 몰아넣었을 때, 그 누구도 제대로 서비스를 받고 있다고 느끼지 못했습니다. 부드러운 감성 폰트를 찾는 십 대들은 날카로운 게임용 글꼴을 보게 되었고, 게이머들은 게임 클라이언트에서 거부될 필기체 스크립트를 보게 되었습니다.
그래서 사이트를 분리했습니다. 모든 의도를 아우르려 애쓰는 무거운 홈페이지 하나 대신, 특정 니즈에 맞춘 집중된 랜딩 페이지들을 구축했습니다. 인스타그램 바이오 폰트용, 게임 닉네임용, 투명 문자용 등 경로를 나누었습니다. 홈페이지도 여전히 중요하지만, 로비 같은 역할을 할 뿐입니다. 진짜 가치는 각 방문자를 위해 맞춤 제작된 방(페이지)에 있습니다. 강력한 홈페이지 하나도 좋지만, 집중된 페이지들의 클러스터가 더 낫습니다. 사람들이 실제로 검색하는 방식의 무질서함에 더 잘 부합하기 때문입니다.
Solve Problems, Not Just Keywords
키워드는 사람들이 무엇을 입력하는지는 알려주지만, 왜 입력하는지는 거의 알려주지 않습니다. 저는 투명 문자(invisible characters)를 통해 이 사실을 뼈아프게 배웠습니다. 검색 데이터는 사람들이 "invisible text"와 "Unicode spaces"를 원한다는 것을 보여주었습니다. 제 첫 본능은 유니코드의 역사, 코드 포인트, 렌더링 표준을 설명하는 페이지를 만드는 것이었습니다. 철저해 보였지만, 결과는 완전히 실패였습니다.
그 후 실제 검색 쿼리를 읽으며 맥락을 고민했습니다. 사람들에게 필요한 것은 인코딩 표준에 대한 강의가 아니었습니다. 게임 프로필에 쓸 빈 닉네임, 채팅창에 보낼 빈 메시지, 혹은 사용자 이름에 텍스트를 숨기는 방법이 필요했던 것입니다. 그들의 과업은 교육이 아니라 은닉과 유틸리티였습니다. 저는 그 과업을 중심으로 페이지를 다시 만들었습니다. 투명 문자열을 생성하고, 어디에서 작동하는지 정확히 보여주며, 사용자가 클릭 한 번으로 복사할 수 있게 했습니다. 특정 문구를 중심으로 만드는 것과 목표를 중심으로 만드는 것의 차이는 미묘해 보일 수 있지만, 결코 그렇지 않습니다. 사용자의 목표를 중심으로 구성하면 콘텐츠 구조는 자연스럽게 명확해집니다.
Use Data as Product Feedback
솔직한 제품 피드백을 원한다면 Google Search Console을 여십시오. 그것은 당신의 가설 따위에는 관심이 없습니다. 대신 사람들이 문제에 직면했을 때, 자신의 언어로 자신의 니즈를 어떻게 설명하는지를 정확히 보여줍니다.
예전에는 도구의 이름을 기술적으로 아주 정밀하게 붙이곤 했습니다. 어떤 기능은 '유니코드 텍스트 생성기'라고 불렀죠. 하지만 사용자들은 그것을 '이름 수정 도구'라고 불렀습니다. 이는 사소한 어휘의 차이처럼 보일 수 있지만, 바로 이 지점에서 트래픽이 끊깁니다. 만약 당신의 페이지가 유니코드 정규화에 대해 이야기하고 있는데, 방문자가 '게임 닉네임 수정하는 법'을 검색하고 있다면, 그 둘 사이의 연결은 결코 일어나지 않습니다. 이제 저는 쿼리(Queries) 보고서를 직접적인 제안 상자로 취급합니다. 특정 문구가 반복되는 것을 보면, 해당 페이지가 그 니즈를 인지하고 있는지 자문합니다. 대개는 그렇지 않습니다. 사람들이 이미 사용하는 언어에 맞춰 헤딩(heading), 버튼 라벨, 도입부 문구를 조정하는 것은 내용을 단순화하는 것이 아닙니다. 그것은 사용자의 눈높이에 맞추는 것입니다.
노출이 방문을 의미하지는 않는다
초기 보고서는 고무적이었습니다. 수천 건의 노출이 찍혔죠. 하지만 클릭 수를 확인했을 때는 아무런 반응도 없었습니다. 노출은 단지 Google이 당신의 링크를 보여주었다는 의미일 뿐입니다. 그 링크가 클릭할 가치가 있다는 뜻은 아닙니다.
저는 전체 체인을 함께 읽는 법을 배웠습니다. 어떤 쿼리가 사용자를 이곳으로 이끌었는지, 결과 페이지에서 우리의 순위는 어떠했는지, 얼마나 자주 노출되었는지, 클릭을 얻어냈는지, 그리고 링크 너머에 어떤 경험이 기다리고 있는지 말입니다. 각 링크가 중요하지만, 타이틀 태그(title tag)는 종종 가장 적은 비용으로 가장 높은 수익을 올릴 수 있는 해결책입니다. 키워드로만 가득 찬 타이틀은 서류함 라벨처럼 읽힙니다. 행동을 유도하지 못하죠.
타이틀은 수행할 작업을 전달해야 합니다. 현재 제가 사용하는 구조는 간단합니다. '주요 작업 + 사용 사례 + 명확한 행동 유도'입니다. 추상적인 표현에 머무는 대신, 클릭 너머에서 사용자가 정확히 무엇을 할 수 있는지 알려줍니다. 타이틀이 클릭을 이끌어내지 못하면 나머지 체인은 모두 무너집니다.
내부 링크는 여정이다
예전에는 관련 링크들을 페이지에 무작위로 던져 놓곤 했습니다. 기술적으로는 내부 링크였기에 SEO 요건은 충족했죠. 하지만 페이지를 읽는 사람에게는 아무런 도움이 되지 않았습니다.
이제 저는 링크를 워크플로우의 다음 단계로 설계합니다. 누군가 방금 게임 닉네임을 생성했다면, 다음에 무엇이 필요할까요? 아마 그것을 꾸며줄 특수 기호일 것입니다. Instagram용 굵은 글씨체를 찾았다면, 다음으로는 이탤릭체나 필기체 변형을 원할 수도 있습니다. 링크는 무작위 제안이 아닙니다. 여정을 이어가는 것입니다. 이를 통해 사람들은 사이트를 자연스럽게 탐색하게 되고, 서로를 지원하는 페이지들로 권위(authority)가 분산됩니다. 검색 엔진은 구조를 주목하고, 인간은 유용성을 주목합니다. 훌륭한 내부 링크 전략은 어느 한쪽을 속이려 하지 않고 양쪽 모두를 만족시킵니다.
핵심 요약
SEO는 고용하는 부서가 아닙니다
