검색엔진님이 여길 보셨어!
새로운 것을 알게 되었거나 궁금한 것이 생겼을 때 검색해보는 행동은 십여년 전까지만 해도 그렇게까지 당연한 행동은 아니었습니다. 회사의 어르신들은 신입사원들이 무슨 얘기만 나오면 검색하는 것을 놀란 눈으로 지켜보곤 했습니다. '요즘 애들'을 나누는 기준이 검색의 생활화로 보던 시절이 있었답니다.
요즘은 검색은 기본이고 어디에 검색하는가를 두고 세대를 판단하는 것 같습니다. 잘 모르는 것에 대해 인스타그램이나 유튜브에 검색하는 것을 저는 받아들이기 힘들지만... '요즘 애들'은 그렇게 많이 한대요.
그래도 저는 아직 텍스트가 좋군요.
그렇기에 회사 이름이든, 제품명이든, 이름을 몰라서 비슷한 것을 검색하든, 고객들의 검색결과에 우리가 걸려있다는 사실 - 나아가 어떤 형태로 보여지는가는 우리의 존폐가 걸린 문제일 것입니다.
검색 결과에 우리를 노출시키며, 예쁘게 보여주기 위한 일련의 활동들을 SEO(Search Engine Optimization)이라고 합니다. 우리 말로는 검색 엔진 최적화, 검색 최적화라고 부르는 것이 일반적이에요.
검색 엔진은 검색 기술을 가지고 있는 검색포털 - 대표적으로 구글이나 네이버같은 회사가 관리하고 있는 일종의 AI입니다.
지금이야 네이버가 검색보다는 생활 플랫폼으로서의 성격이 더 강해졌지만, 예전에는 보다 검색에 치중되어 있었던 시절이 있었답니다. 지금도 네이버 검색의 파괴력은 굉장하구요.
구글은 여전히 검색이라는 아이덴티티를 고수하고 있습니다. 상단 메뉴의 수도 많지 않은 와중에 메인 영역에는 로고, 검색창, 검색하기 버튼만 심플하게 놓여져 있습니다. 지난 20년간 추가된 버튼이라고는 [I'm feeling lucky] 뿐이라고 하네요. 검색 결과를 확인하지 않고 구글이 생각하기에 가장 적합한 페이지를 보여주는 기능입니다.
이런 검색 서비스의 생명은 속도입니다.
누군가 뭔가를 검색할 때 마다 전 세계 수많은 문서들을 하나하나 뒤지고 있는다면 검색결과를 얻기까지 굉장히 많은 시간이 소요됐을 거예요. 웹 문서는 지금도 실시간으로 늘어나고 있고, 이제는 용량이 큰 이미지와 동영상까지 들어가고 있습니다.
그래서 각 검색 엔진들은 매일 전세계 웹에 뿌려진 페이지를 긁어보면서 그 안에 들어간 텍스트와 이미지를 자신만의 방식으로 정리해 놓습니다. 도서관에서 책을 빨리 찾기 위해 색인을 넣는 작업을 끝없이 하고 있다고 생각하시면 된답니다.
이렇게 문서들의 키워드 등을 저장해두었다가 누군가가 검색했을 때 가장 연관이 높은 문서를 상위로 노출시켜 주는 것이 검색엔진 정확도의 핵심입니다. '곶사슴'을 검색했는데 제가 쓴 글이나 사이트가 나오는 것이 아니라 수십여년 전 꽃사슴을 쓰다가 오타가 난 페이지를 가장 먼저 보여준다면, 어필을 제대로 하지 못한 제 탓도 있지만 검색엔진이 엉뚱하게 돌아가고 있다는 뜻도 됩니다.
하지만 검색엔진은 대체로 엉뚱하고 멍청합니다.
정확히는, 나와 우리 회사를 자세히 들여다볼 정도로 한가하지 않습니다.
산타 할아버지가 크리스마스 이브 밤에 전 세계 어린이들에게 선물을 주기 위해서는 빛의 속도로 달리며 빛의 속도로 선물을 뿌려야 가능한데요. 검색엔진 역시 지구 웹의 모든 문서 어린이들을 만나기 위해 그의 루돌프를 갈고 닦고 있습니다. 이렇게 바쁜데 사람들이 검색을 많이 하지 않는 키워드와 문서까지 신경쓸 여력이 없겠죠. 정확도는 떨어질 수밖에 없습니다.
그래도 언젠가 바라봐주겠지... 라면서 마냥 기다린다면 검색엔진은 자기가 가지고 있는 책갈피가 맞는 것이라고 생각하게 됩니다. AI를 하나의 생물체처럼 생각해보세요. 구석에서 가만히 있으면 그는 우리가 있는지도 모릅니다. 지속적으로 나를 어필하고 나에 대한 정보를 떠먹여줘야 한 번 돌아볼까 말까 합니다.
검색엔진은 메타데이터(Meta Data)를 좋아합니다.
풀어 말하자면 구조화된 데이터로, 검색엔진이 페이지를 읽어들이는 형식에 맞춰서 페이지 구성 요소를 입력해두는 것이죠. 만약 이것이 없다면 검색엔진은 페이지에 있는 글이나 이미지를 보고 내용을 해석해야 하는데, 이것은 꽤 많은 컴퓨팅 리소스를 필요로 하기 때문에 먹기 쉬운 형태로 미리 가공해놓고 지나갈 때 먹이는 것이라고 생각해주세요.
형태를 보려면, 검색엔진에 뭔가를 검색했을 때 표시되는 데이터를 살펴보시면 좋습니다.
구글에서 [곶사슴]을 검색한 결과입니다.
곶사슴보다는 꽃사슴의 검색량이 월등히 높기 때문에... 꽃사슴 검색한건데 오타가 난 것인지를 묻는 내용이 가장 상단에 위치하는군요. 그래도 검색해주시는 분들이 계시기 때문에 검색 결과를 표시라도 해 주지 검색이 전혀 없는 단어라면 오타인 줄 알고 자동으로 꽃사슴의 검색결과를 보여줬을 것입니다.
간간히 검색해주시는 분들께 감사드립니다. 흑흑
다시 검색결과를 살펴보면
플랫폼 (단독 페이지라면 없을 수도 있습니다)
페이지 제목
페이지 설명(또는 본문 내용)
이미지
이런 구조를 띄고 있는 것을 알 수 있어요.
고객이 우리를 검색했을 때 마주하는 결과는 위의 내용과 크게 달라지지 않는다는 것이겠죠. 따라서 이 내역에는 희망사항이나 뜬구름잡는 소리, 애매한 현대시를 쓰는 것이 아니라 검색을 하는 사람이 궁금해하던 정보나 이득볼 수 있는 요소를 적어주어야 상대방이 우리의 존재를 정확히 파악하고, 검색엔진은 상위 노출을 시켜줄 수 있게 됩니다.
웹 페이지라는 것은 HTML로 이루어져 있습니다. 페이지의 구성 요소와 간단한 로직, 그리고 시각적인 요소를 HTML로 작성하면 웹브라우저는 우리가 보기 편안한 형태로 바꿔서 보여줍니다. 우리가 접하는 수많은 서비스와 페이지가 HTML로 이루어져 있어요. 그리고 검색엔진은 사람이 아니라 기계이기 때문에 HTML을 기반으로 데이터를 학습합니다.
HTML을 이루는 각 요소를 태그라고 부르는데요. 그래서 페이지의 성격을 알리기 위한 메타데이터는 '메타 태그'라고 불리웁니다. 개발자들에게는 어떻게 말해도 다 알아듣기는 합니다.
그리하여 마케터는 HTML과 웹에 대한 지식도 어느정도 가지고 있는 것이 좋습니다. 아주 잘 할 필요는 없어요. 잘 다루는 것은 프론트엔드 개발자가 해야 할 일입니다. 구조를 알고 있다면 개발자와의 소통의 정말정말 편해지고 적극적인 도움도 받을 수 있게 됩니다. 누군가와의 커뮤니케이션을 위해서는 그들의 언어를 이해할 필요가 있습니다.
꼭 메타 태그의 문제 때문만은 아니라, 구글 태그, 페이스북 픽셀 등 다양한 고난과 역경이 여러분을 기다리고 있기 때문에, HTML의 구조나 작동 방식 정도는 가볍게라도 알아누는 것이 좋습니다.
다시 메타태그에 대한 설명으로 넘어와서, 메타태그는 어지간하면 head 태그 안에 들어가게 됩니다. 들어가는 것들은 다음과 같습니다.
title 타이틀
페이지 제목입니다. 제목이 없다는 것은 이 페이지가 무슨 페이지인지 말하지 않고 있다는 것이 됩니다. 현대미술관에 걸려있는 [무제]처럼, 제목이 없다면 검색엔진은 우리의 서비스를 매우 난해하게 받아들이게 되며 - 상단에 노출시키는 점수를 깎아버립니다.
<meta name="title" content="제목학원 수강증 판매 페이지">
description 설명문구
디스크립션이라고 부릅니다. 사이트 안에 들어있는 정보를 이야기합니다. 위에서 곶사슴 검색결과에서는 곶사슴에 대한 소개 문구가 들어갔듯이, 이 곳에는 페이지나 서비스에 대한 소개 문구가 들어가는 것이 좋습니다. 관련된 키워드나 다양한 것들이 들어가야겠죠.
<meta name="description" content="여러분들께만 알려드리는 건데 곶사슴은 잘생겼어요.">
robots 봇 설정
검색엔진 봇 - 즉슨 검색엔진이 이 페이지를 어떻게 읽으라는 것을 설정합니다. 페이지에 따라서 검색엔진에는 안 긁히도록 설정할 수 있습니다. 예를들어 메인 페이지가 아니라 사용자 약관 같은 것이 상위노출되고 있을 때 해당 페이지의 이 태그를 바꿔서 더이상 읽지 않고 표시되지 않도록 설정하는 것이죠.
<meta name="robots" content="index,follow">
여기서 인덱스와 팔로우 등을 설정해주면 됩니다. 읽히기 싫으면 noindex, 페이지의 링크를 따라가지 못하게 하려면 nofollow 라고 써주면 된답니다. 대충all로 해주면 됩니다
<meta name="robots" content="all">
요롷게요.
정리하자면 다음과 같습니다.
<meta name="title" content="여기에 제목">
<meta name="description" content="여기에 설명">
<meta name="robots" content="all">
이것들을 작성하셔서 개발자에게 head 태그 안에 이것들을 넣어달라고 하면 됩니다.
대충 이정도까지만 설정해도 검색엔진은 무난하게 여러분의 페이지를 긁어가고 연관성이 높다고 판단하면 검색결과의 상단에 노출시켜줍니다.
기본적인 메타 데이터 외에도 오픈그래프 Open Graph 라는 것을 설정해주면 좋습니다. 우리가 카톡이나 웹페이지에 링크를 공유하면 그 페이지의 이미지화해서 보여주잖아요.
https://brunch.co.kr/@mkjdeer
이런 식으로요.
이것들을 설정해준다면 어딘가 공유되었을 때에도 누름직한 모양이 되며, 검색엔진에도 잘 읽히게 되니, 위의 메타태그를 넣으면서 같이 작성해 넣어주는 것이 좋습니다. 요즘은 개발자들이 먼저 물어보기도 한답니다.
<meta property="og:url" content="페이지 주소" />
<meta property="og:type" content="website" />
<meta property="og:title" content="페이지 제목 영역" />
<meta property="og:description" content="페이지 설명 영역" />
<meta property="og:image" content="대표 이미지 주소" />
자세한 내용은 메타태그와 관련된 내용을 검색해보시거나 각 검색엔진이 제공하고 있는 참고자료를 살펴보시는 것이 좋습니다. 이 글 하나로 모든 것을 알 수는 없으며, 하루 아침에 마스터할 수 있는 지식은 아닙니다. 직접 써보고 수정하면서 이해하셔야 본인의 실력이 됩니다.
네이버 웹마스터 가이드 문서
https://searchadvisor.naver.com/
메타태그를 적용하고 아무리 기다려도 검색결과가 멀쩡하게 나오지 않는다면, 검색엔진이 제공하는 웹마스터 도구에 우리 페이지를 등록하세요. 사실 잘 나온다고 하더라도 진행하는 것이 좋습니다. 각종 세부 설정을 제공하거든요.
네이버
https://searchadvisor.naver.com/
구글
https://search.google.com/search-console/welcome?hl=ko
각 검색엔진별로 이 페이지의 소유자가 나라는 것을 증명하기 위해 요구하는 것이 있을 거예요. 특정 태그를 넣어놓는다거나 파일을 업로드해놓는다거나. 개발자에게 해당 내용을 알려주면 정말 순식간에 해줄 것입니다. 이런 저런 핑계 대면서 안 해주거나 미룬다면 개발자 취급을 하지 마세요. 저는 진지합니다.
이것들을 진행하고도 제대로 검색결과가 표시되지 않을 수도 있는데, 이는 페이지가 담고 있는 정보가 너무 적거나 우리 페이지를 클릭하는 고객이 거의 없다는 뜻입니다...
그럴 경우에는 인위적으로 노출시키고 트래픽을 만드는 것부터 시작해야겠죠. 각 서비스에서 팔고 있는 검색광고를 이용해 검색이 있을 때 우리 페이지로 유입시킬 수 있도록 합시다.
뭐든 다 돈입니다...
이렇게 설정하고 이것저것 바꿔보아도 원하는 모양이 나오지 않을 수 있습니다. 플랫폼이 원하는대로 안 움직여주는 것은 정말 흔한 일이며, 엔진을 돌리는 시간이 필요하기 때문에 설정을 바꾼다고 해서 바로바로 적용되는 것은 또 아닙니다.
콘텐츠는 텍스트 위주로 넣어주세요.
개발 인력이 없다거나 예쁘지 않다는 생각에 페이지를 텍스트가 아니라 이미지로 가득 채우는 경우가 있습니다. 거듭 말씀드리듯, 검색엔진은 로봇이기 때문에 이미지 안의 텍스트는 읽지 않습니다. 이미지 안의 텍스트를 읽는 기술이 있긴 하지만 우리 사이트를 볼 정도로 한가한 기술이 아닙니다.
검색엔진을 위하여, 나아가 우리를 검색하는 고객을 위하여 가급적 페이지 구성은 html 텍스트로 제공할 수 있도록 합시다.
어떤 사이트는 그럼에도 불구하고 이미지로 표시하고자 이미지 파일 이름에 텍스트를 전부 넣거나, 사용자들에게 보이지 않게 태그로만 텍스트를 넣기도 합니다.
많이 인용되도록 해주세요.
논문을 평가할 때 사용하는 지표로 '인용지수'라는 것이 있습니다. 이 논문이 다른 논문들에서 얼마나 인용되었는지를 평가하는 지표로, 이 지수가 높을수록 논문의 공신력이 높다고 평가합니다. 모두가 인정하고 있다는 뜻이니까요.
웹사이트도 비슷합니다. 여기저기서 참조가 되고 링크가 걸린다는 것은 그 페이지가 그만큼 정확하고 유익한 정보를 제공하고 있다는 뜻이고, 검색엔진이 상위에 노출시켰을 때 욕먹지 않을 결과라는 것을 보증하게 됩니다. 신뢰의 문제입니다.
그래서 여기저기에 우리 페이지 링크를 노출시킨다면 검색엔진은 우리 페이지가 영향력이 있는 사이트라고 학습하게 됩니다. 가지고 있는 각종 플랫폼 - 페이스북, 인스타그램, 유튜브, 블로그 등등에 우리 사이트 링크를 적극적으로 심고, 다른 곳에도 우리 페이지를 널리널리 퍼뜨립시다.
네이버 블로그 상위노출을 보장하는 어둠의 바이럴 업체 중에서는 영향력 있는 사이트 - 정부기관 같은 곳에 보이지 않게 링크를 걸어두어 해당 페이지가 공신력이 있는 것처럼 학습시키는 곳도 있다고 합니다.
사이트 속도를 빠르게 해주세요.
앞서 말한 것 처럼, 검색엔진에게 속도는 생명입니다.
데이터를 가져오는 시간이 오래걸린다면 검색엔진은 참지 못하고 다른 곳으로 떠나버립니다. 사실 코드만 읽기 때문에 크게 영향을 안 받는다고 해도, 사이트의 품질이 낮다고 판단해 상위 노출을 시키지 않는 경우가 있다고 해요.
우리 페이지에 이미지나 동영상이 많아 너무 느리다면 조금 더 가볍게 만드는 작업을 진행해봅시다.
사실 여기서 제공하는 팁들은 '그렇게 하면 좋다'는 것이지 절대적인 기준이 아닙니다. 검색엔진의 알고리즘은 매일매일 바뀌며, 이제는 어떤 기준으로 더 좋은 점수를 받는지 개발자와 담당자도 모르는 지경으로 복잡해졌답니다.
조금 어렵고 복잡하더라도, 우리 사이트가 잘 노출될 두 있도록 검색엔진을 잘 어르고 달래고 보살펴봅시다.