🗺️ SEO · XML · Google Search Console

사이트맵(Sitemap) 완전 정복

sitemap.xml을 만들어 구글에 제출하면 크롤러가 내 페이지를 더 빠르게 발견해요.
작성법부터 Search Console 등록까지 한 번에 따라 해봐요.

⏱️ 약 8분 📅 2026년 4월 🏷️ SEO · XML · 검색최적화 👶 입문 난이도
① 개념

사이트맵이란 무엇인가요?

구글 크롤러에게 "내 사이트에는 이런 페이지들이 있어요"라고 알려주는 지도

사이트맵(Sitemap)은 웹사이트의 모든 페이지 URL을 정리한 파일이에요. 구글, 네이버 등 검색 엔진의 크롤러(bot)가 이 파일을 읽고 사이트의 어떤 페이지가 있는지 파악해요. 사이트맵이 없으면 크롤러가 링크를 타고 돌아다니며 페이지를 발견해야 하는데, 새 페이지나 업데이트된 페이지를 놓칠 수 있어요.

특히 바이브 코딩으로 만든 정적 HTML 사이트나 블로그는 내부 링크가 적을 수 있어서, 사이트맵을 직접 제출하는 게 검색 노출에 큰 도움이 돼요. Google Search Console에 sitemap.xml을 등록하면 구글이 내 사이트를 얼마나 잘 크롤링하는지 통계도 볼 수 있어요.

🔍

빠른 색인 등록

새 페이지를 만들고 사이트맵을 업데이트하면, 구글이 새 페이지를 더 빠르게 발견하고 검색 결과에 올려줘요.

📊

크롤링 효율 향상

크롤러가 불필요한 페이지를 탐색하지 않고 중요한 페이지에 집중할 수 있어서 크롤 예산이 절약돼요.

📅

업데이트 정보 전달

lastmod, changefreq로 페이지 갱신 정보를 전달해서 크롤러가 최신 콘텐츠를 우선 수집해요.

💯

SEO 기본 중의 기본

Google Search Console의 사이트맵 제출 기능으로 등록만 하면 돼요. 무료이고 설정이 간단해요.

XML 사이트맵 vs HTML 사이트맵

종류 대상 형식 용도
XML 사이트맵 검색 엔진 sitemap.xml SEO, 크롤링 최적화
HTML 사이트맵 사람 (방문자) sitemap.html 사이트 전체 구조 안내
💡

SEO를 위해서는 XML 사이트맵이 핵심이에요. HTML 사이트맵은 방문자를 위한 편의 기능이고, 검색 엔진에는 직접적인 영향이 적어요. 이 가이드에서는 XML 사이트맵 위주로 설명해요.

② XML 사이트맵 구조

sitemap.xml 태그 완전 해설

4개의 핵심 태그만 알면 sitemap.xml을 직접 작성할 수 있어요

<loc>
페이지 URL
해당 페이지의 완전한 URL이에요. 반드시 https://로 시작하는 절대 URL을 써야 해요.
https://example.com/page.html
<lastmod>
마지막 수정일
페이지가 마지막으로 수정된 날짜예요. YYYY-MM-DD 형식을 사용해요. 크롤러가 재방문 여부를 결정할 때 참고해요.
2025-01-15
<changefreq>
갱신 주기
페이지가 얼마나 자주 바뀌는지를 나타내요. always / hourly / daily / weekly / monthly / yearly / never 중 선택해요.
weekly
<priority>
우선순위
사이트 내 상대적 중요도예요. 0.0~1.0 사이 값을 쓰고, 기본값은 0.5예요. 홈페이지는 1.0을 권장해요.
0.8
⚠️

참고: changefreqpriority는 구글이 힌트로만 참고하며, 실제 크롤링 빈도에 직접 영향을 주지는 않아요. 필수 태그는 <loc>뿐이에요. 나머지는 선택 사항이지만 추가하면 더 좋아요.

③ 완성 코드

바로 쓸 수 있는 sitemap.xml + robots.txt

URL만 바꾸면 바로 사용할 수 있는 완성 파일이에요

sitemap.xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

  <!-- 홈페이지 (가장 중요, priority 1.0) -->
  <url>
    <loc>https://example.com/</loc>
    <lastmod>2025-01-15</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>

  <!-- 주요 페이지 (priority 0.8) -->
  <url>
    <loc>https://example.com/about.html</loc>
    <lastmod>2025-01-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <!-- 블로그 글 / 서브 페이지 (priority 0.6) -->
  <url>
    <loc>https://example.com/blog/post-1.html</loc>
    <lastmod>2025-01-08</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- 추가 페이지는 <url>...</url> 블록을 복사해서 붙여넣으세요 -->

</urlset>
robots.txt
# robots.txt — 크롤러 허용 규칙 + 사이트맵 위치 안내

User-agent: *
Allow: /

# 사이트맵 위치를 명시하면 크롤러가 자동으로 읽어가요
Sitemap: https://example.com/sitemap.xml

배포 방법: sitemap.xmlrobots.txt는 사이트 루트 디렉토리에 올려야 해요. GitHub Pages라면 레포지토리 루트에, 일반 호스팅이라면 도메인 바로 아래 경로(예: https://example.com/sitemap.xml)에 있어야 해요. Search Console에 제출 후 "가져오기"를 클릭해 정상 동작하는지 확인하세요.

④ 만들어보기

사이트맵 생성기

URL을 입력하면 sitemap.xml 코드가 실시간으로 만들어져요

🗺️ Sitemap Generator LIVE
sitemap.xml — 결과
URL을 입력하고 "사이트맵 생성" 버튼을 눌러보세요...
⑤ FAQ

자주 묻는 질문

사이트맵 관련해서 가장 많이 헷갈리는 것들만 모았어요

Google Search Console에 어떻게 제출하나요?

Google Search Console에 접속해 사이트를 등록해요. ② 왼쪽 메뉴에서 색인 생성 → Sitemaps를 클릭해요. ③ sitemap.xml을 입력하고 제출 버튼을 눌러요.

제출 후 "가져올 수 없음" 오류가 뜨면 파일 경로가 잘못된 거예요. 브라우저에서 직접 https://여러분의도메인.com/sitemap.xml에 접속해 파일이 보이는지 확인하세요.

Search Console이 처음이라면 먼저 소유권 확인이 필요해요. HTML 파일을 루트에 올리거나, DNS 레코드를 추가하는 방법 중 하나로 인증할 수 있어요. GitHub Pages 사용자는 HTML 파일 방식이 제일 간단해요.

사이트맵 크기 제한이 있나요?

구글의 공식 사이트맵 제한은 파일당 URL 50,000개, 파일 크기 50MB예요. 개인 블로그나 소형 사이트라면 절대 걱정할 필요가 없어요. 수천 개 페이지를 가진 대형 사이트의 경우 여러 개의 사이트맵 파일로 나누고, 사이트맵 인덱스 파일을 만들면 돼요.

사이트맵 인덱스 파일(sitemap_index.xml)은 여러 개의 사이트맵 파일을 하나로 묶어주는 파일이에요. 쇼핑몰처럼 상품 페이지가 수만 개라면 카테고리별로 사이트맵을 나누고 인덱스로 묶는 방식을 쓰면 돼요.

이미지 사이트맵은 따로 만들어야 하나요?

이미지가 많은 사이트(사진 포트폴리오, 쇼핑몰 상품 이미지 등)는 이미지 사이트맵을 추가하면 구글 이미지 검색에서 더 잘 노출돼요. 일반 sitemap.xml의 <url> 안에 <image:image> 태그를 추가하는 방식이에요.

블로그나 일반 정보 사이트라면 굳이 이미지 사이트맵을 따로 만들 필요는 없어요. 구글은 페이지 내 이미지를 크롤링할 때 자동으로 발견해요. 이미지 SEO를 적극적으로 챙기고 싶다면 이미지 alt 속성을 먼저 잘 작성하세요. 이게 더 효과적이에요.

사이트맵을 얼마나 자주 갱신해야 하나요?

새 페이지를 추가할 때마다 사이트맵에 해당 URL을 추가하고, 구글 Search Console에서 "다시 제출"하는 게 좋아요. 파일 자체를 다시 제출할 필요는 없고, Search Console이 주기적으로 자동 갱신을 확인해요.

robots.txt에 사이트맵 위치를 명시해두면 구글이 알아서 주기적으로 읽어가요. 콘텐츠를 자주 업데이트하는 블로그라면 월 1~2회 사이트맵을 업데이트하고 Search Console에서 상태를 확인하는 루틴을 만들면 좋아요.

GitHub Actions나 빌드 도구를 사용한다면 배포 시 사이트맵을 자동 생성하도록 설정할 수도 있어요. 정적 사이트 생성기(Gatsby, Next.js, Hugo 등)는 대부분 플러그인으로 자동 생성을 지원해요.

robots.txt와 사이트맵의 관계는 무엇인가요?

robots.txt는 크롤러에게 "어떤 페이지를 크롤링해도 되고 안 되는지"를 알려주는 파일이에요. sitemap.xml은 "어떤 페이지들이 있는지"를 알려주는 파일이에요. 두 파일은 함께 쓰이며 역할이 달라요.

robots.txt에서 Disallow된 페이지는 사이트맵에 포함하면 안 돼요. 크롤러가 사이트맵을 보고 방문하려는데 robots.txt가 막으면 혼란이 생겨요. 사이트맵에는 반드시 크롤링을 허용한 페이지만 포함시켜요.

robots.txt 마지막 줄에 Sitemap: https://example.com/sitemap.xml을 추가하면, 구글뿐 아니라 다양한 검색 엔진의 크롤러가 사이트맵 위치를 자동으로 알 수 있어요. Search Console 제출과 함께 사용하면 더욱 효과적이에요.

⑥ 다음 단계

다음에 배워볼 것들

사이트맵 설정을 마쳤다면 SEO 체크리스트를 완성해보세요

🏷️
메타태그 가이드
SEO와 SNS 공유를 위한 메타태그 완전 정복
SEO · HTML
📊
Google Analytics 4
방문자 수, 유입 경로, 클릭 이벤트 무료로 분석하기
GA4 · 분석
💡
플로팅 버튼
화면에 고정되는 플로팅 버튼 만들기
CSS · JS