GitHub Actions is an event driven automation system built into GitHub. You define workflows in YAML files inside .github/workflows/ in your repository. Workflows are triggered by GitHub events (push, PR, issue, schedule, manual dispatch, or custom webhook) and run on GitHub hosted runners or your own self hosted runners.
Define Workflow
Create a YAML file in .github/workflows/ that specifies triggers, jobs, and steps
Event Triggers
Workflows fire on push, PR, issue, schedule, manual dispatch, or custom webhook events
Runner Executes
GitHub provisions a runner (hosted or self hosted) and executes your jobs in isolated environments
Results and Artifacts
View logs, download build artifacts, and get status checks on PRs and commits
| Runner Type | Price (Private) | Specs | |
|---|---|---|---|
| Linux | GitHub hosted (Linux) | $0.008/min | 2 vCPU, 7 GB RAM |
| Windows | GitHub hosted (Windows) | $0.016/min (2x Linux) | 2 vCPU, 7 GB RAM |
| macOS | GitHub hosted (macOS) | $0.08/min (10x Linux) | Required for iOS builds |
| Larger | Larger runners | Higher per minute rates | 4 to 64 vCPU options |
| Self hosted | Self hosted runners | Free (your hardware) | Full control, no minute limits |
0
Free minutes/month (Free plan)
0
Minutes/month (Team plan)
0
Minutes/month (Enterprise)
Free for Public Repos
20,000+
Community Actions
The GitHub Actions marketplace has community built actions for deploying to AWS, Azure, or Vercel, running linters, building Docker images, sending notifications, managing releases, and much more.