Published · 23h agoBuild3 min read
Zero Data Retention stops at OpenAI's edge. Your logs are still your problem
OpenAI's August 19 update promises it keeps nothing after a request. The copies your own app leaves behind in logs, queues and databases are governed by you, not by a toggle.
Written for builders.See today for builders

What happened
- "We do not store it" sounds complete until you ask who "we" is; a retention setting is useful but it is not a privacy architecture.
- An app may send a user's text to an AI provider, copy it into an error log, forward part of it to a tool, save the result in a database, and leave the original in an analytics event, so the model provider can retain nothing while the product holds five other copies.
- The dev.to author's "minimum-data contract": treat every AI request as a data export and write down, before coding, the minimum data that may cross the boundary, every place a copy can exist, and the proof that each copy expires or is deleted.
- On August 19, 2026, OpenAI announced an update to Zero Data Retention for eligible frontier-model API customers and previewed Private Safety Processing, designed to identify patterns across related interactions without giving OpenAI personnel access to underlying customer content.
- OpenAI says it only receives a narrow safety signal that includes the type and severity of an activity, without seeing the actual inputs or outputs; customer data stays on the customer's own infrastructure or is stored encrypted with customer-held keys.
Compiled by The EngineerSomething wrong?How this is made
Why it matters
The word doing the work in "we do not store it" is "we" [1]. A single AI feature can leave a copy of the same user text in an error log, in a tool call forwarded onward, in the row you write with the result, and in the analytics event that fired when the button was pressed [2]. Every one of those copies is inside your trust boundary, and none of them are covered by anything OpenAI signs.
The provider's own documentation makes the boundary explicit rather than hiding it. Only some API features are eligible for Zero Data Retention; others hold application state until you delete it, or carry storage behaviour specific to that feature [8]. Data sent onward to remote MCP servers or other third-party services is governed by those services' retention policies, not OpenAI's [9]. Standard abuse monitoring may hold customer content for up to 30 days unless an approved ZDR or Modified Abuse Monitoring control changes that handling [7]. So the honest reading of a ZDR badge is narrow: for approved customers [10], on eligible endpoints, the model provider's copy goes away. Yours does not.
That matters more because of how AI features get built. The prompt gets whatever data is close at hand, because more context feels like insurance [11]. It is not; it is just easier to write [12]. The dev.to author's rule is the one worth stealing: the model should not receive a field merely because your database already has it [13]. The test is cheap. Remove one field from a test request at a time, and if the answer is still useful, that field never earned the trip [15]. An invoice-description helper does not need the customer's full name, email, payment history, tax details and every prior invoice to produce a clearer line item [14].
OWASP puts sensitive-information disclosure among the major risks in LLM applications and points at sanitisation, validation, least-privilege access, restricted data sources, retention policies and tokenisation or redaction [16]. It also warns that instructions in the prompt are not a reliable way to stop disclosure [17], which disposes of the popular fix of appending "do not reveal PII" and calling it a control.
There is a second, quieter retention surface opening up. Private Safety Processing is designed to spot misuse across a series of related interactions while keeping prompts and responses away from OpenAI staff [4], returning only a narrow signal describing the type and severity of the activity [5]. Aleah Houze, OpenAI's head of product policy, told Axios that risk in capable models can appear across multiple interactions rather than in one prompt-response pair, giving the example of separately unremarkable questions about software weaknesses, remote access and security tooling [6]. A signal is still an artefact. The public materials do not specify the cryptographic design, the signal taxonomy, false-positive rates or customer controls [18], and letsdatascience.com notes that the promised white paper is what would show whether abuse detection has been bought without creating a new retained telemetry surface [19]. September is when that arrives [20].
Meanwhile the contrast with Anthropic is the part procurement will actually price. Axios reports Anthropic requires 30-day retention for business customers on Fable 5 and Mythos 5, and characterises that retention as necessary for security work [21]; The Register reports it can hold inputs and outputs longer when it detects policy violations [22]. Choosing OpenAI's zero on that basis buys you exactly one leg of the journey. Write down, before you code, the minimum data allowed across the boundary, every place a copy can come to rest, and the evidence that each copy expires [3]. That inventory is the deliverable. The toggle is a line item in it.
Claim ledger
Ranked by verification strength, evidence, and original report placement.
- [1]
"We do not store it" sounds complete until you ask who "we" is; a retention setting is useful but it is not a privacy architecture.
ReportedView cited source - [2]
An app may send a user's text to an AI provider, copy it into an error log, forward part of it to a tool, save the result in a database, and leave the original in an analytics event, so the model provider can retain nothing while the product holds five other copies.
ReportedView cited source - [3]
The dev.to author's "minimum-data contract": treat every AI request as a data export and write down, before coding, the minimum data that may cross the boundary, every place a copy can exist, and the proof that each copy expires or is deleted.
ReportedView cited source - [4]
On August 19, 2026, OpenAI announced an update to Zero Data Retention for eligible frontier-model API customers and previewed Private Safety Processing, designed to identify patterns across related interactions without giving OpenAI personnel access to underlying customer content.
ReportedView cited source - [5]
OpenAI says it only receives a narrow safety signal that includes the type and severity of an activity, without seeing the actual inputs or outputs; customer data stays on the customer's own infrastructure or is stored encrypted with customer-held keys.
ReportedView cited source - [6]
OpenAI product policy head Aleah Houze told Axios that risks with more capable models can emerge across multiple interactions rather than within one prompt-response pair, giving an example where individually routine questions about software weaknesses, remote access and security tooling could collectively indicate a potential cyberattack.
ReportedView cited source
Sources & coverage · 3 publishers
The reporting this story was synthesized from, earliest first. Every link goes to the original.
- the-decoder.comMaximilian Schreiner3d agoOpenAI builds safety system that catches misuse without storing customer data
- letsdatascience.com2d agoOpenAI Previews Private Safety Processing for ZDR Frontier-Model APIs
- dev.toMarcus Kimyesterday

