이것만 지금 당장 해두면, 우리 서비스를 검색창에서 보여줄 수 있다.
목차
1. 무료로 서비스를 알리는 방법
2. SEO의 원리 뜯어보기
3. 초기 창업 팀을 위한 검색 노출(SEO) 가이드
서비스를 "어떻게 만들까?"만큼이나 중요한 질문이 "어떻게 알릴까?"다. 아무리 서비스를 잘 만들어도, 잠재 유저에게 알리지 못하면 의미가 없다. SNS를 통한 타겟 마케팅, 기사를 통한 PR 등의 홍보 방법론을 떠올리겠지만, 일부 방법론은 팀의 상황에 의해 선택 불가능할 수 있다. 앞서 말한 홍보 방법론은 모두 돈을 써야 하는데, 홍보에 쓸 만큼의 여유 자금이 있는 창업 팀은 많지 않다.
돈이 있으면 대다수의 문제는 해결 가능하다. 하지만, 문제는 돈이 없다는 것이다. 그렇다고 이 문제를 단기간에 해결하기도 불가능하다. 실질적으로 투자를 제외하고, 단기적인 자금 해결 방법은 존재하지 않는다. 그렇다고 서비스 홍보를 손 놓고 기다릴 수도 없다. 이러한 상황에서 우리가 할 수 있는 유일한 선택지는 돈을 쓰지 않고도 서비스를 홍보하는 것이다.
무료 홍보 방법 중에서 검색 엔진 최적화(SEO)가 있다. SEO란 유저가 구글, 네이버 등의 포탈 사이트에서 검색을 할 때, 우리 사이트를 노출시키도록 만드는 행위다. SEO를 한다고 해도, 단기간에 드라마틱한 효과가 나오지는 않는다. 검색 엔진에서 사이트 정보가 온전히 반영되어 알고리즘에 올라타기까지 어느 정도의 시간이 필요하다. 다만, SEO를 한 번 신경 써준다면 추후에 돈을 쓰지 않아도 서비스를 지속적으로 노출시킬 수 있다.
우리 창업 팀은 직장인 학습 서비스인 "투두몰"을 만들고 있다. 투두몰을 처음 오픈할 때, SEO를 크게 신경 쓰지 않았다. 다만, 이제 서비스가 안정적으로 운영 됨에 따라, SEO 작업을 진행했다. 그 결과, 검색 노출 추이가 점차 우상향 그래프를 그리기 시작했다.
초기 서비스를 운영하는 팀이라면, SEO라는 게 낯설고 어렵고 느껴질 수 있다. 그렇기에 다른 팀들에게 도움이 되고자, SEO 관련 가이드를 끄적여 본다. 참고로, 필자는 전문 마케터도 아니고 혼자서 시중의 아티클을 뜯어보며 SEO를 배웠다. 바꿔 말하면, 마케터도 아니어도 누구나 SEO를 할 수 있다. 그러니, 초기 창업 팀이라면, 두려워하지 말고 한 번 SEO를 찍먹 해보자!
앞서 말했듯, SEO란 유저가 구글, 네이버 등의 포탈 사이트에서 검색을 할 때, 우리 사이트를 노출시키도록 만드는 행위다. 구글, 네이버 등의 검색 포탈 사이트에서 특정 키워드를 검색하면, 해당 키워드와 관련된 검색 결과가 출력된다. 이때, 검색 결과의 최상단에 우리 사이트를 위치하게 만드는 게 SEO의 목적이다. 검색 결과, 후순위에 위치할수록 노출 효과는 급격히 떨어진다. 아래를 보면 구글에서 "투두몰"을 검색했을 때, 우리 사이트가 최상단에 위치한 걸 볼 수 있다.
포탈이 검색 결과를 보여주기까지 어떠한 일이 일어나고 있을까? 세상에 존재하지 수많은 웹사이트 중 도대체 어떤 사이트를 가장 위에 위치해서 보여주는 것일까? 검색 결과를 확인하기까지 크게 아래와 같은 프로세스를 거친다.
1. 유저가 검색 키워드를 작성해서 검색
2. 검색 포탈에서 검색 키워드, 검색 맥락 등을 확인
3. 검색 포탈에서 유저가 필요로 정보가 있는 사이트를 순위를 측정
4. 순위 순으로 검색 결과로 노출
검색 키워드, 검색 맥락?
유저가 검색을 하면, 포탈 사이트에서 '검색 키워드'와 '검색 맥락' 등을 활용해 관련 사이트를 보여준다. 이때, 사이트가 보유한 정보가 관련이 높을수록, 검색 결과에서 최상단을 차지할 수 있다. 예를 들어, 유저가 "인근 가볼 만한 햄버거 가게"라고 검색한다고 하자. 이때, 유저의 위치가 마포구라면, 포탈은 유저가 마포구 근처의 햄버거 가게를 찾는다는 걸 확인하고, 마포구 인근의 햄버거 사이트를 알려줄 것이다. 혹은, 이전에 치킨 버거를 검색한 이력이 있다면, 유저가 치킨 버거를 자주 찾는다는 걸 확인하고, 치킨 버거 사이트를 알려줄 것이다.
유저가 필요한 정보가 있는 사이트?
웹사이트를 만든다고 무작정 검색 노출이 되는 건 아니다. 앞서서 검색 포탈이 사이트를 인식하고, 이 사이트의 정보를 확인해야 한다. 검색 포탈에는 크롤러 봇이라는 게 존재한다. 크롤러 봇은 (1) 수많은 웹사이트 내 페이지를 확인하고 (2) 각 페이지가 어떤 정보를 저장하고 있는지 확인하는 봇이다. 웹사이트가 크롤러 봇에 의해 인식됐다면, 이후에 유저가 검색을 할 때마다 검색 포탈이 해당 웹사이트에서 유저가 필요로 하는 정보가 있는지 확인한다. 만약, 정보 연관성이 높다고 판단되면, 상위 노출이 된다.
결과적으로 SEO는 (1) 유저가 어떠한 맥락에서 검색을 하는지 이해하고 (2) 유저가 필요로 하는 정보가 우리 웹사이트가 갖고 있음을 알려주는 작업이라 볼 수 있다. 물론 이거 말고도 더 많은 지식이 필요하겠지만, 독학으로 공부해서 실제 사례도 적용해 보니, 이 정도만 있어도 당장은 충분한 듯하다. 이제 본격적으로 SEO를 위해서 무엇을 하나하나 해야 하는지 찬찬히 뜯어보자!
가장 먼저 검색 포탈에게 우리 웹사이트를 알려줘야 한다. 각 검색 포탈마다 SEO를 위한 서비스를 제공하고 있다. 구글은 Search console을, 네이버는 Search advisor을 제공한다. 해당 서비스에서 (1) 검색 포탈에서 웹사이트를 등록할 수 있고 (2) 포탈에서 자사 사이트의 검색 데이터를 확인할 수 있다.
서치 콘솔이나 서치 어드바이저에서 웹사이트를 등록하기 위해선, HTML의 <head> 안에 관련 정보를 저장하는 <meta> 태그를 추가해야 한다. 아래 이미지를 보면, 서치 콘솔과 서치 어드바이저에게 해당 사이트를 알려주는 <meta> 태그를 확인할 수 있다.
태그를 직접 추가하는 방법 외에도 도메인을 통한 등록도 가능하다. 관련 방법은 여러 가지이며, 비개발자라도 모두 쉽게 따라 할 수 있으니 걱정하지 말자
웹사이트를 등록한 후, Sitemap을 제출해줘야 한다. Sitemap(사이트맵)이란 웹사이트를 구성하는 개별 페이지의 목록을 담은 xml 파일이다. 검색 포탈에게 웹사이트의 존재를 알리면, 이제 포탈의 크롤러 봇이 웹사이트를 구성하는 개별 페이지를 모두 확인해 정보를 수집한다. 이때, 크롤러 봇은 특정 페이지에서 다른 페이지로 연결된 하이퍼 링크를 따라가며, 각 페이지의 정보를 파악한다. 이때 페이지 사이의 연결이 잘 안 됐다면, 크롤러 봇이 개별 페이지를 읽는 데 어려움을 겪는다.
이러한 문제를 해결하기 위해 사이트맵이 존재한다. 사이트 맵은 웹사이트가 어떻게 구성됐는지 크롤러봇에게 알려줌으로써, 개별 페이지의 탐색을 돕는다. 일종의 지도라고 보면 된다.
서치 콘솔이나 서치 어드바이저에서는 크롤러 봇에게 sitemap을 알려줄 수 있다. 사이트맵이 현재 웹사이트에 등록됐는지 모르겠다면, 자사 도메인 뒤에 /sitemap.xml을 입력해 보자. 만약 등록된 사이트맵이 없다면, 개발자에게 별도 요청을 해야 한다.
사이트맵은 현재 웹사이트를 구성하는 페이지 목록이다. 다만, 이 중에서 크롤러 봇이 접근하면 안 되거나, 할 필요가 없는 페이지도 존재한다. 예를 들어, 어드민 페이지나 종료된 프로모션 페이지 등이 있다. 이렇게 접근이 불필요한 페이지는 크롤러 봇에게 읽지 말라고 명령할 수 있다.
robots.txt는 크롤러 봇의 작동 명령을 설정하는 파일이다. 아래 파일을 보면, User-agent가 있는데, 해당 변수로 명령을 내릴 크롤러 봇을 지정한다. 네이버, 구글, 야후 등 각 검색 포탈마다 크롤러 봇이 존재하며, 개별 크롤러 봇을 지정해서 각기 다른 명령을 내릴 수 있다. 예를 들어, 네이버의 크롤러 봇에게만 명령을 내리고 싶다면 "Yeti"를 입력하면 되며, 모든 크롤러 봇에 해당된다면 "*"를 입력하면 된다.
그다음으로 Disallow가 나왔는데, 이는 지정한 크롤러 봇에게 해당 페이지는 읽지 말라고 명령하는 것이다. 해당 명령문을 추가함으로써, 크롤러봇이 입력한 페이지에 접근하지 않는다. 추가적으로 크롤러 봇에게 직접 사이트맵의 위치를 알려줄 수도 있다.
크롤러 봇에게 sitemap.xml과 robots.txt로 웹사이트의 큰 그림을 알려줬으니, 그다음으로 각 페이지 안에서 중요한 정보와 그렇지 않은 정보를 알려줘야 한다. 중요도가 높은 정보를 강조할수록, 크롤러 봇이 해당 페이지가 어떤 정보를 담고 있는지 쉽게 파악할 수 있다. 만약, 모든 정보가 같은 중요도를 갖고 있다면, 크롤러 봇은 해당 페이지기 어떤 정보를 나타내는지 이해하기 어렵다.
페이지의 정보 중요도를 알려주는 방식은 크게 (1) 메타 태그 삽입과 (2) 태그의 위계질서 설정이 있다. 메타 태그는 페이지의 정보를 요약해서 저장하는 태그로, title, description, keyword 등이 존재한다. 해당 태그를 활용해 페이지의 핵심적인 내용이 무엇이지 크롤러 봇에게 바로 알려줄 수 있으며, 자세한 내용은 이전에 작성한 글에서 확인할 수 있다.
페이지 내 텍스트는 보통 h1, h2, h3, h4, h5, p 태그에 담겨서 설정되는데, 여기서 "h"는 "headline(헤드라인)", "p"는 "paragraph(문단)"을 뜻한다. 크롤러 봇은 태그의 순서에 맞춰서 정보의 중요도를 평가한다. 예를 들어 h1 태그는 h2 태그보다 더 높은 계층에 존재하며, 그렇기에 크롤러 봇은 h1 태그가 h2 태그보다 더 중요한 정보를 갖는다고 본다. 아래를 보면, "노코드로 반응형 웹사이트 빌드하기"가 현재 페이지의 가장 중요한 정보이므로, h1 태그에 있는 걸 볼 수 있다.
요약하면, SEO를 위해서 크게 아래의 액션을 진행하면 된다. 물론 이것 외에도 더 필요한 게 있을 수 있다. 다만, 그동안의 경험을 비추어 볼 때, 초기에는 이 정도만 해도 충분하다. 여기에 정리한 정보가 보다 많은 창업 팀, 서비스 기획자, 마케터 등에게 도움이 됐으면 좋겠다.
1. 포탈에게 사이트 알려주기 ㅣ Search Console, Search advisor 등에 사이트 등록하기
2. 사이트 구조 알려주기 ㅣsitemap.xml를 크롤러 봇에게 제출하기
3. 크롤러봇에게 명령 내리기 ㅣ robots.txt로 크롤러 봇 동작 제어하기
4. 크롤러 봇에게 중요한 정보 알려주기 ㅣ 메타 태그 삽입하기, 태그의 위계질서 설정하기
일잘러가 되고 싶다면?
투두몰에서 다양한 오피스 툴 클래스를
만나보세요!