If a long coding task and an afternoon ChatGPT session draw from the same allowance, watching Codex alone will no longer describe the day’s usage. OpenAI says Plus, Pro, and Business will share allowances across ChatGPT and Codex starting in December.
This article uses the official help page checked on November 1, 2026. We have not established its original publication date or measured post-transition account limits. The notice does not give us a basis for predicting an individual reduction or a specific switch date.
Keep the units separate
The page describes token-based usage varying with model and task, with Instant chat excluded. That does not supply a universal token-to-allowance conversion or turn subscription usage into API dollars.
| Question | Evidence to use | Inference to avoid |
|---|---|---|
| Remaining allowance and reset | Your post-transition Settings → Usage display | A personal limit inferred from a briefing |
| Allowance consumed by a task | Before/after account readings under controlled conditions | Tokens directly converted to percentage |
| Money spent | Plan, purchased credits, receipts | API-equivalent cost treated as a plan invoice |
This table is our bookkeeping proposal. API prices, included plan allowances, and purchased credits are distinct quantities. Savings in one do not establish equal savings in another.
Define an accepted task first
Instead of counting prompts, define a result: for example, a bug fix that passes the regression suite. Include failed attempts. Record task size, model, effort, context size, and retries alongside acceptance.
This educational dataset uses invented points, not an OpenAI allowance unit or account measurement. There is no official token conversion for allowancePoints. Save as ledger.mjs and run with Node.js 18 or later. We executed it locally without external calls:
const jobs = [
{ task: 'regression-fix', allowancePoints: 12, accepted: true },
{ task: 'regression-fix', allowancePoints: 8, accepted: false },
{ task: 'regression-fix', allowancePoints: 10, accepted: true },
];
const accepted = jobs.filter(j => j.accepted).length;
const spent = jobs.reduce((sum, j) => sum + j.allowancePoints, 0);
console.log('points per accepted:', accepted ? spent / accepted : 'undefined');
points per accepted: 15
Averaging only the two successful attempts gives 11 points. Including the failed attempt makes it 15 per accepted result. That distinction predates the policy change, but omitting it can distort comparisons between models. With zero accepted results, the ratio is undefined.
Make the before-and-after comparison interpretable
Keep a sanitized set of representative tasks: bug fixes, test additions, and design reviews, each with an acceptance condition. Record the models you actually use and the usage information actually displayed. Mark unavailable measurements as missing rather than estimating them.
After the transition, reuse the tasks with similar context. Record start and end times and reset boundaries. Mark intervening ChatGPT activity so it does not get attributed to one coding task. Rounded or delayed account displays may make small task-level differences uninterpretable. This is a proposed procedure, not a post-transition measurement.
You can evaluate using a smaller model for exploration and a larger one for difficult steps. More rework can outweigh the initial saving, so a model downgrade alone proves nothing. Cost per successful task develops the same denominator.
The practical response is to establish how much allowance and developer review time an accepted result takes. Those records will support workflow decisions when the real transition arrives; speculative conversions will not.
The paid course below covers constrained and verified coding-agent workflows. It is not a subscription-policy course or a method for increasing plan limits.