robots.txt가 검색 엔진 크롤러에게 "여기는 오지 마세요"라고 알려주는 파일이라면, AI에게 "우리 사이트에는 이런 콘텐츠가 있어"라고 알려주는 파일은 없을까? 2024년 9월, fast.ai 공동 창립자이자 Answer.AI 대표인 Jeremy Howard가 바로 그 질문에 답하는 제안을 내놓았다. llms.txt다. 이전 글에서 마크다운이 AI의 사실상 모국어라는 이야기를 했는데, llms.txt는 그 마크다운으로 작성하는 사이트 인덱스 파일이다. 이 글에서는 llms.txt가 무엇이고, 어떻게 작성하며, 정말 효과가 있는지에 대해 균형 잡힌 시각으로 이야기하고자 한다.
llms.txt는 웹사이트의 핵심 콘텐츠를 마크다운으로 정리하여 AI에게 안내하는 파일이다. 아직 공식 표준은 아니지만 구현 비용이 낮아 만들어두는 것을 권장한다.
llms.txt란 무엇인가?
llms.txt는 웹사이트의 핵심 콘텐츠를 마크다운 형식으로 정리한 파일이다. 웹사이트 루트 경로(/llms.txt)에 배치하며, LLM(대규모 언어 모델)이 해당 사이트의 구조와 콘텐츠를 빠르게 파악할 수 있도록 돕는 것이 목적이다.
Jeremy Howard는 이 파일이 필요한 이유를 이렇게 설명했다. 웹사이트에는 네비게이션, 광고, 푸터 등 사람을 위한 시각적 요소가 가득하다. LLM이 이 복잡한 HTML을 파싱하려면 불필요한 토큰을 대량으로 소비하게 된다. llms.txt는 그런 잡음을 걷어내고 사이트의 핵심 정보만 깔끔하게 정리해서 제공하는 역할을 한다.
robots.txt와 혼동하기 쉽지만 역할이 전혀 다르다. robots.txt는 크롤러에게 "이 페이지는 접근하지 마라"고 지시하는 배제(exclusion) 파일이다. 반면 llms.txt는 "우리 사이트의 핵심 콘텐츠는 이것이다"라고 안내하는 큐레이션(curation) 파일이다. 차단이 아니라 안내인 셈이다.
한 가지 짚고 넘어갈 것이 있다. llms.txt는 아직 공식 웹 표준(W3C/IETF)이 아니라 Jeremy Howard가 제안한 비공식 표준(proposal)이다. 그럼에도 Anthropic, Vercel, Cloudflare, Stripe 등 주요 기술 기업이 자사 사이트에 도입하면서 빠르게 확산되고 있다.
robots.txt, sitemap.xml, llms.txt는 어떻게 다른가?
robots.txt는 크롤링을 제어하고, sitemap.xml은 페이지 목록을 제공하며, llms.txt는 AI에게 핵심 콘텐츠를 큐레이션해서 안내하는 역할을 한다. 이 세 파일은 대체가 아니라 보완 관계다.
네이버 검색엔진 등록이나 구글 검색엔진 등록을 해본 적이 있다면 robots.txt와 sitemap.xml은 이미 익숙할 것이다. llms.txt가 이 파일들과 어떻게 다른지 비교표로 정리하면 다음과 같다.
| 구분 | robots.txt | sitemap.xml | llms.txt |
|---|---|---|---|
| 목적 | 크롤링 제어 | 페이지 목록 제공 | 핵심 콘텐츠 안내 |
| 대상 | 검색엔진 크롤러 | 검색엔진 크롤러 | LLM / AI 에이전트 |
| 형식 | 플레인 텍스트 | XML | 마크다운 |
| 역할 | 배제(Exclusion) | 발견(Discovery) | 큐레이션(Curation) |
| 표준 | IETF 표준(RFC 9309) | 업계 사실상 표준(sitemaps.org) | 비공식 제안(Proposal) |
| 필수 여부 | 권장 | 권장 | 선택 |
핵심은 이 세 파일이 서로 대체하는 관계가 아니라 보완하는 관계라는 것이다. robots.txt로 접근을 제어하고, sitemap.xml로 전체 페이지를 알려주고, llms.txt로 AI에게 핵심 콘텐츠를 큐레이션해서 전달하는 구조다.
llms.txt는 어떻게 작성하는가?
llms.txt는 마크다운 문법으로 사이트명, 한 줄 요약, 섹션별 링크 목록을 순서대로 작성하면 된다. 공식 스펙은 생각보다 단순하다.
기본 구조
마크다운 문법을 기반으로 다음 요소를 순서대로 작성하면 된다.
# 사이트명 (필수)
> 사이트에 대한 한 줄 요약 (선택)
사이트에 대한 상세 설명을 자유롭게 작성한다. (선택)
## 섹션명
- [페이지 제목](URL): 페이지 설명
- [페이지 제목](URL): 페이지 설명
## Optional
- [부가 페이지](URL): 컨텍스트가 짧을 때 건너뛸 수 있는 정보
## 헤딩으로 섹션을 나누고, 각 섹션 안에 - [제목](URL): 설명 형식으로 링크를 나열하면 된다. ## Optional 섹션은 LLM의 컨텍스트 윈도우가 부족할 때 건너뛸 수 있는 부가 정보를 담는 곳이다.
llms-full.txt와의 차이
llms.txt와 함께 자주 언급되는 것이 llms-full.txt다. llms.txt가 링크 목록 형태의 인덱스라면, llms-full.txt는 사이트의 전체 콘텐츠를 하나의 마크다운 파일에 담은 풀텍스트 버전이다. LLM이 별도의 웹 요청 없이 모든 콘텐츠를 한 번에 읽을 수 있다는 장점이 있지만, 콘텐츠가 많은 사이트에서는 파일 크기가 LLM의 컨텍스트 윈도우를 초과할 수 있다.
블로그나 마케팅 사이트라면 llms.txt만으로 충분한 경우가 대부분이다. llms-full.txt는 API 문서나 기술 문서처럼 전체를 한 번에 참조해야 하는 사이트에 더 적합하다.
실제 작성 예시
블로그 사이트를 기준으로 llms.txt를 작성하면 다음과 같은 형태가 된다.
# Ogaeng Blog
> 디지털 마케팅, 데이터 분석, AI 활용에 대한 실전 가이드를 제공하는 블로그
## 주요 글
- [AI 시대, 마크다운으로 글을 써야 하는 이유](/ai-markdown-writing/): AI가 마크다운을 가장 잘 이해하는 이유와 마케터가 마크다운을 시작하는 방법
- [AI 시대, 웹 분석은 어떻게 달라지는가](/ai-web-analytics-change/): AI 검색 확산으로 달라지는 웹 분석과 GA4에서 AI 트래픽을 추적하는 방법
## 분석 가이드
- [유입 분석을 위한 HTTP 리퍼러 이해하기](/http-referrer/): HTTP 리퍼러의 개념과 유입 분석에서의 활용법
- [GA에서 naver.com/referral은 무엇일까?](/ga-naver-referral/): GA 리포트에서 네이버 리퍼럴 트래픽의 의미
## Optional
- [블로그를 네이버 검색엔진에 노출시키자](/mkt-con03/): 네이버 검색엔진 등록 방법
- [웹사이트를 구글 검색엔진에 노출시키자](/mkt-con04/): 구글 서치콘솔 등록 방법
핵심은 사이트의 모든 페이지를 나열하는 것이 아니라 AI에게 가장 가치 있는 콘텐츠를 선별해서 제공하는 것이다. sitemap.xml이 전체 목록이라면, llms.txt는 큐레이션된 추천 목록이라고 생각하면 된다.
llms.txt는 정말 효과가 있는가?
이 질문이 가장 중요하다. 결론부터 말하면, 현재까지의 데이터는 효과를 증명하지 못하고 있다.
긍정적인 신호부터 보자. Anthropic(Claude), Vercel, Cloudflare, Stripe 같은 주요 기술 기업이 자사 사이트에 llms.txt를 도입했다. Vercel은 포괄적 GEO(Generative Engine Optimization, 생성형 엔진 최적화) 전략을 통해 신규 가입의 10%가 ChatGPT에서 유입된다고 보고했다. 웹 기술 분석 서비스인 BuiltWith 기준으로 84만 개 이상의 사이트가 llms.txt를 채택한 것으로 집계되고 있다.
그런데 회의적인 데이터도 만만치 않다. SE Ranking이 30만 개 도메인을 분석한 결과, llms.txt 구현과 AI 인용 빈도 사이에 통계적 상관관계가 없었다. 오히려 ML 모델에서 llms.txt 변수를 제거하자 예측 정확도가 향상되었다. OtterlyAI의 90일 실험에서는 62,100건의 AI 봇 요청 중 llms.txt를 방문한 것은 84건, 겨우 0.1%에 불과했다.
참고: SE Ranking - LLMs.txt: Why Brands Rely On It and Why It Doesn't Work | OtterlyAI - The llms.txt Experiment
Google의 입장도 명확하다. Gary Illyes는 "Google은 llms.txt를 지원하지 않으며, 지원할 계획도 없다"고 발언했다. 2025년 6월, John Mueller는 "현재 어떤 AI 시스템도 llms.txt를 사용하지 않는다"고 말했다. 다만 이후 OpenAI가 llms.txt 파일을 크롤링하고 있다는 보도가 나오는 등 상황은 변하고 있다.
그렇다면 llms.txt는 쓸모없는 것일까? 꼭 그렇지는 않다. "현재 효과가 없다"는 것이 "영원히 효과가 없을 것"을 의미하지는 않기 때문이다. AI 에이전트가 웹을 자율적으로 탐색하는 시대가 오면 llms.txt의 가치가 달라질 수 있다. 게다가 구현 비용이 극히 낮다. 마크다운 파일 하나를 루트 디렉토리에 넣는 것이 전부이므로, 만들어둔다고 해서 손해 볼 것은 없다.
다만 한 가지 분명히 할 것이 있다. llms.txt보다 훨씬 중요한 것은 콘텐츠 자체의 품질이다. AI가 인용하는 기준은 llms.txt의 존재 여부가 아니라 콘텐츠가 질문에 대해 명확하고 신뢰할 수 있는 답변을 제공하는지 여부다.
마케터와 블로거는 llms.txt를 어떻게 활용할 수 있는가?
llms.txt를 실제로 도입하는 방법은 사용하는 플랫폼에 따라 다르다.
플랫폼별 도입 방법
WordPress 사용자라면 가장 쉬운 방법은 Yoast SEO 플러그인을 활용하는 것이다. Yoast SEO는 사이트맵 데이터를 기반으로 llms.txt를 자동 생성하는 기능을 내장하고 있으며, 주간 자동 업데이트도 지원한다. 별도의 플러그인으로는 Website LLMs.txt, LLMs-Full.txt Generator 등이 있다.
자체 호스팅 사이트(Next.js, Jekyll 등)라면 public/ 디렉토리에 llms.txt 파일을 직접 작성해서 넣으면 된다. 빌드 시 자동으로 루트 경로에 배치된다. 포스트를 추가할 때마다 수동으로 업데이트해야 하는 번거로움이 있지만, 스크립트를 작성해서 자동화하는 것도 어렵지 않다.
티스토리, 네이버 블로그, 브런치 같은 플랫폼 블로그에서는 루트 디렉토리에 파일을 올릴 수 없기 때문에 llms.txt를 적용할 수 없다. 자체 도메인을 사용하더라도 서버 파일 시스템에 접근할 수 없다면 마찬가지다.
핵심 원칙
llms.txt를 만들 때 기억해야 할 핵심 원칙은 다음과 같다.
- 선별하기 — 모든 페이지를 나열하지 말고, AI에게 가장 가치 있는 콘텐츠만 골라서 넣자
- 설명 붙이기 — 단순 링크 목록이 아니라 각 페이지가 어떤 내용인지 한 줄 설명을 추가하자
- 업데이트하기 — 새 콘텐츠를 발행할 때 llms.txt도 함께 갱신하자
- 과도하게 기대하지 말기 — llms.txt는 GEO 전략의 한 요소일 뿐, 이것만으로 AI 인용이 보장되지 않는다
AI 검색 엔진은 llms.txt를 실제로 읽고 있는가?
현재까지 llms.txt를 공식적으로 지원한다고 발표한 AI 기업은 없다. Anthropic이 자사 사이트에 llms.txt를 게시했지만, Claude의 크롤러가 이를 자동으로 활용한다는 공식 확인은 없는 상태다.
흥미로운 점은 AI에 llms.txt의 URL을 직접 전달하면 완벽하게 읽고 활용한다는 것이다. 예를 들어 ChatGPT에게 "이 사이트의 llms.txt를 읽고 주요 콘텐츠를 요약해줘"라고 요청하면 정확하게 처리한다. 문제는 AI가 자동으로 웹사이트의 llms.txt를 찾아서 읽는다는 증거가 미약하다는 것이다. 앞서 언급한 OtterlyAI의 데이터(0.1% 방문률)가 이를 뒷받침한다.
그렇다면 llms.txt의 미래는 어떨까? AI 시대에 웹 분석이 어떻게 달라지고 있는지 이전 글에서 다루었듯이, AI 에이전트가 웹을 자율적으로 탐색하는 시대가 다가오고 있다. 에이전틱 AI(Agentic AI)가 특정 작업을 수행하기 위해 웹사이트를 방문할 때, llms.txt는 그 에이전트에게 사이트의 지도 역할을 할 수 있다. 사람이 웹사이트에 들어가면 메뉴를 보고 원하는 페이지를 찾듯이, AI 에이전트는 llms.txt를 보고 필요한 콘텐츠를 찾을 수 있는 것이다.
이 시나리오가 실현되려면 주요 AI 기업이 llms.txt를 공식적으로 지원해야 한다. 아직은 "가능성"의 영역이지만, robots.txt도 처음에는 비공식 제안에서 시작하여 사실상 표준이 되었다는 점을 기억할 필요가 있다.
마치며
llms.txt는 지금 당장 극적인 효과를 가져다주는 마법의 파일이 아니다. 하지만 마크다운 파일 하나를 작성하는 데 드는 비용은 극히 낮고, AI 검색 환경이 빠르게 변하고 있다는 점을 고려하면 일종의 보험과 같은 존재다.
진짜 중요한 것은 llms.txt 너머에 있다. 질문에 대한 명확한 답변, 신뢰할 수 있는 출처, 구조화된 콘텐츠 — 이런 GEO의 기본기가 갖춰져 있어야 AI가 우리 콘텐츠를 인용할 이유가 생긴다. llms.txt는 그 위에 얹는 마지막 한 조각이다.
자체 호스팅 블로그를 운영하고 있다면 오늘 5분만 투자해서 llms.txt를 만들어보자. 효과가 당장 나타나지 않더라도, AI가 우리 사이트를 이해하는 창구를 하나 더 열어두는 셈이다.
자주 묻는 질문
Q. llms.txt는 얼마나 자주 업데이트해야 하는가?
새 콘텐츠를 발행하거나 기존 콘텐츠를 크게 수정할 때마다 갱신하는 것이 좋다. WordPress에서 Yoast SEO를 사용한다면 주간 자동 업데이트가 지원된다. 자체 호스팅 사이트라면 빌드 스크립트에 llms.txt 자동 생성을 포함시키는 것도 방법이다.
Q. llms.txt와 llms-full.txt의 차이는?
llms.txt는 사이트의 핵심 콘텐츠를 링크 목록 형태로 정리한 인덱스 파일이다. llms-full.txt는 전체 콘텐츠를 하나의 마크다운 파일에 담은 풀텍스트 버전이다. 블로그라면 llms.txt만으로 충분하고, API 문서처럼 전체를 한 번에 참조해야 하는 사이트에는 llms-full.txt가 유용하다.
Q. 티스토리나 네이버 블로그에서도 llms.txt를 적용할 수 있나?
적용할 수 없다. llms.txt는 웹사이트의 루트 디렉토리(/llms.txt)에 파일을 직접 올려야 하는데, 플랫폼 블로그에서는 서버 파일 시스템에 접근할 수 없기 때문이다. WordPress 자체 호스팅, Next.js, Jekyll 등 서버를 직접 관리하는 환경에서만 적용 가능하다.
Q. robots.txt에서 AI 크롤러를 차단하면 llms.txt도 의미 없는가?
그렇다. robots.txt에서 특정 AI 봇(GPTBot, ClaudeBot 등)의 접근을 차단하면 해당 봇은 llms.txt에도 접근할 수 없다. llms.txt를 활용하려면 robots.txt에서 AI 크롤러의 접근을 허용해야 한다. 두 파일의 설정이 모순되지 않도록 함께 관리하는 것이 중요하다.
Q. llms.txt는 웹 표준인가?
아직 공식 웹 표준은 아니다. W3C나 IETF에서 승인한 표준이 아니라 Answer.AI의 Jeremy Howard가 2024년 9월에 제안한 비공식 표준(proposal)이다. 다만 robots.txt도 1994년에 비공식 제안으로 시작하여 2022년에야 RFC 9309로 공식 표준이 되었다는 점에서, llms.txt도 충분한 채택이 이루어지면 표준화 가능성이 있다.