Copilot's September Bill Cliff: Included AI Credits Just Dropped
The June to August promotion ended on September 1. Included Copilot credits fell 37% on Business and 44% on Enterprise while seat prices stayed flat. Here is the arithmetic and the controls.
Key takeaways
- The June to August promotion ended on September 1.
- Included Copilot credits fell 37% on Business and 44% on Enterprise while seat prices stayed flat.
- Here is the arithmetic and the controls.
On this page
If your GitHub Copilot invoice for September is higher than August and nobody on your team changed how they work, this is why. The three-month promotion on included AI Credits ended on 1 September. Copilot Business went from 3,000 credits per seat to 1,900, a 36.7% cut. Copilot Enterprise went from 7,000 to 3,900, a 44.3% cut. The seat price did not move, and additional usage is enabled by default, so the difference lands on your bill as overage unless an admin turned that off.
What actually changed on 1 September#
GitHub moved every Copilot plan to usage-based billing on 1 June 2026. One AI credit is $0.01, and each interaction consumes credits based on input, output and cached tokens at the listed API rate for the model used. Code completions and Next Edit suggestions stay unlimited and consume nothing.
For existing Business and Enterprise customers, the first three months (June through August) carried a higher included allotment. That was a launch promotion, and it expired on schedule. The standing amounts are $19 of credits on a $19 Business seat and $39 of credits on a $39 Enterprise seat, per GitHub's announcement and the billing docs.
| Plan | Seat price | Credits June to Aug | Credits from Sep 1 | Change |
|---|---|---|---|---|
| Business | $19 | 3,000 ($30) | 1,900 ($19) | -36.7% |
| Enterprise | $39 | 7,000 ($70) | 3,900 ($39) | -44.3% |
The promo was the anomaly. Treating three months of promo consumption as the forecast baseline was the mistake.
The arithmetic for 100 seats#
Included credits are pooled at the billing entity level, so you compare the pool with total consumption, not per-person usage. For 100 Business seats the pool shrank from 300,000 credits ($3,000) to 190,000 ($1,900). That is $1,100 of monthly headroom gone.
Suppose your August consumption was 250,000 credits. It fit inside the promo pool with 50,000 to spare. In September, identical behavior leaves 60,000 credits over the pool, which is $600 of overage on top of $1,900 in seat fees. Same team, same habits, a 32% higher invoice.
On Enterprise the gap is wider. A 100-seat pool drops from 700,000 credits to 390,000, so $3,100 of headroom disappears.
# pool.sh: does your consumption still fit the pool?
$ SEATS=100; POOL_PER_SEAT=1900; USED=250000
$ POOL=$((SEATS * POOL_PER_SEAT))
$ OVER=$((USED > POOL ? USED - POOL : 0))
$ echo "pool=$POOL used=$USED overage_credits=$OVER overage_usd=$(echo "scale=2; $OVER/100" | bc)"
pool=190000 used=250000 overage_credits=60000 overage_usd=600.00
Swap in 3900 for Enterprise.
Find who burns the credits#
Pooling hides the distribution, and the distribution is usually ugly: a handful of heavy agent-mode users consume most of the pool while a third of seats barely touch it. GitHub added a per-user ai_credits_used field to the Copilot usage metrics API on 19 June. It appears in the organization user-level reports, one record per user, exported as NDJSON. It is an analysis signal, not the invoice, and it has no breakdown by model or feature.
# Top 15 credit consumers over the last 28 days (needs org owner access)
$ gh api /orgs/YOUR_ORG/copilot/metrics/reports/users-28-day/latest \
-H "X-GitHub-Api-Version: 2026-03-10" --jq '.download_links[]' \
| xargs -n1 curl -s \
| jq -rs 'sort_by(-.ai_credits_used) | .[:15][] | [.user_login, .ai_credits_used] | @tsv'
The response returns signed download links, so the pipeline fetches each file and sorts by credits. Check how concentrated it is. That changes the conversation from "Copilot got expensive" to "four people run long autonomous sessions on the priciest model."
Set the controls before the next cycle#
Overage is on by default. Admins can cap spend with budgets at the user, cost-center and enterprise level, or disable additional usage so the pool becomes a hard ceiling. Set a user-level budget first, sized so no single seat can drain more than a sensible multiple of its own share. Then decide deliberately between hard-stop and soft-cap for the pool.
We lean toward a soft budget with an alert well below the cap for the first billing cycle, then a hard cap once you know your real curve. A hard stop mid-sprint on a Friday costs more in lost engineering time than $600 of overage does.
Model choice is the biggest lever#
Credits track tokens at each model's published API rate, so the model picker is effectively a price dial. Routing routine work (explanations, small edits, test scaffolding) to a smaller, cheaper model and reserving the frontier model for hard multi-file tasks cuts consumption more than any policy memo. Long context is the other multiplier: an agent session that keeps re-sending a bloated context bills those input tokens every turn. The habits in our token budgeting guide apply directly, because Copilot is now billed the way an API is.
When to switch tools#
Our rule of thumb, not a GitHub figure: if overage exceeds roughly 30% of your seat spend after you have applied budgets and model discipline, the pooled model is not fitting your usage, and it is time to price alternatives. Compare on effective cost per completed task, not sticker price. Our Cursor versus Copilot comparison covers the editor-level tradeoffs, and the Copilot alternatives roundup covers the field. If your team mostly uses completions and light chat, note that completions are still unlimited here, which is a strong reason to stay.
The decision, concretely#
- Did your September invoice rise with no change in usage? Assume the promo expiry until proven otherwise, and rerun your forecast against 1,900 (Business) or 3,900 (Enterprise) credits per seat.
- Do you know who consumes the pool? Pull
ai_credits_usedper user today. If you cannot name your top ten, you cannot set a sane budget. - Is overage still on by default? Set user budgets now and choose hard or soft caps for the pool on purpose.
- Is overage above our rough 30%-of-seat-spend line after tuning? Price alternatives. Otherwise stay, because unlimited completions are still the cheapest part of the product.
The call we'd make#
Keep Copilot, but stop treating it as a flat seat fee. This week, pull per-user credits, set user-level budgets, and push routine work to cheaper models. Re-evaluate at the October invoice with a full month of post-promo data. Move tools only if overage stays material after those three steps, and never on the strength of one month.
Get the DevOps Troubleshooting Cheat Sheet
Subscribe and get our free one-page reference for the errors that eat an afternoon — CrashLoopBackOff, OOMKilled, Terraform state locks, and more — plus new guides as we publish them.
GitHub's September 13 Outage: One Cleanup Job, 28 Services
A background cleanup job saturated the database behind GitHub's permission checks, and the safeguard pacing it watched only replica lag. Throttle on more than one signal.
AWS Lost a Region for Good: Multi-AZ Is Not Disaster Recovery
AWS says it cannot restore data held only in Bahrain (me-south-1) or in one UAE zone. Multi-AZ gave availability, not recovery, and only cross-region copies survived.
More from AI
Explore more articles in this category
AI Agents and Kubernetes Remediation: Write Access Is the Easy Part
Handing an agent kubectl is a five-minute job. Proving the fix worked and did no harm is the real work, and it belongs in the wrapper, not the prompt.
Plugin4Shell: A Pinned Plugin Is Not a Verified Plugin
A SHA pin that nobody checks is a label, not a control. Plugin4Shell showed that four major coding agents never checked.
AI CLI Agents in CI: Claude Code vs Codex CLI vs Gemini CLI
Running a coding agent on a laptop is a preference. Running one in a pipeline is an architecture decision about credentials, sandboxing, and non-interactive failure.
You might have missed
Evergreen posts worth revisiting.