블로그 검색 유입이 없을 때 확인한 3가지
글 22편을 쓰고도 검색 유입이 없어 사이트를 뒤졌더니 3건이 나왔어요.
폰트를 매 페이지 2MB씩 받던 것, 사이트맵에 갱신 신호가 0건이던 것, 광고 자리 45개가 사라진 것.
셋 다 에러도 경고도 없었어요.
글을 22편 썼는데 들어오는 사람이 거의 없어요. 글이 부족한가 싶어 하루 잡고 사이트를 뒤졌어요.
그런데 나온 건 글 문제가 아니었어요. 에러도 경고도 없이 3개월간 안 돌아가던 게 세 건 있었어요.
하나. 폰트를 매 페이지 2MB씩 받고 있었어요
페이지가 잘 뜨니까 아무 문제가 없어 보였어요. 그래서 3개월 동안 안 봤고요.
브라우저에서 실제 전송량을 재보니 글 한 편에 2.5MB가 넘었어요. 그중 2MB가 폰트 하나였어요. 글자 모양을 통짜 파일로 받고 있었죠. 한 페이지가 실제로 쓰는 한글은 그중 일부인데요.
글 한 편 열 때 받는 양
폰트
페이지 전체
글자 구간별로 쪼개진 버전으로 바꿨어요. 같은 폰트고 모양도 그대로예요. 받는 양만 줄었어요.
느려서 알아챈 게 아니에요. 제 노트북에선 안 느렸거든요. 재보고 알았어요. 검색으로 들어오는 사람 상당수가 지하철에서 폰으로 여는데, 그 환경을 저는 한 번도 안 본 거예요.
내 기기에서 빠른 건 측정이 아니에요.
둘. “이 글 고쳤다”는 신호가 한 번도 안 나갔어요
글을 고치면 수정일을 적어둬요. 22편 중 11편에 그 값이 들어 있었고요.
그런데 검색엔진에 보내는 사이트맵엔 그 값이 하나도 안 실려 있었어요. 글은 고쳤는데 “고쳤다”는 말은 안 나가고 있었던 거예요.
이것도 아무 표시가 없어요. 사이트맵은 정상적으로 만들어지고, 주소도 다 들어 있고, 파일을 열면 멀쩡해 보여요. 안 들어 있는 걸 알려면 안 들어 있다는 걸 이미 알고 봐야 해요.
하필 제일 아쉬운 시기였어요. 사이트를 연 지 얼마 안 되면 검색엔진이 자주 안 들러요. “이 글 고쳤으니 다시 와달라”고 말할 수 있는 몇 안 되는 수단인데, 그걸 3개월간 한 번도 안 썼어요. 유입이 없다고 글만 더 쓰고 있었고요.
셋. 광고 자리 45개가 사라져 있었어요
글 본문에 광고 자리를 넣는 컴포넌트가 있어요. 이렇게 씁니다.
<AdSlot slot="domain-1" />
문제는 slot이라는 이름이었어요. 제가 쓰는 프레임워크(Astro)에서 slot은 이미 뜻이 정해진 단어예요. “이 컴포넌트를 부모의 그 이름 자리에 넣어라”는 지시거든요.
글 본문은 레이아웃의 기본 자리 안에서 그려져요. domain-1이라는 이름의 자리는 어디에도 없고요. 그래서 갈 데가 없는 채로 조용히 버려졌어요. 광고를 붙여둔 글 18편이 전부 이 상태였어요.
고치고 보니 뒤에 두 겹이 더 있었어요. 광고를 부르는 호출 한 줄이 통째로 빠져 있었고, 광고 자리 이름도 after-intro 같은 사람이 읽는 말이었어요. 애드센스는 콘솔에서 발급한 숫자 ID를 받는데 말이죠. 실제로 페이지를 열어 보니 구글이 400을 돌려주더군요.
그런데 손해가 없다는 게 이 건의 무서운 점이에요. 아프지 않으니 3개월간 아무 신호가 없었어요. 승인이 났으면 그때부터 진짜로 비는 건데, 여전히 에러는 안 나니까 원인을 한참 찾았을 거예요.
셋의 공통점
| 무슨 일이 있었나 | 어디서 드러났나 | 수치 |
|---|---|---|
| 폰트를 통짜로 받음 | 브라우저 네트워크 탭 | 2,009KB → 37KB |
| 고쳤다는 신호가 안 나감 | 사이트맵 파일 열어보기 | 22편 중 0건 |
| 광고 자리가 통째로 사라짐 | 빌드 결과물에서 단어 검색 | 글 18편·자리 45개 |
셋 다 화면엔 아무 표시가 없었고, 에러도 없었고, 3개월을 갔어요. 빌드 통과는 “문법이 맞다”는 뜻이지 “의도대로 됐다”는 뜻이 아니에요. 저는 그 둘을 같은 걸로 쓰고 있었어요.
아팠으면 바로 고쳤을 거예요. 안 아프니까 3개월을 갔어요.
그래서 뭘 보고 잡았나
특별한 도구는 안 썼어요. 보는 자리를 바꿨을 뿐이에요.
셋 다 한 문장으로 줄어요. 만든 자리에서 확인하지 말고 나가는 자리에서 확인하기.
AI랑 짜면 왜 이게 잘 생기냐면
이 블로그 커밋 197개 중 181개가 AI와 함께 쓴 거예요. 92%죠. Claude Code를 1년 넘게 쓰면서 굳어진 방식이고요. 문제가 된 광고 컴포넌트도 첫 세팅 커밋에 그대로 들어 있었어요.
그런데 저는 “AI라서 이렇게 됐다”고는 안 봐요. 이름을 slot으로 고른 건 자연스러운 선택이었어요. 애드센스 문서가 그 자리를 slot이라 부르거든요. 모르면 사람도 똑같이 지었을 이름이에요. 프레임워크에서 그 단어가 예약돼 있다는 건 애드센스 문서 밖의 지식이고요.
다만 AI와 짤 때 이런 게 더 잘 남는 조건은 있다고 봐요. 빠르게 많이 만들어지고, 대부분 잘 돌아가니까요. 잘 돌아가는 게 기본값이 되면 확인하는 습관이 옅어져요. 저는 그렇게 됐어요.
전에 AI가 짠 코드를 믿을지 판단하는 법에서 코드 대신 볼 것으로 화면·데이터·AI의 설명·내 의도와의 대조, 이 넷을 적었어요. 이번에 걸린 셋은 그중 화면만 보고 넘어간 것들이에요. 페이지가 가벼운지, 갱신 신호가 나가는지는 분명히 제 의도였는데 한 번도 대조를 안 했어요.
레스덕의 정리
유입이 없을 때 저는 글이 부족한 줄 알았어요. 그래서 글을 더 썼고요. 정작 사이트는 무겁고, 갱신 신호도 안 보내고, 배선 하나는 끊긴 채로 굴러가고 있었어요.
이걸 고쳤다고 내일 유입이 생기진 않아요. 신생 사이트는 원래 시간이 걸리니까요. 다만 막아둔 수도꼭지를 몇 개 열어둔 셈이라고 봐요. 물이 올 때 새지는 않게요.
터지는 실패는 알아서 알려줘요. 무서운 건 조용한 쪽이에요. 빌드가 통과했고 화면이 멀쩡하면 다 된 걸로 치는 습관, 그게 진짜 구멍이었어요.
정답이라기보다 제 반성문이에요. 3개월치를 한 번에 발견하고 나면 이런 걸 적게 되더군요.
여기 말고 다른 데서 막혔다면
증상만 고르면 지금 뭘 하면 되는지 짚어줘요.
참고 자료
읽으면서 떠오른 사람에게 공유해 주세요
레스덕
· 운영자현직 개발자가 AI·바이브코딩·개발자 커리어를 직접 겪고 판단한 개인 기록입니다. 공식 자료를 간략히 요약하고, 그 위에 저의 경험·판단을 덧붙입니다. 전문 자문이 아니므로, 중요한 결정 전에는 최신 원문과 전문가 상담을 함께 확인해 주세요.
최종 수정 2026.07.25 · 문의 lessduck2@gmail.com