Skip to content
Latchkey

CircleCI "resource class not available on your plan" - Fix

The resource class is a real, correctly-named class - but your plan or org is not entitled to it. Large, arm, and GPU classes require a paid plan or explicit enablement, so the job cannot allocate the machine.

What this error means

A valid class name (not a typo) is rejected because the plan does not include it. The job never starts; the same config works for orgs whose plan enables that class. It is deterministic, not a transient capacity blip.

CircleCI UI
resource_class "gpu.nvidia.medium" is not available on your plan.
Upgrade your plan or contact support to enable GPU execution.

Common causes

Class requires a paid plan

Larger Docker/Linux classes and the GPU/arm families are gated behind paid plans. On a free plan they are valid names but cannot be allocated.

GPU/arm not enabled for the org

Even on paid plans, GPU and some arm classes require explicit enablement for the organization before they can run.

Seat/concurrency limit reached

Plan limits on concurrency or specific class quotas can block allocation of an otherwise-available class until usage frees up or the plan is raised.

How to fix it

Step down to a class your plan includes

.circleci/config.yml
jobs:
  build:
    docker: [{ image: cimg/base:current }]
    resource_class: medium   # was a plan-gated class

Enable the class or upgrade the plan

  1. Check Plan → Usage for which classes and quotas your plan allows.
  2. Enable GPU/arm execution for the org (or upgrade) before pinning those classes.
  3. For arm builds without entitlement, use an arm-capable orb/image on an allowed class where possible.

How to prevent it

  • Confirm plan/org entitlement before pinning large, GPU, or arm classes.
  • Centralize resource_class in a reusable executor so plan limits are enforced in one place.
  • Track concurrency/class quotas so allocation does not silently fail.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →