GitHub Copilot AI Credits Optimization — Module 3: Measurement & Optimization at Scale — Hands-On Lab Guide

Duration: ~77 minutes of hands-on exercises (across the ~180-minute module) Format: Step-by-step lab exercises with worksheets and answer keys
Audience: FinOps practitioners, platform/DevEx engineers, engineering managers, Copilot program owners, advanced admins
Roles used throughout: FinOps (cost/budget ownership), Platform/DevEx (drives reporting and tooling), Eng. Manager (team-level context), Program Owner (accountable for the operating model)


Lab Overview

This lab guide contains all the hands-on exercises from Module 3: Measurement & Optimization at Scale, part of the standalone-capable GitHub Copilot AI Credits Optimization workshop series. Each lab maps to a workshop section and builds on the previous one. Complete them in order.

Important: No lab in this guide requires making a live paid AI request or changing a production budget. All calculations can be completed with the worked formulas and the supplied sample dataset. If you use a live AI usage export in Lab 1, treat it as read-only reporting for this session and delete it after the workshop or store it in an approved secured location.

Choosing Your Path

Prerequisites

Before the timed labs begin:

Setup checkpoint:

Lab Summary

Lab Focus Duration
1 Dashboard Filter Practice 6 min
2 Model-Mix Cost Comparison 12 min
3 Baseline & Anomaly Analysis 15 min
4 Outcome Economics Comparison 22 min
5 Budget Tuning Exercise 14 min
6 30-Day Optimization Backlog Capstone 8 min
Total hands-on 77 min

Lab 1: Dashboard Filter Practice (6 min)

Workshop Section: 1 — Reporting & Data Sources

Roles

  • Work individually or in pairs (any role)

Reference — Where to Find the Data

Need Where
Filter/group by user, model, organization, cost center Billing & Licensing → AI usage
Query syntax for metered usage Usage → Metered usage, search product:copilot, add cost_center:<name>
Export for offline analysis AI usage page → export filtered view (CSV)
Individual's own consumption Copilot settings → Usage (or IDE usage view)
Cost center's included-usage cap and consumption Cost center home page (shows "AI credit pool enabled" when configured)

Reference — Three Visibility Layers

Layer Best For Important Boundary
Copilot CLI /usage and /context A developer inspecting one session's usage and context composition Local/session-level evidence, not enterprise reporting
AI usage dashboard and CSV export Cost-center, user, model, SKU, and cycle-level FinOps analysis Aggregated billing/usage view, not a tool-by-tool execution trace
Copilot CLI OpenTelemetry (optional) Advanced traces and metrics for agent interactions, model calls, tool execution, latency, tokens, and costs Off by default; requires an approved OTel backend and privacy/security design

Important: Keep full prompt/response capture disabled unless security and privacy owners explicitly approve it. Start with /usage, /context, and the dashboard; add OTel only for a defined observability question.

Steps

For each request, choose the least-complex visibility layer that answers it; for dashboard requests, also write down the exact filter/group-by combination:

  1. "Which model is driving the most spend enterprise-wide this cycle?"
  2. "How much has the Data Science cost center consumed so far this month?"
  3. "Is one specific user responsible for an unusual share of a cost center's credits?"
  4. "I need to hand a FinOps analyst a CSV they can pivot in a spreadsheet — how do I get it to them?"
  5. "A platform team needs to determine whether model calls or tool executions dominate one CLI workflow, including latency and errors."

Answer Key

  1. AI usage page, "Group by: model", current-cycle timeframe.
  2. AI usage page (or Metered usage search) filtered by cost center: Data Science, current-cycle timeframe. Cross-check against the cost center's home page if an included usage control is enabled.
  3. AI usage page filtered by cost center, then further filtered/grouped by user to compare individual shares within that cost center.
  4. Apply the desired filters on the AI usage page, then use the export action to download the filtered view as CSV.
  5. Use optional Copilot CLI OpenTelemetry for the bounded workflow analysis, after approving the OTel backend and telemetry controls. Keep prompt/response content capture disabled unless explicitly approved; reconcile results with the dashboard rather than treating traces as the billing ledger.

Success Criteria

  • ✅ You identified "Group by: model" for Question 1
  • ✅ You identified filtering by cost center for Question 2
  • ✅ You identified filtering by user within a cost center for Question 3
  • ✅ You identified the CSV export action for Question 4
  • ✅ You identified optional Copilot CLI OpenTelemetry for Question 5 and stated the content-capture/privacy boundary

Lab 2: Model-Mix Cost Comparison (12 min)

Workshop Section: 2 — Token Cost Calculations

Roles

  • Work individually, then compare with a neighbor

Reference — Cost Formula

USD = Σ (tokens_in_category / 1,000,000 × price_per_million_for_that_category)
AI credits = USD × 100
Auto model selection applies an additional 10% discount to the model-cost total.

Reference — Pricing Snapshot (2026-08-08 — verify before use)

Model Input Cached Input Cache Write Output
GPT-5 mini $0.25 $0.025 N/A $2.00
GPT-5.4 nano $0.20 $0.02 N/A $1.25
Claude Sonnet 5 $2.00 $0.20 $2.50 $10.00
Claude Opus 5 $5.00 $0.50 $6.25 $25.00

All prices are USD per 1 million tokens. Source: Models and pricing for GitHub Copilot.

Steps

Warm-up (already solved in the workshop — use this to check your method):

  • Claude Sonnet 5, 150,000 input / 40,000 cached input / 20,000 cache-write / 6,000 output, no Auto → $0.418 USD ≈ 41.8 AI credits; with Auto (×0.90) → $0.3762 USD ≈ 37.62 AI credits

Your exercise — calculate both scenarios yourself before checking the Answer Key:

Scenario A — GPT-5 mini: 25,000 input tokens, 8,000 cached input tokens, 4,000 output tokens.

Scenario B — Claude Sonnet 5: Same token counts (25,000 input / 8,000 cached input / 4,000 output, no cache-write). No Auto model selection in either scenario.

Show your work:

Scenario A (GPT-5 mini)
Input:  25,000 / 1,000,000 × $______ = $________
Cached:  8,000 / 1,000,000 × $______ = $________
Output:  4,000 / 1,000,000 × $______ = $________
------------------------------------------------
Total USD                            = $________
AI credits (USD × 100)               = ________ credits

Scenario B (Claude Sonnet 5)
Input:  25,000 / 1,000,000 × $______ = $________
Cached:  8,000 / 1,000,000 × $______ = $________
Output:  4,000 / 1,000,000 × $______ = $________
------------------------------------------------
Total USD                            = $________
AI credits (USD × 100)               = ________ credits

Then answer:

  1. Express Scenario B's cost as a multiple of Scenario A's cost.
  2. If a team ran 1,000 of these interactions per month, what is the monthly credit difference between defaulting to GPT-5 mini versus Claude Sonnet 5?

Answer Key

Scenario A (GPT-5 mini)
Input:  25,000 / 1,000,000 × $0.25  = $0.006250
Cached:  8,000 / 1,000,000 × $0.025 = $0.000200
Output:  4,000 / 1,000,000 × $2.00  = $0.008000
------------------------------------------------
Total USD                           = $0.014450
AI credits (USD × 100)              = 1.445 credits

Scenario B (Claude Sonnet 5)
Input:  25,000 / 1,000,000 × $2.00  = $0.050000
Cached:  8,000 / 1,000,000 × $0.20  = $0.001600
Output:  4,000 / 1,000,000 × $10.00 = $0.040000
------------------------------------------------
Total USD                           = $0.091600
AI credits (USD × 100)              = 9.16 credits
  1. Ratio: $0.0916 ÷ $0.01445 ≈ 6.34x — Claude Sonnet 5 costs roughly 6.3 times more than GPT-5 mini for the identical token counts on this task.
  2. Monthly difference at 1,000 interactions: (9.16 − 1.445) credits × 1,000 = 7,715 credits/month — approximately 4.1x the standard 1,900-credit monthly allotment of one full Business license, just from the model-choice difference on this one recurring task.

Success Criteria

  • ✅ You applied each token category at the correct per-model rate for both scenarios
  • ✅ You divided each token count by 1,000,000 before multiplying by the rate
  • ✅ You converted both USD totals to AI credits (×100)
  • ✅ Your ratio (~6.34x) and monthly difference (~7,715 credits) match the Answer Key (±rounding)

Lab 3: Baseline & Anomaly Analysis (15 min)

Workshop Section: 3 — KPI Baselines & Anomaly Analysis

Roles

  • Work in small groups of 2–3

Reference — Legitimate Heavy Use vs. Waste

Signal Legitimate Heavy Use Waste
Suggestion acceptance / PR merge rate High and stable Low or declining
Restarts per task Low — one bounded session per task High — repeated restarts losing cached context
Credits per completed unit of work Proportional to task complexity High relative to output delivered
Typical task profile Large agentic refactors, multi-file migrations, complex architecture reviews Repeated near-identical prompts, verbose low-value chat, manual escalation to powerful models for routine tasks

Sample Dataset — "Growth Platform" Cost Center

60 licensed Copilot Business users. Included-usage cap = 60 × 1,900 = 114,000 AI credits for the 30-day cycle.

Allotment note: This dataset uses the standard 1,900-credit Business allotment. Historical exports from the June 1–September 1, 2026 promotional period may show 3,000 credits per Business user; normalize the pool before comparing those exports with this answer key.

Day Active Users Credits Consumed (day) Cumulative Credits Blocked Users Overage (USD) PR Review Pass Rate Release Deadline?
1 51 9,600 9,600 0 $0.00 90% No
2 52 9,900 19,500 0 $0.00 90% No
3 50 9,400 28,900 0 $0.00 89% No
4 53 10,200 39,100 0 $0.00 88% No
5 54 10,800 49,900 0 $0.00 88% No
6 55 12,600 62,500 1 $0.00 82% Yes
7 57 15,900 78,400 2 $0.00 74% Yes
8 58 17,800 96,200 3 $0.00 71% Yes
9 56 21,300 117,500 5 $35.00 79% No
10 54 18,400 135,900 4 $219.00 85% No

Steps — Calculate These KPIs and Answer the Causation Question

  1. Burn rate: Average daily credits consumed over Days 8–10
  2. Projected exhaustion date: On which day was the 114,000-credit included-usage cap exhausted?
  3. Credits per active user: For Day 9, credits consumed ÷ active users
  4. Blocked users trend: Is the blocked-user count accelerating, flat, or slowing across the 10 days, and does it track the Release Deadline flag or the overage column more closely?
  5. Causation check: A colleague claims "the overage on Days 9–10 caused the quality drop." Using the data, explain in 2–3 sentences why this claim is not supported, and name the more likely shared root cause.
  6. Heavy use vs. waste: Given only this cost-center-level data, what additional per-user signals would you request before recommending any individual ULB changes?

Answer Key

  1. Burn rate (Days 8–10 average): (17,800 + 21,300 + 18,400) ÷ 3 = 19,167 credits/day
  2. Projected exhaustion date: Cumulative credits through Day 8 = 96,200 (17,800 credits remaining against the 114,000 cap). Day 9 consumed 21,300 credits, exceeding the remaining 17,800 by 3,500 — so the cap was exhausted during Day 9. That 3,500-credit overage equals 3,500 × $0.01 = $35.00, matching the table. All of Day 10's 18,400 credits are metered: 18,400 × $0.01 = $184.00, bringing cumulative overage to $35.00 + $184.00 = $219.00, matching the table.
  3. Credits per active user (Day 9): 21,300 ÷ 56 = ≈380 credits/user
  4. Blocked users trend: 0, 0, 0, 0, 0, 1, 2, 3, 5, 4 — accelerating through Day 9, then easing on Day 10. The rise from Day 6 tracks the Release Deadline flag (Yes on Days 6–8) more closely than it tracks overage, since blocked users were already climbing on Days 6–8 while overage was still $0.00.
  5. Causation check: The claim is not supported. The PR review pass rate began falling on Day 6 — three days before any overage occurred — and it fell in lockstep with the Release Deadline flag switching to Yes (Days 6–8). Overage first appears on Day 9, after the deadline passed, yet the pass rate recovered to 79% on Day 9 and 85% on Day 10 even though overage kept growing both days. If overage were the true cause of the quality drop, the pass rate should have stayed low or worsened as overage increased — instead it recovered. The release deadline is the far more likely shared root cause of both the credit spike and the quality dip; overage on Days 9–10 is a lagging consequence of deadline-driven usage, not a cause of the earlier quality drop.
  6. Heavy use vs. waste: Before flagging anyone as wasteful, request per-user suggestion acceptance / PR merge rate, restarts per task, and credits per completed unit of work (for example, per merged PR). A high-credit user with a high, stable acceptance rate and low restart count is a legitimate heavy user; a high-credit user with a low or declining acceptance rate and frequent restarts is a waste signal.

Success Criteria

  • ✅ Your calculated burn rate is ≈19,167 credits/day (±rounding)
  • ✅ You correctly identified Day 9 as the exhaustion day
  • ✅ You calculated ≈380 credits/user for Day 9
  • ✅ You correctly rejected the "overage caused the quality drop" claim and named the release deadline as the more likely shared cause, citing the Day 9–10 recovery as evidence
  • ✅ You named at least two per-user signals you'd need before judging any individual as wasteful

Lab 4: Outcome Economics Comparison (22 min)

Workshop Section: 4 — Economics of Accepted Outcomes

Roles

  • Work in groups of 3–4
  • FinOps leads the calculation
  • Engineering Manager challenges the acceptance definition
  • Platform/DevEx checks data feasibility
  • Program Owner owns the decision

Reference — Outcome & Cost Formulas

Durable acceptance rate =
durable accepted outcomes ÷ attempted outcomes

Total assisted-delivery cost =
AI-credit (model) cost
+ human prompting, review, correction, and escalation cost
+ relevant compute and CI/CD rerun cost
+ allocated license cost
+ amortized enablement and workflow-development cost

Full cost per durable accepted outcome =
total assisted-delivery cost ÷ durable accepted outcomes

Net contribution =
estimated value of durable accepted outcomes − total assisted-delivery cost

Reference — Benefit Classification

Benefit Type Meaning
Realized cash savings An actual expense was removed or reduced
Cost avoidance Future hiring, contractor, infrastructure, or remediation spend was avoided
Capacity released Existing employees can perform additional valuable work
Revenue contribution Faster or better delivery produced attributable revenue or margin
Risk reduction Incidents, defects, audit findings, or remediation exposure were reduced

Scenario

Compare two workflows across 100 attempts:

Measure Workflow A Workflow B
AI-credit cost per attempt $1.00 $4.00
Human review/correction cost per attempt $14.00 $8.00
Compute cost per attempt $1.00 $1.00
Durable acceptance rate 50% 80%
Estimated value per durable accepted outcome $40.00 $40.00

For the core comparison, assume license and enablement allocations are equal and excluded from both workflows. Step 9 calculates a separate enablement allocation.

Steps

  1. Calculate full cost per attempt for each workflow.
  2. Calculate durable accepted outcomes per 100 attempts.
  3. Calculate total assisted-delivery cost for 100 attempts.
  4. Calculate full cost per durable accepted outcome.
  5. Calculate net contribution: (durable outcomes × $40) − total assisted-delivery cost.
  6. Choose the economically better workflow and explain why AI-credit cost alone selects the wrong one.
  7. If the same employees use released time on the backlog and payroll does not change, classify the benefit.
  8. Calculate end-to-end acceptance for four required stages at 90% each.
  9. Calculate amortized enablement cost for a $30,000 investment spread across 3,000 expected durable outcomes.
  10. Name at least three assumptions you would test at low/expected/high values before presenting the decision.

Use this worksheet:

Calculation Workflow A Workflow B
Full cost per attempt $_______ $_______
Durable accepted outcomes _______ _______
Total assisted-delivery cost $_______ $_______
Full cost per durable accepted outcome $_______ $_______
Net contribution $_______ $_______

Answer Key

Calculation Workflow A Workflow B
Full cost per attempt $16.00 $13.00
Durable accepted outcomes 50 80
Total assisted-delivery cost $1,600 $1,300
Full cost per durable accepted outcome $32.00 $16.25
Net contribution $400 $1,900
  1. Full cost per attempt:
    • Workflow A: $1 AI + $14 human + $1 compute = $16
    • Workflow B: $4 AI + $8 human + $1 compute = $13
  2. Durable outcomes:
    • Workflow A: 100 × 50% = 50
    • Workflow B: 100 × 80% = 80
  3. Total cost:
    • Workflow A: 100 × $16 = $1,600
    • Workflow B: 100 × $13 = $1,300
  4. Full cost per durable accepted outcome:
    • Workflow A: $1,600 ÷ 50 = $32.00
    • Workflow B: $1,300 ÷ 80 = $16.25
  5. Net contribution:
    • Workflow A: (50 × $40) − $1,600 = $400
    • Workflow B: (80 × $40) − $1,300 = $1,900
  6. Decision: Choose Workflow B. Token-only analysis favors A ($1 versus $4), but B has lower full cost per attempt, higher durable yield, lower full cost per durable outcome, and higher contribution.
  7. Benefit: Capacity released, not realized cash savings, because payroll and headcount did not change.
  8. Rolled acceptance: 0.90 × 0.90 × 0.90 × 0.90 = 65.61%.
  9. Amortized enablement: $30,000 ÷ 3,000 = $10 per durable outcome.
  10. Sensitivity examples: human review time, loaded labor rate, durable acceptance rate, outcome value, enablement useful life, and attribution percentage.

Important: These values are illustrative. They are not GitHub benchmarks or universal accounting assumptions. Use representative samples, approved rates, and a defined outcome/stabilization rule for real decisions.

Success Criteria

  • ✅ Your full-cost, durable-outcome, and contribution calculations match the answer key
  • ✅ You selected Workflow B despite its higher AI-credit cost
  • ✅ You classified the labor benefit as capacity released
  • ✅ You calculated 65.61% rolled acceptance and $10 amortized enablement cost per outcome
  • ✅ You named at least three assumptions and would report a range rather than false precision

Lab 5: Budget Tuning Exercise (14 min)

Workshop Section: 5 — Budget Tuning & Operating Model Capstone

Roles

  • Form groups of 3–4 with a mix of roles (FinOps, platform/DevEx, engineering manager)

Reference — Sizing Check Formula

1. Max ULB consumption = Σ (users at each ULB tier × that tier's ULB amount)
2. Included-credit pool value =
   [(Business seats × 1,900) + (Enterprise seats × 3,900)] × $0.01/credit
3. Gap to cover         = Max ULB consumption − Pool value
   → Your cost-center + organization + enterprise budgets must cover this gap,
     or users will be blocked by a spending budget before reaching their own ULB.

The $19 Business and $39 Enterprise per-seat equivalents represent 1,900 and 3,900 included AI credits at $0.01 per credit. They are not license prices; Copilot Enterprise license pricing varies.

Scenario — "Contoso Platform Org"

Allotment note: This scenario uses the standard 1,900 Business / 3,900 Enterprise monthly allotments. Historical June 1–September 1, 2026 promotional-period exports may show 3,000 / 7,000 instead.

  • 300 Copilot Business users, 50 Copilot Enterprise users (350 licensed users total)
  • 80 of the Business users are in the Data Science cost center, with a cost-center ULB of $45
  • 5 named power users (outside Data Science) have an individual ULB override of $150 each
  • Every other user is on the universal ULB of $25
  • The current enterprise spending budget is $2,000, with "Stop usage when budget limit is reached" enabled

Steps

Timebox: Use 8 minutes for the three calculations, 3 minutes for the enterprise-budget and included-usage-control decisions, and 3 minutes to compare one recommendation with another group.

  1. Calculate the universal-tier population: 350 total − 80 (Data Science) − 5 (power users) = ______
  2. Calculate max ULB consumption (three tiers)
  3. Calculate the pool value
  4. Calculate the gap to cover
  5. Is the current $2,000 enterprise budget sufficient? If not, what's the minimum you'd recommend, with a buffer?
  6. The Data Science included usage control cap is 80 × 1,900 = 152,000 credits. Block or allow overage at that cap — and why?

Show your work:

Universal-tier population: 350 − 80 − 5 = ______ users

Max ULB consumption:
  Universal: ______ users × $25  = $________
  Data Science cost-center ULB: 80 × $45 = $________
  Power-user individual ULB: 5 × $150    = $________
  --------------------------------------------------
  Total max ULB consumption               = $________

Included-credit pool value:
  Business: 300 × 1,900 credits × $0.01  = $________
  Enterprise: 50 × 3,900 credits × $0.01 = $________
  ---------------------------------------------------
  Total included-credit pool value         = $________

Gap to cover = Max ULB consumption − Pool value = $________

Answer Key

Universal-tier population: 350 − 80 − 5 = 265 users

Max ULB consumption:
  Universal: 265 × $25   = $6,625
  Data Science: 80 × $45 = $3,600
  Power users: 5 × $150  = $750
  ------------------------------
  Total max ULB consumption = $10,975

Included-credit pool value:
  Business: 570,000 credits × $0.01   = $5,700
  Enterprise: 195,000 credits × $0.01 = $1,950
  --------------------------------------------
  Total included-credit pool value = $7,650

Gap to cover = $10,975 − $7,650 = $3,325
  1. Enterprise budget assessment: The current $2,000 enterprise budget is undersized — it covers only about 60% of the $3,325 gap. Recommend raising it to at least $3,325, and add a buffer (for example, 15–20%, landing around $3,800–$4,000) to absorb month-to-month variance without immediately re-triggering the shortfall. Without this fix, the "lowest remaining headroom wins" rule means users could be blocked by the exhausted enterprise budget before any of them reach their own (higher) individual or cost-center ULB.
  2. Block vs. allow overage: If Data Science is a genuinely heavy, high-value team (for example, doing large-scale model training pipeline work that justifies the spend), allow continued paid overage at the included-usage cap rather than blocking — their cost-center ULB ($45/user) and the enterprise spending budget (once correctly sized per Step 5) already provide the guardrails, so an additional hard block at the included-usage cap risks interrupting legitimate high-value work. If the team's heavy use has not yet been validated as legitimate, block at the cap until a baseline review (Lab 3's heavy-use-vs-waste signals) confirms the spend is justified.

Success Criteria

  • ✅ You correctly calculated the universal-tier population (265 users)
  • ✅ You correctly calculated max ULB consumption ($10,975) and included-credit pool value ($7,650)
  • ✅ You correctly calculated the gap ($3,325) and identified that the current $2,000 enterprise budget is undersized
  • ✅ You recommended raising the enterprise budget to at least the gap amount, with a stated buffer rationale
  • ✅ You made and justified a block-vs-allow-overage decision for the Data Science included usage control

Lab 6: 30-Day Optimization Backlog Capstone (8 min)

Workshop Section: 5 — Budget Tuning & Operating Model Capstone

Roles

  • Same groups of 3–4 from Lab 5

Reference — RACI

Activity FinOps Platform/DevEx Eng. Manager Program Owner
Monthly KPI review A R C I
Outcome definition & stabilization rule C C R A
Economic scorecard & benefit classification R C C A
Budget tuning (ULBs, spending budgets) C R I A
Anomaly triage & confounder check C R C A
Individual ULB exception approval I C R A
Showback/chargeback reporting R I I A
30-day optimization backlog ownership C R C A

R = Responsible, A = Accountable, C = Consulted, I = Informed.

Steps

Timebox: Draft for 6 minutes, then use 2 minutes to share one P0 item and owner.

Draft a prioritized 30-Day Optimization Backlog worksheet:

Priority Backlog Item Owner (from RACI) Target Week
P0
P0
P1
P1
P1
P2

Your backlog must include, at minimum: one item closing the ULB/spending-budget gap from Lab 5, one item establishing or refining an anomaly-response threshold, one item defining a pilot outcome/stabilization rule and economic scorecard owner, one item naming your showback-vs-chargeback decision, and one item scheduling your next monthly KPI review and confirming the standard allotments are reflected in the baseline.

Example Answer (Contoso scenario)

Priority Backlog Item Owner (from RACI) Target Week
P0 Raise enterprise spending budget from $2,000 to $3,800 to close the sizing gap Platform/DevEx (R), Program Owner (A) Week 1
P0 Set anomaly-response trigger: blocked-user count doubling day-over-day, or burn rate >25% above 7-day rolling average, escalates to FinOps + Platform/DevEx same-day Platform/DevEx (R), FinOps (C) Week 1
P1 Decide Data Science included usage control: allow overage, pending confirmation of legitimate heavy use Eng. Manager (R), Program Owner (A) Week 2
P1 Pilot "merged PR with no material correction or revert for 14 days" as the durable outcome; baseline full cost per durable accepted outcome with low/expected/high assumptions Eng. Manager (R), Program Owner (A), FinOps (C) Week 2
P1 Adopt showback for all cost centers this cycle; revisit chargeback after two clean baseline months FinOps (R), Program Owner (A) Week 3
P2 Schedule recurring monthly KPI review and confirm the baseline uses the current standard allotments rather than promotional-period values Platform/DevEx (R), Program Owner (A) Week 4

Success Criteria

  • ✅ Your backlog includes a P0 item that directly resolves the budget-tuning gap from Lab 5
  • ✅ Your backlog names at least three KPIs from Lab 3 with a defined review cadence
  • ✅ Your backlog states an explicit anomaly-response trigger and an owner from the RACI table
  • ✅ Your backlog names a pilot outcome, stabilization rule, and owner for the first full-cost-per-durable-outcome baseline
  • ✅ Your backlog states a showback-vs-chargeback decision, a target week for the next KPI review, and an owner for confirming that the baseline reflects standard allotments

Key Reference Tables (Quick Lookup)

Budget Control Comparison

Control What It Caps When Active Hard Stop?
Universal user-level budget (ULB) Each user's total consumption (pool + metered) Always Always
Cost-center user-level budget (ULB) Each cost-center member's total consumption (overrides universal) Always Always
Individual user-level budget (ULB) One user's total consumption (overrides both above) Always Always
Cost-center / organization / enterprise budget Metered charges only, after the shared pool is exhausted Metered phase only Only if "Stop usage when budget limit is reached" is enabled

Pricing Snapshot (2026-08-08 — verify before use)

Model Input Cached Input Cache Write Output
GPT-5 mini $0.25 $0.025 N/A $2.00
GPT-5.4 nano $0.20 $0.02 N/A $1.25
Claude Sonnet 5 $2.00 $0.20 $2.50 $10.00
Claude Opus 5 $5.00 $0.50 $6.25 $25.00

All prices are USD per 1 million tokens. Source: Models and pricing for GitHub Copilot.

Sizing Check Formula

1. Max ULB consumption = Σ (users at each ULB tier × that tier's ULB amount)
2. Included-credit pool value =
   [(Business seats × 1,900) + (Enterprise seats × 3,900)] × $0.01/credit
3. Gap to cover         = Max ULB consumption − Pool value
   → Your cost-center + organization + enterprise budgets must cover this gap,
     or users will be blocked by a spending budget before reaching their own ULB.

Use the standard included-credit amounts and the $0.01-per-credit conversion for this calculation. Use contracted seat rates only for separate license-cost analysis.


Cleanup



Hands-on lab guide for Module 3: Measurement & Optimization at Scale, part of the GitHub Copilot AI Credits Optimization workshop series (standalone-capable)