Technote

개발 워크플로우 실무

캠페인 주소 관리 — 색인과 리포트가 함께 쪼개집니다

캠페인 파라미터가 붙은 주소는 검색엔진에게 별개의 주소입니다. 색인되면 같은 페이지가 여러 벌로 잡히고, 표기가 흔들리면 리포트가 쪼개집니다. 원인이 하나라 해법도 하나입니다.

메일에 링크를 넣을 때, 광고 소재를 만들 때, 협력사에 배너를 넘길 때 우리는 주소 뒤에 캠페인 파라미터를 붙입니다. ?utm_source=newsletter 같은 것입니다. 어느 경로로 들어왔는지 알기 위한 표시이고, 없으면 유입 분석이 거의 불가능합니다.

그런데 이 표시는 부작용을 하나 갖고 있습니다. 검색엔진과 분석 도구에게 그것은 표시가 아니라 주소의 일부라는 점입니다. 여기서 두 가지 문제가 함께 나오고, 원인이 같아 해법도 함께 옵니다.

문제 ① 같은 페이지가 여러 주소로 잡힙니다

검색엔진은 /campaign/ 과 /campaign/?utm_source=newsletter 를 다른 두 주소로 봅니다. 내용이 똑같더라도 그렇습니다. 이 주소가 어딘가에 링크로 남으면 — 블로그가 우리 메일 링크를 그대로 인용하거나, 커뮤니티에 붙여넣기되거나, 누군가 즐겨찾기해 공유하면 — 검색엔진이 그 주소를 발견하고 색인 후보로 삼습니다.

결과적으로 같은 내용의 페이지가 여러 벌 존재하게 되고, 검색엔진은 그중 어느 것을 대표로 볼지 스스로 판단합니다. 우리가 원하는 깨끗한 주소가 아니라 파라미터가 붙은 주소가 검색 결과에 나오는 일이 여기서 생깁니다.

해법은 canonical 태그입니다. 모든 변형 주소가 “대표 주소는 이것” 이라고 한 곳을 가리키게 하는 표시입니다. 대부분의 SEO 플러그인이 파라미터를 뺀 주소를 canonical 로 내보내지만, 실제로 그런지 반드시 확인합니다 — 파라미터가 붙은 주소를 브라우저로 열고 페이지 소스에서 canonical 을 찾아, 그것이 깨끗한 주소를 가리키는지 보면 됩니다. 확인은 1분이고, 가정은 몇 달 뒤에 비쌉니다.

문제 ② 표기가 흔들리면 데이터가 쪼개집니다

두 번째 문제는 색인이 아니라 리포트에서 나옵니다. 파라미터 값은 대부분의 분석 도구에서 대소문자와 철자를 그대로 구분합니다. Facebook 과 facebook 과 fb 는 세 개의 다른 유입원이 됩니다.

같은 유입이 여러 줄로 쪼개지면 합계가 아니라 착시를 보게 된다

이 문제가 고약한 이유는 아무 오류도 나지 않는다는 점입니다. 리포트는 정상적으로 그려지고 숫자도 나옵니다. 다만 한 캠페인의 성과가 세 줄로 나뉘어 있어, 각 줄이 실제보다 작아 보이고 그래서 그 캠페인 전체가 실제보다 나빠 보입니다. 예산을 그 숫자로 배분하면 잘 되던 채널을 줄이게 됩니다.

규칙 — 세 줄이면 충분합니다

거창한 체계가 필요하지 않습니다. 세 가지만 정하면 대부분의 문제가 사라집니다.

캠페인 주소 규칙 — 어휘를 고정하는 것이 절반 이상이다

고정 어휘가 핵심입니다. 유입원과 매체에 쓸 수 있는 값을 미리 정해 표로 만들고, 그 표에 없는 값은 쓰지 않습니다. 표가 있으면 주소를 만드는 사람이 고민할 필요가 없고, 고민하지 않으면 표기가 흔들리지 않습니다.

내부 링크에는 붙이지 않습니다. 우리 사이트 안의 링크에 캠페인 파라미터를 붙이면 방문자가 원래 어디서 왔는지의 기록이 그 지점에서 덮어써집니다. 광고로 들어온 사람이 메뉴를 한 번 누르는 순간 유입원이 바뀌는 셈입니다. 사이트 내부의 이동은 유입이 아니라 행동이므로, 그것은 이벤트로 세는 것이 맞습니다.

그리고 파라미터 값에 개인정보를 넣지 않습니다. 이름이나 메일 주소를 주소에 넣으면 그것이 로그 · 분석 도구 · 외부 링크 참조에 남고, 최악의 경우 검색 결과에 노출됩니다.

이미 퍼진 주소는 어떻게 하나

지난 캠페인의 주소는 이미 나가 있고 회수할 수 없습니다. 그래도 할 수 있는 일이 있습니다. 첫째, canonical 이 제대로 나가는지 확인합니다 — 이것 하나로 색인 쪽 문제는 대체로 정리됩니다. 둘째, 분석 도구에서 과거 값을 새 어휘로 묶어 보는 설정을 만들면 기간 비교가 가능해집니다. 셋째, 지금부터 붙이는 주소에만 새 규칙을 적용합니다 — 과거를 소급해 고치려다 규칙 도입 자체가 미뤄지는 경우가 훨씬 흔합니다.

파라미터 표기 규칙과 리포트 설계는 측정 없이는 개선도 없다 연재에서 더 깊이 다루고, 주소 · 리다이렉트 · 중복 처리 전반은 개발 워크플로우 아카이브에 있습니다. canonical 과 색인 설정을 한 번에 점검받고 싶다면 최적화 지원 사업에 기술 SEO 진단이 포함돼 있습니다.

이 주제의 다른 글

노하우 목록으로

개발 워크플로우 심화

CI 에서 WP-CLI 돌리기 — 검사 자동화의 실제 구성

사람이 기억해서 돌리는 검사는 바쁜 주에 건너뛰게 됩니다. 싼 검사부터 순서대로 쌓고, 일회용 워드프레스 위에서 명령으로 확인하면 그 기억이 필요 없어집니다.

개발자 5분 읽기

₩270,000 · 신청하기