If you’re using GitLab SaaS (GitLab Cloud), you have multiple runner options to execute your CI/CD jobs. Each runner source gives you different levels of control, performance, and cost efficiency.
Here’s a complete and up-to-date list of runner sources available to you on GitLab Cloud (GitLab.com) as of version 18.0 (May 2026):
✅ Available Runner Sources in GitLab Cloud
| Runner Source | Description | Use Case | Availability |
|---|---|---|---|
| GitLab Shared Runners | Provided and maintained by GitLab. Run on GitLab-managed infrastructure (auto-scaled). | Quick start, no setup needed | ✅ Enabled by default |
| Project-Specific Runners | Installed and registered for a single project only. | Dedicated pipelines for sensitive repos | ✅ User-managed |
| Group Runners | Registered to a group and available to all projects inside the group. | Shared infra across multiple related projects | ✅ User-managed |
| Self-Hosted Runners (Custom) | Installed on your own infrastructure (Linux, macOS, Windows, Docker, Kubernetes, etc.). | Full control over environment & cost | ✅ GitLab SaaS-compatible |
| GitLab Kubernetes Executor (Auto DevOps) | Auto-provisioned runner inside a connected K8s cluster (via GitLab Agent or legacy cert). | Cloud-native CI/CD with GitOps-style delivery | ✅ Optional setup |
| GitLab macOS Runners (M1/M2) (beta) | Apple Silicon runners for building macOS/iOS apps (Xcode). Currently in Beta for SaaS. | iOS/macOS mobile CI/CD | 🧪 Limited Beta |
| GitLab Windows Runners (hosted or self) | Use Windows executor to build/test .NET, Windows apps. | Windows-native software pipelines | ✅ Self-hosted or BYO |
| GitLab GPU Runners (beta) | GPU-backed runners for AI/ML workloads (uses NVIDIA CUDA). | Model training and GPU-based data pipelines | 🧪 Ultimate / Limited Beta |
🔧 Summary of Executors by Runner Type
| Executor Type | Compatible with GitLab Cloud? | Platform Examples |
|---|---|---|
shell | ✅ (self-hosted only) | Local VMs, bare metal |
docker | ✅ | Docker-in-Docker setups |
docker+machine | ✅ (with autoscaling) | AWS/GCP dynamic runners |
kubernetes | ✅ | GKE, EKS, AKS |
custom | ✅ | Any custom automation |
ssh | ✅ | Remote Linux VMs |
virtualbox | ❌ GitLab SaaS not supported | Only works self-managed |
parallels | ❌ Deprecated | |
shell-windows | ✅ | Windows self-hosted |
📌 Special GitLab SaaS-Hosted Runners
| Runner Type | Language Support | Notes |
|---|---|---|
| Linux Shared Runners | Default Docker executor (Node, Python, etc.) | 400 CI minutes/month for Free tier |
| macOS Runners (beta) | Swift, Xcode, iOS | Available via GitLab-hosted pool |
| GPU Runners (beta) | CUDA, TensorFlow, PyTorch | Ultimate SaaS, usage billed separately |
| Windows Runners | .NET Core, PowerShell | Use your own runner for Windows |
🎯 When to Use What
| Use Case | Recommended Runner |
|---|---|
| Quick setup for any project | GitLab Shared Runners |
| Secure or private pipelines (sensitive data) | Project/Group-specific runners |
| Complex environments (Terraform, AI/ML) | Self-hosted Docker or Kubernetes |
| macOS/iOS CI/CD | GitLab macOS Runners (Beta) |
| Windows CI/CD | Self-hosted Windows runner |
| GPU training / AI workloads | GPU runners (Ultimate only) |
✅ How to View/Add Runners in GitLab Cloud
- Project > Settings > CI/CD > Runners
- Shows shared runners, and allows adding project-specific ones
- Group > Settings > CI/CD > Runners
- For group-level runners
- Admin Runners Page (for instance-level visibility, GitLab self-managed only)
As of GitLab 18.x, GitLab supports several types of runners to execute CI/CD jobs. Here’s a clear and updated breakdown:
🏃 Types of GitLab Runners in GitLab 18.x
1. Shared Runners
- Scope: Available to all projects in an instance or group.
- Managed by: GitLab instance admin (self-hosted or GitLab.com).
- Use case: Ideal for teams that don’t want to manage infrastructure for builds.
- Example: GitLab.com provides autoscaling shared runners using Docker Machine.
✅ Pros:
- Easy to set up
- Great for small teams and quick pipelines
⚠️ Cons: - Queues can be long on GitLab.com during peak usage
2. Group Runners
- Scope: Available to all projects within a group.
- Managed by: Group owners
- Use case: For teams managing multiple related projects needing the same CI resources.
✅ Pros:
- Centralized control at group level
- Avoids redundancy for project-specific runners
3. Project-specific Runners
- Scope: Tied to a single project only.
- Managed by: Project maintainers/owners
- Use case: When a project needs specialized tools or secure execution.
✅ Pros:
- Full control
- Secure, isolated builds
⚠️ Cons: - More setup and maintenance overhead
🔧 Execution Environments (Runners’ Executor Types)
Each runner (regardless of shared/group/project) uses an executor to determine how jobs are run:
| Executor | Description |
|---|---|
shell | Uses host shell (e.g., Bash); minimal setup |
docker | Spawns Docker containers to run jobs (very popular) |
docker+machine | Scales runners dynamically using Docker Machine |
kubernetes | Runs jobs as pods inside a Kubernetes cluster |
ssh | Executes jobs on a remote server over SSH |
custom | Define your own job executor flow |
virtualbox (deprecated) | Used VMs (not commonly used now) |
parallels (macOS only) | Used Parallels for macOS virtualized runners |
🧠 Special Note on GitLab SaaS vs Self-Managed
| Runner Type | GitLab.com (SaaS) | Self-Managed GitLab |
|---|---|---|
| Shared Runners | ✅ Available | ✅ Can be configured |
| Group Runners | 🚫 Not available | ✅ Available |
| Project Runners | ✅ Available | ✅ Available |
GitLab.com (SaaS) does not support Group-level runners for security/resource isolation reasons.
🔄 Registering a Runner
To register a runner in GitLab 18.0, follow these steps:GitLab Docs
- Install GitLab Runner: Ensure GitLab Runner is installed on your desired host machine.
- Obtain a Registration Token:
- Instance Runner: Available in the Admin Area under CI/CD > Runners.
- Group Runner: Found in the group’s Settings > CI/CD > Runners section.
- Project Runner: Located in the project’s Settings > CI/CD > Runners section.
- Register the Runner:
- Run the following command and follow the prompts:about.gitlab.com+6GitLab Docs+6GitLab Forum+6GitLab Docs+2GitLab Docs+2GitLab Docs+2GitLab Docs+1Exoscale+1 bashCopyEdit
gitlab-runner register - Provide the GitLab instance URL, registration token, description, tags, and executor type as prompted.GitLab Docs
- Run the following command and follow the prompts:about.gitlab.com+6GitLab Docs+6GitLab Forum+6GitLab Docs+2GitLab Docs+2GitLab Docs+2GitLab Docs+1Exoscale+1 bashCopyEdit
After successful registration, the runner will appear in the GitLab UI under the appropriate scope (instance, group, or project). GitLab Docs
I’m Rajesh Kumar, a DevOps, SRE, DevSecOps, Cloud, and Platform Engineering expert passionate about sharing practical knowledge, real-world experiences, and industry best practices. I have worked at Cotocus and regularly write about technology, travel, investing, health, product reviews, and digital marketing through my various platforms.
I publish technical articles at DevOps School, travel stories at Holiday Landmark, stock market insights at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at TrueReviewNow, and SEO and digital marketing strategies at Wizbrand.
Find Trusted Cardiac Hospitals
Compare heart hospitals by city and services — all in one place.
Explore Hospitals