구조·마크업 · 공식 문서

URL 구조 설계, 단어·계층·길이 규칙 정하는 순서

먼저 크롤러가 읽을 수 있는 형식(표준 문자, 퍼센트 인코딩, # 대신 경로)을 지킵니다. 그 위에 단어·계층·길이 규칙을 정해 사이트 전체에 적용합니다. 구글은 긴 ID 대신 읽을 수 있는 단어, 하이픈 구분, 주제별 디렉터리, 내용을 바꾸지 않는 파라미터 빼기를 권장합니다.

URL은 페이지의 위치이면서, 검색엔진이 페이지를 서로 구분하는 이름입니다. 규칙 없이 만들면 같은 내용이 여러 URL로 열리고 크롤러가 쓸모없는 URL에 시간을 씁니다.

구글 「URL 구조 권장사항」과 네이버 「검색 친화적인 URL 구축하기」를 원문으로 읽고, 사이트 전체에 적용할 규칙 목록으로 옮겼습니다.

발견 01

구글은 URL 규칙을 요구사항 3개와 권장사항 6개로 나눠 적었습니다

To make sure Google Search can crawl your site effectively, use a crawlable URL structure that meets the following requirements.

구글 검색이 사이트를 효과적으로 크롤링하도록, 아래 요구사항을 충족하는 크롤링 가능한 URL 구조를 쓰라.

Google Search Central 「URL structure best practices for Google Search」
구분구글 문서 항목(한국어판)원문
요구사항IETF STD 66 준수Google Search supports URLs as defined by IETF STD 66. Characters defined by the standard as reserved must be percent encoded.구글 검색은 IETF STD 66 이 정한 URL을 지원한다. 표준이 예약 문자로 정한 글자는 퍼센트 인코딩해야 한다.
요구사항URL 프래그먼트를 사용하여 콘텐츠를 변경하지 않음Don't use fragments to change the content of a page, as Google Search generally doesn't support URL fragments. If you're using JavaScript to change content, use the History API instead.구글 검색은 대체로 URL 프래그먼트를 지원하지 않으므로, 프래그먼트로 페이지 내용을 바꾸지 말라. 자바스크립트로 내용을 바꾼다면 History API 를 쓰라.
요구사항URL 매개변수에 일반적 인코딩 사용When specifying URL parameters, use the following common encoding: an equal sign (=) to separate key-value pairs and add additional parameters with an ampersand (&).URL 매개변수는 등호(=)로 키와 값을 나누고 앰퍼샌드(&)로 매개변수를 더하는 일반적 인코딩을 쓰라.
권장사항설명 URL 사용하기When possible, use readable words rather than long ID numbers in your URLs.가능하면 URL에 긴 ID 번호 대신 읽을 수 있는 단어를 쓰라.
권장사항잠재고객의 언어 사용Use words in your audience's language in the URL (and, if applicable, transliterated words).URL에는 잠재고객이 쓰는 언어의 단어(필요하면 음역한 단어)를 쓰라.
권장사항필요에 따라 퍼센트 인코딩 사용When linking to pages on your site, use percent encoding in your links's href attributes as necessary.사이트 안 페이지로 링크할 때는 필요에 따라 링크의 href 속성에 퍼센트 인코딩을 쓰라.
권장사항단어 구분 시 하이픈 사용Specifically, we recommend using hyphens (-) instead of underscores (_) to separate words in your URLs, as it helps users and search engines better identify concepts in the URL.URL의 단어 구분에는 밑줄(_) 대신 하이픈(-)을 권장한다. 사용자와 검색엔진이 URL 속 개념을 더 잘 알아본다.
권장사항매개변수를 최대한 적게 사용Whenever possible, shorten URLs by trimming unnecessary parameters (meaning, parameters that don't change the content).가능하면 내용을 바꾸지 않는 불필요한 매개변수를 빼서 URL을 줄이라.
권장사항URL은 대소문자를 구분함Like any other HTTP client following IETF STD 66, Google Search's URL handling is case sensitive (for example, Google treats both /APPLE and /apple as distinct URLs with their own content).구글 검색의 URL 처리는 대소문자를 구분한다. /APPLE 과 /apple 을 서로 다른 URL로 본다.
요구사항은 크롤링이 되기 위한 형식이고, 권장사항은 구글과 사용자가 URL을 이해하기 쉽게 하는 방법입니다.

요구사항을 어기면 규칙을 아무리 잘 정해도 크롤러가 페이지를 제대로 찾지 못합니다. 그래서 형식 점검이 첫 순서입니다.

구글은 복잡한 URL이 같은 내용을 가리키는 URL을 불필요하게 늘린다고 적었습니다(원문: Overly complex URLs, especially those containing multiple parameters, can cause problems for crawlers by creating unnecessarily high numbers of URLs that point to identical or similar content on your site.)

발견 02

사이트 규칙은 형식 2, 단어 3, 계층 2, 길이 2의 9가지로 정합니다

순서구분규칙예공식 문서 원문
1형식표준 형식을 따르고, 예약 문자는 퍼센트 인코딩합니다.값 속의 & 는 %26 으로Google Search supports URLs as defined by IETF STD 66. Characters defined by the standard as reserved must be percent encoded.구글 검색은 IETF STD 66 이 정한 URL을 지원한다. 표준이 예약 문자로 정한 글자는 퍼센트 인코딩해야 한다.
2형식내용이 바뀌는 화면은 # 대신 경로를 따로 둡니다./#/potatoes 대신 /potatoesDon't use fragments to change the content of a page, as Google Search generally doesn't support URL fragments. If you're using JavaScript to change content, use the History API instead.구글 검색은 대체로 URL 프래그먼트를 지원하지 않으므로, 프래그먼트로 페이지 내용을 바꾸지 말라. 자바스크립트로 내용을 바꾼다면 History API 를 쓰라.
3단어긴 ID 번호 대신 읽을 수 있는 단어를 씁니다./wiki/AviationWhen possible, use readable words rather than long ID numbers in your URLs.가능하면 URL에 긴 ID 번호 대신 읽을 수 있는 단어를 쓰라.
4단어단어 사이는 하이픈(-)으로 나눕니다./summer-clothingSpecifically, we recommend using hyphens (-) instead of underscores (_) to separate words in your URLs, as it helps users and search engines better identify concepts in the URL.URL의 단어 구분에는 밑줄(_) 대신 하이픈(-)을 권장한다. 사용자와 검색엔진이 URL 속 개념을 더 잘 알아본다.
5단어대소문자를 하나로 정합니다(보통 소문자)./apple 하나만 사용If upper and lower case text in a URL is treated the same by your web server, convert all text to the same case so it's easier for Google to determine that URLs reference the same page.웹 서버가 대소문자를 같게 처리한다면, 모든 글자를 한쪽으로 통일해 구글이 같은 페이지임을 쉽게 알게 하라.
6계층주제가 같은 페이지는 한 디렉터리에 모읍니다./policies/return-policy.htmlSpecifically, using directories (or folders) to group similar topics can help Google learn how often the URLs in individual directories change.비슷한 주제를 디렉터리(폴더)로 묶으면, 구글이 디렉터리마다 URL이 얼마나 자주 바뀌는지 배우는 데 도움이 된다.
7계층내부 링크는 / 로 시작하는 루트 기준 경로로 겁니다./category/stuffTo fix, use root-relative URLs in your links (instead of parent-relative).고치려면 링크에 부모 폴더 기준(../) 상대 경로 대신 루트 기준 경로를 쓰라.
8길이내용을 바꾸지 않는 파라미터는 뺍니다.?sid=789 제거Whenever possible, shorten URLs by trimming unnecessary parameters (meaning, parameters that don't change the content).가능하면 내용을 바꾸지 않는 불필요한 매개변수를 빼서 URL을 줄이라.
9길이세션 ID는 URL 대신 쿠키에 둡니다.?sessionid= 제거Wherever possible, avoid the use of session IDs in URLs and consider using cookies instead.가능하면 URL에 세션 ID를 쓰지 말고 쿠키를 고려하라.
위에서 아래로 정합니다. 예는 구글 문서의 예시 URL에서 옮겼습니다.

길이에는 숫자 기준 대신 「뺄 것」이 있습니다

구글 URL 구조 문서에는 URL 길이의 숫자 상한이 없습니다. 길이 규칙은 내용을 바꾸지 않는 파라미터와 세션 ID를 빼는 것입니다.

기술 한도는 따로 있습니다. 사이트맵 프로토콜은 <loc> 값에 대해 「This value must be less than 2,048 characters.」라고 적었습니다.

한글처럼 퍼센트 인코딩되는 글자는 길이가 몇 배로 늘어납니다. 이 계산은 「한글 URL 인코딩」 편에 자세히 적었습니다.

네이버 가이드가 적은 것원문
언제 정하나검색 친화적인 URL은 사이트를 처음 구축할 시점에서 고려해야 됩니다.
구조사이트의 URL 구조는 콘텐츠의 분류에 맞게 이해하기 쉬운 구조로 구성하는 것을 권장합니다.
의미검색엔진뿐만이 아니라 사이트를 방문하는 사용자들도 쉽게 의미를 파악할 수 있는 URL 체계를 갖춰야 합니다.
대소문자웹 서버의 종류에 따라서 대소문자를 구분할 수 있으며, 통상적으로 소문자로 처리합니다.
파라미터검색 친화적인 관점에서 URL 파라미터를 최소화하는 것을 권장합니다.
부분 식별자(#)부분 식별자(fragment)는 검색엔진이 해석하지 않기 때문에 콘텐츠의 성격이 다른 페이지는 독립된 URL로 구축합니다.
네이버 서치어드바이저 「검색 친화적인 URL 구축하기」의 한국어 원문입니다. 구글과 같은 방향입니다.

발견 03

구글은 URL 속 키워드가 순위에 주는 영향은 거의 없고, 탐색경로로 쓰인다고 적었습니다

From a ranking perspective, the keywords in the name of the domain (or URL path) alone have hardly any effect beyond appearing in breadcrumbs.

순위 관점에서 도메인 이름이나 URL 경로 속 키워드만으로는 탐색경로에 나오는 것 말고는 영향이 거의 없다.

Google Search Central 「SEO Starter Guide: The Basics」
구글 문서가 적은 것원문
URL 속 단어의 쓰임Parts of the URL can be displayed in search results as breadcrumbs, so users can also use the URLs to understand whether a result will be useful for them.URL 일부가 검색결과에 탐색경로로 보일 수 있어, 사용자는 URL을 보고 그 결과가 쓸모 있을지 판단할 수 있다.
디렉터리의 쓰임Specifically, using directories (or folders) to group similar topics can help Google learn how often the URLs in individual directories change. Google can learn this information and crawl the different directories at different frequencies.비슷한 주제를 디렉터리로 묶으면 구글이 디렉터리별 변경 빈도를 배우고, 디렉터리마다 다른 빈도로 크롤링할 수 있다.
언제 효과가 큰가If you have more than a few thousand URLs on your site, how you organize your content may have effects on how Google crawls and indexes your site.사이트 URL이 수천 개를 넘으면 콘텐츠를 묶는 방식이 구글의 크롤링과 색인 생성에 영향을 줄 수 있다.
탐색경로는 구글 한국어판이 breadcrumbs 를 옮긴 말입니다.

그래서 단어 규칙의 목적은 순위가 아니라 읽기입니다. 검색 결과를 보는 사람이 URL만 보고 어떤 페이지인지 알 수 있으면 됩니다.

디렉터리 규칙은 페이지가 많은 사이트에서 힘을 씁니다. 자주 바뀌는 묶음과 거의 안 바뀌는 묶음을 나눠 두면 구글이 묶음마다 크롤링 빈도를 다르게 배웁니다.

발견 04

같은 규칙도 B2B·B2C·B2G 사이트는 무게를 두는 자리가 다릅니다

예시 ① 산업용 밸브 제조사의 제품 사이트(B2B)

구매 담당자는 제품 종류와 규격으로 찾습니다. /products/ball-valve/ 처럼 종류를 디렉터리로 두고, 상세 페이지는 그 아래에 둡니다.

품번은 단어 뒤에 붙입니다. 영업 메일에 URL이 그대로 실리므로 대소문자를 소문자 하나로 정해 두면 링크가 갈라지지 않습니다.

예시 ② 의류 쇼핑몰(B2C)

카테고리는 /women/dresses/ 처럼 단어 경로로 두고, 정렬·색상 필터는 파라미터로 붙입니다. 필터가 조합될 때마다 URL이 늘어납니다.

구글도 필터 조합으로 URL 수가 폭발한다고 적었습니다(원문: When filters can be combined in an additive manner (for example: hotels on the beach and with a fitness center), the number of URLs (views of data) in the sites explodes.) 파라미터 처리는 「URL 파라미터」 편에 자세히 적었습니다.

예시 ③ 공공기관 누리집(B2G)

게시판 URL이 ?menuId=…&bbsId=… 처럼 ID 파라미터로만 된 경우가 많습니다. 이미 색인된 URL을 규칙 때문에 한꺼번에 바꾸면 리다이렉트 작업이 커집니다.

새로 여는 안내 페이지부터 단어 경로 규칙을 적용하고, 개편 사업 때 URL 짝표와 함께 옛 URL을 옮깁니다.

그럼 우리 사이트 URL 규칙은 어떤 순서로 정하나요?

  1. 사이트맵이나 서치 콘솔 페이지 보고서에서 지금 URL 목록을 뽑습니다.
  2. 형식부터 봅니다. # 로 내용이 바뀌는 화면과 대소문자가 섞인 URL을 찾습니다.
  3. 단어 규칙을 정합니다. 읽을 수 있는 단어, 하이픈 구분, 소문자 하나입니다.
  4. 계층 규칙을 정합니다. 맨 앞 디렉터리 목록을 주제별로 확정합니다.
  5. 길이 규칙을 정합니다. URL에 붙는 파라미터를 목록으로 만들고, 내용을 바꾸지 않는 것을 표시합니다.
  6. 규칙을 문서로 남기고 새 페이지부터 적용합니다. 이미 색인된 URL을 바꿀 때는 301 리다이렉트를 함께 둡니다(「리다이렉트 설정 방법」 편).

기존 사이트를 당장 다 고칠 필요는 없습니다. 구글은 지금 구조로도 검색엔진이 페이지를 이해할 것이라고 적었습니다(원문: Don't drop everything and start reorganizing your site right now though: while these suggestions can be helpful long term (especially if you're working on a larger website), search engines will likely understand your pages as they are right now, regardless of how your site is organized.)

조사 방법

  • Google Search Central 「URL structure best practices for Google Search」 (문서 수정일 2026-10-21) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/crawling-indexing/url-structure
  • Google Search Central 「SEO Starter Guide: The Basics」 (문서 수정일 2025-12-10) · 최종 확인일 2026-10-25 · https://developers.google.com/search/docs/fundamentals/seo-starter-guide
  • 네이버 서치어드바이저 「검색 친화적인 URL 구축하기」 (문서 수정일 2021-03-24) · 최종 확인일 2026-10-25 · https://searchadvisor.naver.com/guide/seo-advanced-url
  • sitemaps.org 「Sitemaps XML format」 (문서 수정일 2016-11-21) · 최종 확인일 2026-10-25 · https://www.sitemaps.org/protocol.html
  • 규칙 9가지는 위 문서들이 권장한 항목을 형식·단어·계층·길이로 묶은 것입니다. 묶는 방식과 순서는 편집 판단입니다.
  • 예시 ①②③은 이해를 돕기 위해 만든 가상 상황이며, 실제 기업·기관의 사례가 아닙니다.
  • 구글 원문은 영어판(hl=en)이고, 항목 이름과 용어(매개변수·탐색경로)는 같은 문서 한국어판(hl=ko) 표기를 따랐습니다.