# Tracing a cost increase back to the prompt version that caused it > A prompt version cost increase shows up as a step change on one date with flat volume. How to bisect it back to the edit, with worked math. URL: https://getculpa.com/prompt-version-cost-increase Last reviewed: 2026-08-01 ## Answer A prompt version cost increase shows up as a step change in cost per call on one specific date, with call volume unchanged. Finding the edit behind it needs a prompt version recorded on each call, because an invoice can't be bisected after the fact. Culpa, a local-first LLM cost, margin, and forecast ledger, names the prompt version behind every call, so the step resolves to a diff. ## Why this happens Two cost patterns look similar on a monthly chart and need completely different investigations. Gradual growth points at drift across many features. A step change on one day points at a deploy, and that's much easier to solve if the data supports it. Daily granularity finds the date. Cost per call isolates unit cost from volume. A prompt version on the call turns the remaining question into reading a diff, and without it the only remaining tool is rolling changes back in production one at a time. ## What this usually looks like - Spend stepped up on a specific day rather than ramping across a week. - Call volume through the step is flat, so the change is in unit cost. - Several things shipped that day and nobody can say which one moved the number. - The proposed investigation involves reverting changes in production to see what happens. ## Common mistakes - Investigating a step change with monthly totals. Why it hurts: A month hides the date, and the date is most of the answer. Do instead: Chart daily spend and daily cost per call. The step will name its own day. - Looking at total spend rather than cost per call. Why it hurts: Volume and unit cost move together in a total, so you can't tell which one changed. Do instead: Divide by calls first. A flat call count with rising cost per call is a prompt or model change, full stop. - Bisecting by reverting changes in production. Why it hurts: It's slow, it's risky, and it only works while the traffic pattern stays comparable. Do instead: Record a prompt version on every call so the bisect happens in the data rather than in production. ## Self-check - Chart daily spend for the last 60 days and mark the exact day the step happened. - Divide by daily call count. Confirm cost per call moved and volume didn't. - Convert the per-call delta into tokens using your input and output rates. That number is what got added. - List everything deployed on that date and compare each candidate against the token delta. - Check whether calls carry a prompt version. If they don't, add it now so the next step change takes minutes. ## Turning a daily step change into a token count (illustrative) A feature on GPT-5.4 at real rates of $0.0025 per 1k input and $0.015 output. Daily spend and call volume below are modelled, and output length was confirmed unchanged. Through the 13th: $840 a day across 220,000 calls = $0.0038182 per call From the 14th: $1,290 a day across 220,000 calls = $0.0058636 per call Delta per call = $0.0020455, with output length unchanged At the $0.0025 per 1k input rate that's 818 input tokens added to every call $450 a day, which annualises to $164,250 The step converts cleanly into 818 added input tokens, which the diff for that day shows as three new instructions and two examples. The investigation took arithmetic rather than a production rollback. ## Cost figures Every figure carries its confidence and its source. No figure on this site is provider-reported. - $0.0038182 to $0.0058636 — modelled cost per call either side of a single-day step change on GPT-5.4 [estimated] Source: Daily spend divided by daily calls, at real GPT-5.4 rates per 1k tokens from the price book, effective 2026-07-02. A range because the daily figures are modelled. - 818 tokens — input tokens added per call, derived from the observed per-call cost delta [calculated] Source: $0.0020455 divided by the $0.0025 per 1k input rate, with output length held constant. ## FAQ Q: How do I find which prompt caused a cost increase? A: Chart daily cost per call to find the date, convert the per-call delta into tokens using your rates, then compare that token count against everything deployed that day. With a prompt version on each call the comparison is a query rather than a search. Q: What if several prompts changed on the same day? A: Then only per-call version data separates them. Without it you're left reverting changes in production one at a time, which is slow and only works while traffic stays comparable across the test. Q: Is a gradual rise ever a prompt change? A: Sometimes, when a change rolls out progressively behind a flag. The ramp shape then follows the rollout percentage rather than a step, which is another reason to record the version rather than infer the cause from the curve. ## Sources - OpenAI API pricing: https://developers.openai.com/api/docs/pricing Run the free Cost Leak Scan: https://app.getculpa.com/scan?source=pseo&slug=prompt-version-cost-increase&cluster=problem Machine-readable index of every guide: https://getculpa.com/api/pages Human-readable index of every guide: https://getculpa.com/guides Site overview: https://app.getculpa.com/llms.txt Privacy: Culpa runs on your infrastructure. Your prompts and responses never leave it. Culpa counts calls to run your plan, and it fails open, so if it ever breaks your app keeps running.