GitHub Pages: vendor profile
In short
GitHub Pages runs no server code and sets no custom response headers, so markdown by Accept header needs a CDN in front, and a client-rendered app reaches agents as its empty shell. A 404.html or 404.md in the repository becomes the not-found page. Pages is free with GitHub Free for public repositories; private ones need a paid plan.
At a glance
standards.txt github-pages
llms-txt = no statement
markdown-negotiation = no statement
markdown-twin = no statement
initial-html = partial
real-404 = supports
vary-accept = no statement
1 supports, 1 partial or announced, 4 no statement.
GitHub Pages Host, CDN or edge product
Static hosting from a GitHub repository with an optional Jekyll build; a 404.html or 404.md in the repository becomes the custom not-found page, and server headers cannot be set.
- Type
- Host, CDN or edge product
- Operator, as the facts below state it
- GitHub
- Home page
- pages.github.com, answered HTTP 200 on 2026-11-05
- Last read
- 5 November 2026
What it does for this layer
- GitHub describes Pages as a static site hosting service that takes HTML, CSS and JavaScript files from a repository, optionally runs a build process and publishes a website. [primary source] source, read 5 November 2026.
- GitHub Pages is available in public repositories on GitHub Free, and in public and private repositories on GitHub Pro, Team, Enterprise Cloud and Enterprise Server. [primary source] source, read 5 November 2026.
- A custom not-found page on GitHub Pages is a file named 404.html or 404.md in the publishing source. [primary source] source, read 5 November 2026.
- Jekyll is the static site generator with built-in support on GitHub Pages; it builds Markdown and HTML into a site using layouts and Liquid templates. [primary source] source, read 5 November 2026.
- GitHub Pages runs a set of Jekyll plugins that are on by default and cannot be disabled, including jekyll-titles-from-headings, jekyll-relative-links and jekyll-readme-index. [primary source] source, read 5 November 2026.
- Published GitHub Pages sites may be no larger than 1 GB, deployments time out after 10 minutes, and sites have a soft bandwidth limit of 100 GB a month. [primary source] source, read 5 November 2026.
- GitHub Pages answers rate-limited requests with HTTP 429 and an informative HTML body. [primary source] source, read 5 November 2026.
- GitHub's terms on the limits page say Pages is not meant to run an online business, an e-commerce site or commercial software as a service. [primary source] source, read 5 November 2026.
Products and plans
| Product | What it is | Price | As of | Source |
|---|---|---|---|---|
| GitHub Pages | Static site hosting from a repository, with a built-in Jekyll build or a custom GitHub Actions workflow. | Free Included with GitHub Free for public repositories; private repositories need a paid GitHub plan | 2026-11-05 | source |
Standards
| Standard | Status | What the vendor's pages say | Source |
|---|---|---|---|
| llms-txt | no statement | GitHub Pages serves an llms.txt only if the repository contains one; no generator in the pages read. | none |
| markdown-negotiation | no statement | No Accept-header handling in the pages read; Pages offers no custom response headers. | none |
| markdown-twin | no statement | No markdown copy feature in the pages read. | none |
| initial-html | partial | Pages serves the static files in the repository or the Jekyll build, so content is in the HTML when the source is static. | source |
| real-404 | supports | A 404.html or 404.md in the source becomes the custom not-found page. | source |
| vary-accept | no statement | Not covered in the pages read. | none |
Checks on its own site
| Reading | Result | Date |
|---|---|---|
| Home page request | HTTP 200; H1 in the initial HTML: yes; 688 words; 1 JSON-LD block | 2026-11-05 |
| Request with Accept: text/markdown | HTTP 200, text/html, Vary: Accept-Encoding | 2026-11-05 |
| /llms.txt at the host root | HTTP 404, text/html, 9.2 KB | 2026-11-05 |
| A made-up path | HTTP 404 | 2026-11-05 |
| Ora score, cached | Not available: GET /api/score returned 404 DOMAIN_NOT_SCANNED | 2026-11-05 |
| Cloudflare keyless scan | 7, L0 Not Ready | 2026-11-05 |
What it does not do
- GitHub Pages offers no way to set custom response headers or rewrite by Accept header in the pages read, so markdown negotiation needs a CDN in front.
- GitHub Pages runs no server code, so a site built as a client-rendered app reaches agents as its empty shell.
Related pages on this site
Sources
- GitHub Pages: home page https://pages.github.com/, read 5 November 2026
- What is GitHub Pages? - GitHub Docs https://docs.github.com/en/pages/getting-started-with-github-pages/what-is-github-pages, read 5 November 2026
- Creating a custom 404 page for your GitHub Pages site - GitHub Docs https://docs.github.com/en/pages/getting-started-with-github-pages/creating-a-custom-404-page-for-your-github-pages-site, read 5 November 2026
- About GitHub Pages and Jekyll - GitHub Docs https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll, read 5 November 2026
- GitHub Pages limits - GitHub Docs https://docs.github.com/en/pages/getting-started-with-github-pages/github-pages-limits, read 5 November 2026
Last reviewed 5 November 2026