Chromatic "Failed to publish" snapshot/build limit reached in CI
Chromatic accepted the upload but the account has used its allotted snapshots or builds for the billing period, so publishing is rejected. This is a quota issue, not a config or code error.
What this error means
The chromatic step fails with "Failed to publish to Chromatic" and a message that the snapshot or build limit for the plan has been reached.
✖ Failed to publish to Chromatic
Your account has reached its snapshot limit for this billing period.
Upgrade your plan or wait for the limit to reset.Common causes
The plan snapshot quota is exhausted
Each visual snapshot counts against a monthly allotment; high-frequency CI runs or large story sets can exhaust it before the period resets.
Every push triggers a full snapshot run
Running Chromatic on every commit and branch multiplies snapshots, burning quota faster than expected.
How to fix it
Reduce snapshots per run
- Limit Chromatic to PRs and the default branch instead of every push.
- Use TurboSnap so only stories affected by changed files are snapshotted.
- Re-run once usage is under the limit or the period resets.
- uses: chromaui/action@latest
with:
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
onlyChanged: trueSkip drafts and non-UI branches
Gate the Chromatic job so it does not run on every branch, conserving snapshots for changes that need review.
How to prevent it
- Enable TurboSnap (
onlyChanged) to snapshot only affected stories. - Run Chromatic on PRs and main, not on every push to every branch.
- Monitor snapshot usage so quota does not surprise the team mid-period.