테크니컬 SEO란?#
테크니컬 SEO는 검색엔진이 웹사이트를 발견(크롤링) → 이해(렌더링) → 저장(인덱싱)하는 전 과정을 최적화하는 작업입니다. 아무리 좋은 콘텐츠와 백링크가 있어도, 크롤링이 안 되면 순위에 반영되지 않습니다.
테크니컬 SEO는 집을 짓기 전에 기초 공사를 하는 것과 같습니다. 기초가 부실하면 아무리 좋은 인테리어(콘텐츠)와 입소문(백링크)이 있어도 건물 전체가 무너질 수 있습니다.
크롤링 → 렌더링 → 인덱싱 파이프라인#
이 세 단계 중 하나라도 실패하면 구글 검색 결과에 나타나지 않습니다.
1. robots.txt 설정#
robots.txt는 웹사이트 루트 디렉토리에 위치하며, 검색엔진 크롤러에게 어떤 페이지를 크롤링해도 되는지 알려주는 파일입니다.
robots.txt 기본 구조#
흔한 실수#
| 실수 | 결과 | 해결 방법 |
|---|---|---|
| 전체 사이트 Disallow | 모든 페이지 검색 결과에서 사라짐 | Disallow 범위를 필요한 경로만으로 제한 |
| 관리자 페이지 미차단 | 보안에 취약한 페이지가 인덱싱 | /admin/, /wp-login.php 등 차단 |
| CSS/JS 차단 | 구글이 페이지를 렌더링하지 못함 | CSS, JS 파일 크롤링 허용 |
| Disallow로 인덱싱 차단 시도 | 크롤링만 차단되고 인덱싱은 차단 안 됨 | 인덱싱 차단은 noindex 메타 태그 사용 |
중요: Disallow는 크롤링만 차단합니다. 인덱싱을 차단하려면 반드시 noindex 메타 태그 또는 X-Robots-Tag HTTP 헤더를 사용해야 합니다.
2. 크롤링 버짓 관리#
크롤링 버짓(Crawl Budget)이란 구글봇이 일정 기간 동안 사이트에서 크롤링할 수 있는 페이지 수의 한도입니다. 소규모 사이트(1,000페이지 이하)에서는 큰 문제가 되지 않지만, 대규모 사이트에서는 핵심 이슈입니다.
크롤링 버짓 낭비 원인과 해결책#
| 낭비 원인 | 영향 | 해결책 |
|---|---|---|
| 중복 페이지 (파라미터 URL) | 같은 콘텐츠를 여러 번 크롤링 | canonical 태그, 파라미터 처리 설정 |
| 소프트 404 | 빈 페이지에 크롤링 자원 소모 | 실제 404 응답 또는 리다이렉트 처리 |
| 무한 크롤링 트랩 | 무한 캘린더, 필터 조합 등 | robots.txt로 차단, nofollow 처리 |
| 리다이렉트 체인 | 3회 이상 연쇄 리다이렉트 | 최종 URL로 직접 리다이렉트 |
| 불필요한 리소스 | 대용량 이미지, 미사용 스크립트 | 최적화 및 지연 로딩 |
Google Search Console의 크롤링 통계 보고서에서 크롤링 빈도와 문제점을 확인할 수 있습니다.
3. XML 사이트맵 최적화#
XML 사이트맵은 구글에게 "이 URL들을 인덱싱해주세요"라고 요청하는 지도입니다.
사이트맵 모범 사례#
- 인덱싱을 원하는 URL만 포함 (noindex 페이지, 리다이렉트 URL 제외)
- URL 수가 50,000개를 초과하면 사이트맵 인덱스 파일로 분할
- 파일 크기는 50MB 이하로 유지
- Google Search Console에서 사이트맵을 제출하고 오류 확인
lastmod 규칙#
- 구글은 lastmod가 정확한 사이트맵을 더 신뢰하고 자주 크롤링합니다
- 변경 없이 lastmod만 바꾸면 구글이 사이트맵 자체를 무시할 수 있습니다
흔한 사이트맵 실수#
- 200이 아닌 상태 코드 URL 포함
- canonical이 다른 URL을 가리키는 페이지 포함
- robots.txt에서 차단된 URL 포함
- hreflang 대체 URL 누락
4. HTTPS와 보안#
2014년부터 HTTPS는 구글의 공식 랭킹 신호입니다. 2026년 현재 구글 1페이지 결과의 99% 이상이 HTTPS를 사용합니다.
HTTPS 보안 체크리스트#
- [ ] SSL/TLS 인증서 설치 및 자동 갱신 설정
- [ ] HTTP → HTTPS 301 리다이렉트 설정
- [ ] HSTS(HTTP Strict Transport Security) 헤더 적용하여 브라우저가 항상 HTTPS로 접속하도록 강제
- [ ] Mixed Content 문제 해결: HTTPS 페이지에서 HTTP로 로드되는 이미지, 스크립트, CSS 제거
- [ ] 사이트맵과 canonical URL이 모두 HTTPS인지 확인
- [ ] Google Search Console에 HTTPS 버전 등록
Mixed Content란?#
HTTPS 페이지에서 HTTP 리소스(이미지, 스크립트 등)를 불러오는 상황입니다. 브라우저가 보안 경고를 표시하고, 구글은 이를 보안 문제로 간주합니다. 모든 리소스 URL을 HTTPS로 변경하거나 상대 경로(//)를 사용하세요.
5. 모바일 최적화#
구글은 2019년부터 모바일 우선 인덱싱(Mobile-First Indexing)을 기본으로 적용합니다. 이는 구글이 모바일 버전의 페이지를 기준으로 순위를 결정한다는 의미입니다.
모바일 최적화 체크리스트#
- [ ] 반응형 디자인 적용 (모든 화면 크기에 적응)
- [ ] viewport 메타 태그 설정
- [ ] 터치 타겟 크기 48px x 48px 이상
- [ ] 모바일에서 팝업/인터스티셜 광고 최소화 (구글 패널티 대상)
- [ ] 텍스트 크기 최소 16px (확대 없이 읽을 수 있도록)
- [ ] 모바일과 데스크톱 콘텐츠가 동일한지 확인
- [ ] 모바일 페이지 로딩 속도 3초 이내
모바일 친화성 테스트#
Google의 PageSpeed Insights에서 모바일 성능을 무료로 테스트할 수 있습니다. Lighthouse의 모바일 감사도 활용하세요.
6. Core Web Vitals 상세#
Core Web Vitals는 구글의 공식 랭킹 요소로, 사용자 경험을 3가지 핵심 지표로 측정합니다.
LCP (Largest Contentful Paint) — 로딩 성능#
| 등급 | 기준 | 의미 |
|---|---|---|
| 좋음 | 2.5초 이하 | 메인 콘텐츠가 빠르게 로드됨 |
| 개선 필요 | 2.5~4초 | 사용자가 기다림을 느낌 |
| 나쁨 | 4초 초과 | 높은 이탈률 발생 |
LCP 최적화 방법:
- 히어로 이미지를 WebP/AVIF 포맷으로 변환하고 적절한 크기로 제공
- 서버 응답 시간(TTFB) 200ms 이내 유지
- CDN 사용으로 콘텐츠 전달 속도 향상
- 렌더링 차단 리소스(CSS, JS) 최소화
- LCP 요소에 fetchpriority="high" 적용
INP (Interaction to Next Paint) — 상호작용 반응성#
| 등급 | 기준 | 의미 |
|---|---|---|
| 좋음 | 200ms 이하 | 클릭/탭에 즉각 반응 |
| 개선 필요 | 200~500ms | 반응 지연 느껴짐 |
| 나쁨 | 500ms 초과 | 사이트가 멈춘 것처럼 느껴짐 |
INP 최적화 방법:
- 무거운 JavaScript 작업을 분할하여 메인 스레드 블로킹 방지
- 이벤트 핸들러에서 불필요한 작업 제거
- requestAnimationFrame, requestIdleCallback 활용
- 써드파티 스크립트 지연 로딩
CLS (Cumulative Layout Shift) — 시각적 안정성#
| 등급 | 기준 | 의미 |
|---|---|---|
| 좋음 | 0.1 이하 | 레이아웃이 안정적 |
| 개선 필요 | 0.1~0.25 | 간헐적 레이아웃 이동 |
| 나쁨 | 0.25 초과 | 읽는 중 콘텐츠가 밀림 |
CLS 최적화 방법:
- 이미지와 동영상에 width/height 속성 명시
- 광고 영역에 미리 크기를 예약 (min-height 설정)
- 웹폰트 로딩 시 font-display: swap 사용하고 fallback 폰트 크기 매칭
- 동적 콘텐츠 삽입 시 기존 콘텐츠 밀림 방지
7. 구조화 데이터 (Schema Markup)#
JSON-LD 형식의 구조화 데이터를 사용하면 구글이 페이지 내용을 더 정확히 이해하고, 리치 결과(Rich Results)를 표시할 수 있습니다.
주요 구조화 데이터 유형#
| 스키마 유형 | 용도 | 리치 결과 |
|---|---|---|
| Article | 블로그 글, 뉴스 기사 | 검색 결과에 발행일, 이미지, 저자 표시 |
| FAQPage | 자주 묻는 질문 | 검색 결과에 질문/답변 아코디언 표시 |
| Product | 상품 페이지 | 가격, 재고, 별점 표시 |
| LocalBusiness | 지역 비즈니스 | 지도, 영업시간, 전화번호 표시 |
| BreadcrumbList | 사이트 탐색 경로 | 검색 결과에 경로 표시 |
| HowTo | 단계별 가이드 | 단계별 미리보기 표시 |
구조화 데이터 적용 원칙#
- 페이지 내용과 일치하는 스키마만 사용 (허위 정보는 패널티 대상)
- Google의 리치 결과 테스트 도구로 검증
- 한 페이지에 여러 스키마 유형을 조합 가능 (Article + FAQPage + BreadcrumbList)
8. URL 구조 모범 사례#
SEO 친화적인 URL은 짧고, 서술적이며, 키워드를 포함합니다.
URL 구조 규칙#
| 규칙 | 좋은 예 | 나쁜 예 |
|---|---|---|
| 짧고 서술적 | /blog/backlink-guide | /blog/2026/03/26/the-complete-guide-to-backlinks-for-seo |
| 키워드 포함 | /services/pbn-backlinks | /services/service-type-1 |
| 하이픈 사용 | /technical-seo-guide | /technical_seo_guide |
| 소문자만 | /seo-guide | /SEO-Guide |
| 파라미터 최소화 | /products/shoes | /products?id=123&cat=4&ref=home |
URL 변경 시 주의사항#
URL을 변경할 때는 반드시 301 리다이렉트를 설정해야 합니다. 기존 URL에 쌓인 백링크 파워와 순위를 새 URL로 이전시키기 위함입니다.
9. 인덱싱 관리#
Google Search Console 활용 가이드를 참고하여 색인 상태를 정기 점검하세요.
인덱싱 제어 태그#
| 태그 | 용도 | 사용 시점 |
|---|---|---|
| noindex | 해당 페이지 인덱싱 차단 | 내부 검색 결과, 감사 페이지, 테스트 페이지 |
| nofollow | 해당 페이지의 링크를 따라가지 않음 | 사용자 생성 콘텐츠(댓글), 로그인 페이지 |
| canonical | 중복 페이지의 원본 지정 | 같은 콘텐츠의 여러 URL이 존재할 때 |
| noarchive | 캐시 저장 방지 | 자주 변경되는 가격 정보 등 |
인덱싱 문제 해결 프로세스#
10. 리다이렉트 관리#
301 vs 302 리다이렉트#
| 유형 | 의미 | SEO 효과 | 사용 시점 |
|---|---|---|---|
| 301 | 영구 이동 | 링크 파워 약 90~99% 이전 | URL 영구 변경, 도메인 이전, HTTP→HTTPS |
| 302 | 임시 이동 | 링크 파워 이전 안 됨 | A/B 테스트, 일시적 점검, 시즌별 페이지 |
리다이렉트 체인 문제#
A → B → C → D처럼 리다이렉트가 연쇄되면:
- 크롤링 버짓 낭비
- 페이지 로딩 시간 증가
- 링크 파워 손실 누적
해결: 모든 리다이렉트를 최종 URL로 직접 연결되도록 수정하세요. 리다이렉트는 최대 2회 이내가 이상적입니다.
테크니컬 SEO 체크리스트#
- [ ] robots.txt가 정상적으로 설정되어 있는가?
- [ ] XML 사이트맵을 Search Console에 제출했는가?
- [ ] HTTPS가 적용되고 Mixed Content가 없는가?
- [ ] 모바일 반응형 디자인이 적용되어 있는가?
- [ ] Core Web Vitals (LCP, INP, CLS) 모두 "좋음" 등급인가?
- [ ] 주요 페이지에 구조화 데이터(JSON-LD)가 적용되어 있는가?
- [ ] URL이 짧고 서술적이며 키워드를 포함하는가?
- [ ] 중복 콘텐츠에 canonical 태그가 설정되어 있는가?
- [ ] 리다이렉트 체인이 없는가? (최대 2회 이내)
- [ ] 404 페이지와 소프트 404가 정리되어 있는가?
- [ ] noindex/nofollow 태그가 올바르게 사용되고 있는가?
- [ ] Search Console에서 색인 오류를 정기 점검하는가?
테크니컬 SEO는 온페이지 SEO와 백링크 전략의 기반입니다. 전문적인 기술 SEO 감사가 필요하시다면 온페이지 SEO 서비스를 확인하시거나 무료 SEO 상담을 신청해주세요.