XML 사이트맵 작성과 제출 — 형식·lastmod·서치콘솔·서치어드바이저 등록법
SEO Check 편집팀 · 2026-09-28 업데이트 · 6분 읽기
XML 사이트맵은 검색엔진에 색인되길 원하는 페이지 URL 목록을 담은 파일입니다. 사이트 루트에 sitemap.xml을 두고, robots.txt에 경로를 적은 뒤 구글 서치콘솔과 네이버 서치어드바이저에 제출하면 됩니다. 사이트맵에는 정상(200) 응답하는 대표 URL만 넣고, 실제 수정일을 lastmod로 정확하게 기록하는 것이 핵심입니다.
사이트맵은 왜 필요한가요?
검색엔진은 링크를 따라 페이지를 발견합니다. 내부 링크가 약하거나 새 페이지가 자주 생기는 사이트는 크롤러가 일부 페이지를 늦게 찾거나 놓칠 수 있습니다. 사이트맵이 있으면 다음과 같은 이점이 있습니다.
- 새 페이지와 수정된 페이지가 더 빨리 발견됩니다.
- 어느 URL이 대표 주소인지 알리는 보조 신호가 됩니다 (canonical 가이드 참고).
- 서치콘솔에서 제출한 URL 중 몇 개가 색인되었는지 비교해 문제를 찾을 수 있습니다.
기본 형식은 어떻게 작성하나요?
사이트맵은 sitemaps.org 표준을 따르는 UTF-8 XML 파일입니다.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.example.co.kr/</loc>
<lastmod>2026-09-20</lastmod>
</url>
<url>
<loc>https://www.example.co.kr/service/interior</loc>
<lastmod>2026-09-12</lastmod>
</url>
</urlset>
| 태그 | 필수 여부 | 설명 |
|---|---|---|
<loc> |
필수 | https://로 시작하는 절대 URL |
<lastmod> |
권장 | 마지막 수정일, YYYY-MM-DD 또는 시간대를 포함한 형식 |
<changefreq> |
선택 | 구글은 무시 |
<priority> |
선택 | 구글은 무시 |
작성 시 주의할 점은 다음과 같습니다.
- URL 안의
&는&로 바꿔 적어야 XML 오류가 나지 않습니다. - 한글이 들어간 주소는
https://www.example.co.kr/%EC%8B%9C%EA%B3%B5처럼 퍼센트 인코딩된 형태로 넣는 것이 안전합니다. - 파일 하나에는 URL 50,000개, 압축 전 50MB까지 담을 수 있습니다. 넘으면 파일을 나눠야 합니다.
sitemap.xml.gz처럼 gzip으로 압축해 제공해도 됩니다.
사이트맵 인덱스는 언제 쓰나요?
URL이 5만 개를 넘거나 페이지·글·상품처럼 유형별로 나눠 관리하고 싶을 때 여러 사이트맵을 묶는 사이트맵 인덱스를 사용합니다.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://www.example.co.kr/sitemap-pages.xml</loc>
<lastmod>2026-09-20</lastmod>
</sitemap>
<sitemap>
<loc>https://www.example.co.kr/sitemap-posts.xml</loc>
<lastmod>2026-09-27</lastmod>
</sitemap>
</sitemapindex>
인덱스 파일 안에 다른 인덱스 파일을 넣을 수는 없습니다. 제출할 때는 인덱스 파일 하나만 등록하면 하위 사이트맵까지 함께 읽힙니다. 워드프레스는 기본 기능으로 /wp-sitemap.xml을, Yoast·Rank Math 같은 SEO 플러그인은 /sitemap_index.xml을 자동으로 만들어 줍니다.
lastmod는 어떻게 관리해야 하나요?
구글은 lastmod 값이 일관되게 정확하다고 확인될 때 재크롤링 시점을 정하는 데 활용합니다. 반대로 부정확한 값이 반복되면 무시합니다.
- 본문, 가격, 주요 정보처럼 의미 있는 변경이 있을 때만 날짜를 갱신합니다.
- 사이트맵을 생성할 때마다 모든 URL의 lastmod를 오늘 날짜로 찍는 방식은 피합니다.
- 푸터의 연도나 사이드바 위젯이 바뀐 것은 수정으로 보지 않습니다.
- CMS의 글 수정일 필드와 연동해 자동으로 기록하는 것이 가장 확실합니다.
어떤 URL을 넣고 어떤 URL을 빼야 하나요?
| 넣을 URL | 뺄 URL |
|---|---|
| 200으로 응답하는 대표(canonical) URL | 301·302로 리디렉션되는 URL |
| 검색에 노출하고 싶은 서비스·상품·글 페이지 | 404·410 등 오류 페이지 |
| 대표 호스트와 https를 사용하는 주소 | noindex가 설정된 페이지 |
| 새로 발행했거나 최근 수정한 페이지 | 정렬·필터·추적 파라미터가 붙은 중복 URL |
| 로그인·장바구니·내부 검색 결과 페이지 | |
| robots.txt로 차단한 경로 |
http://와 https://, www와 non-www 주소가 섞이면 사이트맵 자체의 신뢰도가 떨어집니다. 모든 URL을 canonical 태그와 똑같은 최종 주소로 생성하세요.
사이트맵은 어디에 제출하나요?
- robots.txt에 경로 명시: 파일 마지막에
Sitemap: https://www.example.co.kr/sitemap.xml을 추가합니다. 구글·네이버·Bing 등이 모두 이 줄을 참고합니다. 작성법은 robots.txt 가이드를 참고하세요. - 구글 서치콘솔: 왼쪽 메뉴의 Sitemaps에서 사이트맵 URL을 입력하고 제출합니다. 상태가 성공인지, 발견된 URL 수가 예상과 비슷한지 확인합니다.
- 네이버 서치어드바이저: 사이트 등록과 소유확인 후 요청 → 사이트맵 제출 메뉴에서 등록합니다. 블로그형 사이트라면 같은 메뉴에서 RSS도 함께 제출하면 새 글 수집에 유리합니다. 네이버 대응 전반은 네이버 SEO 가이드에서 다룹니다.
- Bing 웹마스터 도구: Sitemaps 메뉴에서 제출합니다. Bing 색인은 Microsoft Copilot 등 AI 서비스에도 활용됩니다.
제출 후에는 서치콘솔의 페이지 색인 생성 보고서에서 사이트맵별로 필터를 걸어, 제출한 URL이 색인되지 않은 이유를 확인할 수 있습니다. 서치콘솔 활용법은 저자의 전자책 PART 7. 측정 & 분석 도구에서 자세히 설명합니다.
자주 발생하는 사이트맵 오류
- 가져올 수 없음: 사이트맵 주소가 404·5xx를 반환하거나 robots.txt·방화벽에 막힌 경우입니다.
- HTML이 응답함: 파일이 없는데 서버가 홈페이지 HTML을 200으로 돌려주는 경우입니다. 브라우저로 열어 XML이 보이는지 확인하세요.
- XML 파싱 오류:
<?xml선언 앞에 공백·BOM이 있거나, 이스케이프되지 않은&가 있는 경우입니다. - 리디렉션·404 URL 포함: 삭제하거나 주소를 바꾼 페이지가 사이트맵에 남아 있는 경우입니다. 자동 생성으로 바꾸면 대부분 해결됩니다.
- noindex 페이지 포함: "색인해 달라"는 요청과 "색인하지 말라"는 지시가 충돌하는 상반된 신호입니다.
- 다른 호스트의 URL: 개발 서버나 이전 도메인 주소가 섞여 있는 경우입니다.
SEO Check에서는 이렇게 점검합니다
- 발견: robots.txt의
Sitemap:줄과/sitemap.xml,/sitemap_index.xml,/wp-sitemap.xml등 표준 경로에서 사이트맵을 찾습니다. 찾지 못하면 중요 문제로 표시합니다. - 형식:
urlset또는sitemapindex구조가 올바른지, 인덱스라면 하위 사이트맵까지 읽어 URL 수를 집계합니다. - lastmod: URL의 80% 이상에 lastmod가 있고, 가장 최근 날짜가 1년 이내여야 통과입니다.
- 주소 일관성: 모든 URL이 대표 호스트와 https를 사용해야 통과입니다.
- URL 응답 표본: 표본 URL이 모두 리디렉션 없이 200으로 응답해야 통과입니다.
정밀진단 리포트에서는 더 많은 하위 사이트맵과 표본 25개 URL을 확인하고, 30페이지 크롤링 결과와 대조해 noindex 페이지가 사이트맵에 들어 있는지도 점검합니다.
자주 묻는 질문
작은 홈페이지도 사이트맵이 필요한가요?
사이트맵에 넣은 URL은 모두 색인되나요?
changefreq와 priority 값은 넣어야 하나요?
사이트맵을 수정할 때마다 핑(ping)을 보내야 하나요?
이 항목, 내 사이트는 어떨까요?
무료 간편진단으로 XML 사이트맵를 포함한 핵심 항목을 1분 만에 확인하세요.