Skip to content

[Bug]: azure/us/ and azure/eu/ gpt-4o-2024-11-20 missing cache_read_input_token_cost at present cache reads billed at zero #37823

Description

@AbhAy120204

Check for existing issues

  • I have searched the existing issues and checked that my issue is not a duplicate.

What happened?

azure/us/gpt-4o-2024-11-20 and azure/eu/gpt-4o-2024-11-20 are missing cache_read_input_token_cost in the price map. All other gpt-4o data-zone entries (e.g., azure/us/gpt-4o-2024-08-06, azure/eu/gpt-4o-2024-08-06) carry the field at 1.375e-06 (1.1x the OpenAI rate of 1.25e-06). The 2024-11-20 variants were never updated to match, so any cache-read tokens on those deployments resolve to no rate and are billed at $0 by LiteLLM.

User Flow

Before a fix: a team using azure/us/gpt-4o-2024-11-20 with a large cached system prompt sees cache reads billed at zero

  1. They POST https://litellm-domain/v1/chat/completions with model "azure/us/gpt-4o-2024-11-20" and a prompt containing a large previously-cached block
  2. Azure returns usage with prompt_tokens_details.cached_tokens populated (e.g., 5000 cached tokens)
  3. They open https://litellm-domain/ui/?page=logs and see the request logged at a spend that reflects only non-cached tokens: cache-read tokens contribute $0 instead of the correct ~$0.007 for 5000 tokens

After a fix: the same request is billed correctly

1-2. Same steps
3. https://litellm-domain/ui/?page=logs shows the request at full spend including cache-read tokens at 1.375e-06 per token

Proof the bug occurs

Verified on commit ff02d5c (litellm_internal_staging, 2026-08-21).

Direct inspection of model_prices_and_context_window.json:

model input_cost_per_token cache_read_input_token_cost

gpt-4o-2024-11-20 2.5e-06 1.25e-06
azure/gpt-4o-2024-11-20 2.75e-06 1.25e-06
azure/us/gpt-4o-2024-11-20 2.75e-06 None ← bug
azure/eu/gpt-4o-2024-11-20 2.75e-06 None ← bug
azure/us/gpt-4o-2024-08-06 (control) 2.75e-06 1.375e-06 ← working

Every other azure/us/ and azure/eu/ gpt-4o entry applies the standard 1.1x data-zone uplift to cache_read_input_token_cost. These two entries were simply never populated.

No proxy or provider API call needed to reproduce: the field is missing from the static pricing config.

What part of LiteLLM is this about?

SDK (litellm Python package)

What LiteLLM version are you on ?

v1.97.0

Twitter / LinkedIn details

https://www.linkedin.com/in/abhay-tiwari-/

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions