ToolsNews
OpenAI API adds 12-hour prompt caching
The OpenAI Responses API can now keep a cached prompt prefix for 12 hours. That saves money for teams that reuse the same system prompt, tool definitions or reference material hours apart.
By: Mikola Máté Patrik · · 2 min read

What changed
On October 20 OpenAI added a new option to the Responses API (changelog). For GPT-5.6 and later models, prompt_cache_options.ttl accepts "30m" (the default) or "12h". It sets the minimum lifetime of a processed prompt prefix in the cache.
- 30-minute cache: writes cost 1.25x the uncached input rate.
- 12-hour cache: writes cost 2.5x the uncached input rate.
- Reads cost the same for both: per the docs, 0.1x on most models and 0.05x on GPT-6.1 Sol.
- You can mix both in one request:
prompt_cache_breakpoint.ttloverrides the request-level setting per breakpoint.
When it pays off
If you call a long, stable prefix (system prompt, tool schema, documentation) only a few times an hour, the 30-minute cache expires in between and you pay the write rate every time. With 12 hours you pay the higher write once and then read at the cached rate all day. For agent steps that repeat often, the 30-minute option is enough and cheaper.
The pattern from the docs is simple: put material reused through the day at the start with a 12-hour breakpoint, give fast-changing session context 30 minutes, and leave the current question after the last breakpoint so it incurs no write charge.
Caveats
Twelve hours is a minimum, not a deletion deadline, and it does not guarantee a cache hit. It does not change data retention policy either. Older models keep using prompt_cache_retention, and unsupported values return 400 invalid_request_error. For internal agents that run the same long instructions all day, it is worth working out how many calls it takes to recover the doubled write price.
Produced with the help of AI, reviewed by an editor. How we make our articles
Reviewed and edited by the Neural Daily desk. About


