How do I check the deploy status of Github Pages? (Specifically: Project Pages w/ Jekyll)
Categories:
How to Check GitHub Pages Deploy Status (Project Pages with Jekyll)

Learn how to effectively monitor the deployment status of your GitHub Project Pages, especially when using Jekyll, to quickly identify and resolve build or publishing issues.
Deploying a Jekyll-powered GitHub Project Page involves several steps, from pushing your code to GitHub to the final rendering of your site. While GitHub Pages generally works seamlessly, understanding how to check its deployment status is crucial for troubleshooting. This article will guide you through the various methods to confirm if your site has successfully built and published, focusing on the tools GitHub provides.
Understanding the GitHub Pages Build Process
When you push changes to your GitHub repository, GitHub Pages initiates an automated build process. For Jekyll sites, this involves GitHub's servers running Jekyll to convert your Markdown and Liquid templates into static HTML, CSS, and JavaScript files. Once built, these static files are then published to the gh-pages
branch (for Project Pages) or directly served from the main
or master
branch (for User/Organization Pages). Any errors during the Jekyll build phase will prevent your site from updating or even appearing online.
flowchart TD A[Push to GitHub Repository] --> B{GitHub Webhook Triggered} B --> C[GitHub Pages Build Process Initiated] C --> D{Jekyll Build (for Jekyll sites)} D --"Successful Build"--> E[Static Files Generated] D --"Build Failed"--> F[Build Error Reported] E --> G[Publish to GitHub Pages CDN] G --> H[Site Live] F --> I[Check Repository Settings & Actions/Checks]
Simplified GitHub Pages Deployment Workflow
Method 1: Checking the GitHub Repository Environment
The most direct way to check the deployment status is through your repository's GitHub interface. GitHub provides a dedicated 'Environments' section that tracks deployments, including those for GitHub Pages. This is particularly useful for Project Pages, which often deploy to a gh-pages
branch.
1. Navigate to your Repository
Go to your GitHub repository (e.g., github.com/your-username/your-project
).
2. Access Environments
Click on the 'Environments' tab, usually found near the top of your repository page, next to 'Code', 'Issues', 'Pull requests', etc.
3. Review Deployment Status
Here, you will see a list of deployments. Look for an environment named github-pages
. It will show the status (e.g., 'Active', 'Success', 'Failed') and the last deployment time. Clicking on a deployment will often provide a link to the deployed site and a link to the associated workflow run.
gh-pages
branch.Method 2: Using GitHub Actions (Checks Tab)
GitHub Pages deployments are often powered by GitHub Actions. Every push to the configured branch (e.g., main
or gh-pages
) triggers a workflow. Monitoring these workflow runs provides detailed insights into the build process, including any errors.
1. Go to the Actions Tab
From your repository, click on the 'Actions' tab.
2. Locate the Pages Workflow
You'll typically see a workflow named 'pages build and deployment' or similar. Click on the most recent run for the branch you're deploying from.
3. Inspect the Build Log
Within the workflow run, you can expand individual steps (e.g., 'Build with Jekyll', 'Deploy') to view their logs. This is where you'll find specific error messages if your Jekyll build failed.
_config.yml
. The Actions log is your best friend for diagnosing these.Method 3: Checking the gh-pages
Branch (for Project Pages)
For Project Pages, GitHub Pages often builds your site and pushes the static output to a dedicated gh-pages
branch. You can inspect this branch to see if the static files are present and up-to-date.
1. Switch to the gh-pages
Branch
In your repository, use the branch selector dropdown (usually labeled 'main' or 'master') and select gh-pages
.
2. Verify Content
Check the files in this branch. You should see your compiled HTML, CSS, JavaScript, and asset files. If this branch is empty or hasn't been updated recently, it indicates a build or deployment issue.
main
or master
branch directly, this method won't apply as there won't be a separate gh-pages
branch for the output.