Use standard LLM API retention only when the submitted data is low sensitivity and a documented, time-bounded retention path fits your policy. Require zero data retention (ZDR) when prompts or outputs must not be stored by the provider for routine abuse monitoring or application state. In either case, approve the exact route—not the provider name.
The first action is to record the organization or project, endpoint, model, enabled features, gateway, subprocessors, and your own logs. Then test all six retention planes below. If one critical plane is unknown, contradicts the contract, or falls outside the approved boundary, stop sensitive traffic.
| Workload condition | Default decision | Evidence needed before release | Stop rule |
|---|---|---|---|
| Public, synthetic, or reliably de-identified input | Standard retention may be acceptable | Documented retention window, approved provider route, and controlled application logs | Stop if the input can be re-identified or contains secrets. |
| Proprietary content that policy permits a provider to hold briefly | Standard retention may be acceptable with approval | Contract, abuse-log window, feature inventory, deletion controls, and named owner | Stop if a stateful feature or downstream service has an unapproved window. |
| Personal, regulated, confidential, or unreleased source material that policy says must not persist | Verified ZDR route | ZDR contract or official eligibility, scoped configuration, six-plane audit, and reviewer sign-off | Stop on any unknown route, feature, log, cache, tool, or exception. |
| A provider or gateway merely says “not used for training” | No release decision yet | Separate evidence for storage, logging, features, and downstream services | Do not interpret no-training language as ZDR. |
This is an engineering and procurement method, not a legal conclusion. ZDR can support a compliance program, but it does not by itself establish GDPR, HIPAA, financial-services, or other regulatory compliance.
Data Retention and ZDR Answer Different Questions
“Not used to train models” answers what the provider does with data for model improvement. It does not answer whether the same content appears in abuse-monitoring logs, conversation state, files, caches, tool calls, support systems, or your telemetry.
Ordinary API retention usually means the provider may keep some customer content for a stated period and purpose. The scope can differ by endpoint and feature. ZDR is a narrower arrangement under which eligible content is not retained in the provider's routine storage path after the response, subject to the provider's documented safety, legal, and product exceptions.
That distinction has two practical consequences:
- A no-training API can still be unacceptable for a workload whose policy prohibits storage.
- A ZDR-approved account can still leave the ZDR boundary by enabling an ineligible file, agent, batch, search, cache, code-execution, or third-party tool feature.
A request flag such as store=false is useful configuration evidence, but it is not a contract. It cannot prove that the organization has ZDR, that abuse-monitoring retention changed, or that every attached feature and downstream service is eligible.
Audit the Six Places Data Can Persist
Treat retention as six independent planes. A route passes only when every plane required by the workload has a known and approved answer.
| Retention plane | Question to answer | Evidence to capture | Common hidden failure |
|---|---|---|---|
| 1. Training use | Can prompts, outputs, feedback, or files be used to improve models? | Current service terms and account-plan scope | A paid API rule is assumed to apply to a free console or consumer product. |
| 2. Abuse and safety logs | Can customer content enter monitoring logs, and for how long? | Official retention control, approved exception, or contract | “No training” is mistaken for “no logging.” |
| 3. Provider application state | Does the API create conversations, threads, stored responses, sessions, or jobs? | Endpoint table, request settings, and deletion behavior | store=false is set on one call while another endpoint creates durable state. |
| 4. Feature-specific storage | Do files, batch jobs, caches, grounding, agents, code execution, or memory retain content? | Feature-by-feature eligibility and TTL | A ZDR-eligible text call invokes a storage-requiring feature. |
| 5. Subprocessors and downstream tools | Does a gateway, search service, MCP server, or other tool receive or retain content? | Full route diagram, policies, region, and contracts for every hop | The upstream model is ZDR, but the gateway or tool is not. |
| 6. Customer-owned logs and databases | What does your application, observability stack, queue, backup, or support system store? | Logging configuration, redaction rules, TTL, access control, and deletion test | The provider stores nothing, but prompts remain indefinitely in application logs. |
The six-plane framework is an editorial audit method, not an industry certification. Its value is that it prevents one favorable policy sentence from hiding a separate retention path.
When Standard Retention Is the Better Decision
ZDR is not automatically the safest architecture for every workload. A route with explicit limited retention, strong access controls, documented deletion, and no sensitive input can be easier to operate and audit than a nominal ZDR route with unknown downstream services.
Standard retention can be reasonable when all of these are true:
- inputs are public, synthetic, or de-identified under a tested process
- the business purpose does not require secrets, personal data, confidential documents, or unreleased code
- the documented abuse-monitoring and application-state windows fit policy
- files, tools, caches, and stateful endpoints are inventoried
- your application logs use an approved TTL and redaction policy
- a named reviewer accepts the residual risk and recheck date
For example, a public-product FAQ classifier using synthetic regression tests may accept a documented default retention window. A source-code review assistant receiving an unreleased repository may not. The difference is the data classification and route evidence, not whether one model is “more private.”
Use ZDR when your policy or contract prohibits routine provider storage of the submitted content, or when the consequence of retention exceeds the accepted risk. Even then, minimize input, redact unnecessary identifiers, and restrict features. ZDR is a control layer, not permission to send every field.
Current Route Matrix: What the Official Docs Actually Establish
The following boundaries were checked against official documentation on July 27, 2026. They are starting points for route verification, not provider-wide certifications. Recheck the exact row before deployment because endpoint and feature eligibility changes.
| Route owner | What current documentation establishes | Important boundary to verify |
|---|---|---|
| OpenAI API | OpenAI documents abuse-monitoring retention of up to 30 days by default and approval-based Modified Abuse Monitoring or ZDR for eligible customers. Under ZDR, Responses and Chat Completions treat store as false. | The endpoint and feature table lists ZDR-ineligible or stateful surfaces, including conversations, threads, files, vector stores, batch, fine-tuning, evals, and feature-specific behavior. Safety and legal exceptions can still apply. |
| Anthropic API | Anthropic says an organization-level ZDR arrangement prevents eligible prompts and responses from being stored at rest after the response. Eligible core surfaces include Messages and Token Counting. | Managed Agents, Files, batch, code execution, and the MCP connector are among the documented exclusions. Model-specific retention requirements and trust-and-safety exceptions must be checked. |
| Gemini Developer API | Google says paid-service prompts and responses are not used to improve its products, and approved project-level ZDR removes user content and identifiable metadata before abuse-monitoring logging. | Search or Maps grounding has a documented 30-day storage path; session resumption, files, and explicit caches have separate state. AI Studio product logging is another plane: Interactions defaults to store=true, Generate Content defaults to store=false but can be enabled per request or project, logs default to 55 days with 7/14/28/55-day settings, and dataset-saved logs do not expire automatically. |
| Azure Direct Models | Microsoft documents no foundation-model training on prompts and outputs without permission, while stateful data remains in the customer's Azure resource. Approved managed customers can verify modified abuse monitoring through ContentLogging=false. | Do not import direct-provider terminology into Azure. Audit the Azure resource, stateful features, preview behavior, diagnostic settings, and customer-owned storage. |
| Amazon Bedrock | AWS says model providers cannot access Bedrock deployment accounts, logs, prompts, or completions. | Invocation logging, CloudTrail, agents, knowledge bases, sessions, guardrails, and other AWS resources remain customer-configured storage planes. “The model provider cannot access it” does not mean “nothing stores it.” |
| OpenRouter | OpenRouter documents account, guardrail, and per-request controls that restrict routing to endpoints it classifies as ZDR; it separately distinguishes provider logging from training policy. | This is OpenRouter's route classification, not independent certification of every upstream. Verify OpenRouter settings, the selected endpoint, fallback behavior, upstream policy, and your own logs. |
Cloud platforms and gateways are different route owners from direct model APIs. A contract with one does not silently extend to another. Likewise, a provider's consumer chat, developer console, free tier, and paid API can have different terms.
If a gateway or proxy is in the path, require evidence for both the gateway and exact upstream endpoint. Do not approve a sensitive workload from an upstream ZDR badge alone. No public ZDR evidence was verified here for laozhang.ai, so this article does not recommend that gateway for a ZDR-required route.
Build a Route Evidence Card
The deliverable is not a screenshot of a marketing page. It is a versioned record that another reviewer can use to reconstruct the deployed data path.
Copy this evidence card into the security ticket or architecture decision record:
textWorkload and data class: Policy requirement: Route owner: Gateway / cloud / proxy: Upstream provider and endpoint: Organization / project / workspace ID: Model and pinned version: Region: Enabled features and tools: Fallback routes: Training-use rule: Abuse/safety-log retention: Provider application state: Feature-specific storage and TTL: Provider project logging and effective `store`: Datasets, exports, sharing, and deletion: Subprocessors/downstream services: Customer logs, queues, databases, and backups: Official eligibility page and checked date: Contract / DPA / ZDR approval reference: Configuration export or admin evidence: Deletion or expiry test: Known legal/safety exceptions: Decision: ALLOW / ALLOW WITH LIMITS / STOP Allowed data classes: Reviewer and owner: Recheck date and change triggers:
Do not put secrets, raw prompts, personal data, or customer content into the evidence card. Store references to protected configuration and contract evidence under the appropriate access controls.
The card is complete only when the route name resolves to a real deployed configuration. “OpenAI,” “Claude,” or “Gemini” is not a route. “Production project X, direct endpoint Y, pinned model Z, text-only, no files/tools/fallbacks, ZDR approval reference, application-log TTL seven days” is auditable.
Verify Before Sensitive Traffic Goes Live
Use a non-sensitive test request and fail closed:
- Classify the workload. Write which fields can reach the model and which data classes are prohibited.
- Draw every hop. Include SDK telemetry, API gateway, cloud platform, model endpoint, tools, search, MCP servers, queues, observability, support exports, and backups.
- Match scope, not branding. Confirm the organization, project, workspace, region, endpoint, model, and plan named by the official policy or contract.
- Inventory features. Start with the smallest stateless request. Add files, caches, batch, agents, grounding, code execution, or tools only after each one passes separately.
- Capture configuration evidence. Export the relevant admin setting or API configuration. A request parameter proves only that parameter was sent.
- Test customer controls. Send synthetic markers, then verify redaction, log destinations, TTL, deletion, backups, and support tooling without exposing real sensitive data.
- Record exceptions and obtain approval. Security, privacy, legal, and procurement owners should review the boundary appropriate to the workload.
- Gate the route. Enforce an allowlist for approved endpoint, model, features, and fallbacks. Reject or redact requests outside the allowed data class.
The acceptance result should be observable: a reviewer can identify the exact allowed route, see current evidence for all six planes, reproduce the configuration check, and show that an unapproved feature or fallback is blocked.
Worked example: a source-code summarizer
Assume a team wants to summarize an unreleased repository. The contract requires ZDR, and a direct Messages endpoint is documented as eligible for the organization's approved arrangement. That is not yet an approval.
The route passes only if the team confirms the production organization, selected model, no storage-requiring feature, no unapproved fallback, and an application log policy that removes prompt bodies. If a developer later enables code execution or an MCP connector that is outside the documented ZDR scope, the release gate must reject the change. The original provider approval did not cover the new feature.
If the team needs an MCP workflow, the next task is to design its tool boundary and credential controls; the Claude MCP internal-tools integration guide covers that architecture. It does not convert the connector into a ZDR-eligible feature.
Fail-Closed Stop Rules
Stop sensitive traffic when any of these is true:
- the ZDR claim has no current official scope or contractual reference
- the contract, dashboard, API configuration, and deployed organization do not agree
- an endpoint, model, file, cache, batch job, agent, search feature, code executor, or tool is not explicitly in scope
- a gateway cannot identify the exact upstream endpoint or may fall back to a non-approved route
- a subprocessor's retention or region is unknown
- application logs, traces, queues, backups, or support exports retain prompt bodies outside policy
- a legal or safety exception conflicts with the workload's absolute-retention requirement
- the route changed after the last review
Do not “temporarily” permit real sensitive data while waiting for a policy answer. Use synthetic or redacted test data, select a verified alternative route, or keep the workload offline.
Recheck on Every Material Route Change
ZDR evidence expires when the deployed facts change. Trigger a new review after:
- contract renewal or provider policy update
- organization, project, workspace, account plan, or region change
- model alias, model version, or endpoint migration
- enabling files, batch, memory, caching, sessions, agents, search, grounding, code execution, MCP, or another tool
- changing project logging, effective
store, log-retention window, or dataset creation, export, or sharing - adding or changing a gateway, proxy, fallback, subprocessor, analytics SDK, or support integration
- changing application logging, backup, deletion, or incident-response behavior
Put the evidence-card version in the deployment record and make the approved feature set machine-enforceable where possible. A quarterly review is useful, but a route-change gate catches risk when it is introduced.
Once retention is cleared, compare cost, quality, and support ownership with the cheapest LLM API provider decision guide. If the actual job is deleting Gemini or other Google AI history rather than approving an API route, use the separate Google AI data deletion guide.
Bottom Line
Choose standard retention for low-sensitivity workloads only when the documented window, features, downstream services, and customer logs fit policy. Choose ZDR when the workload cannot tolerate routine provider storage—but accept the route only after the organization, endpoint, model, features, gateway chain, and six retention planes are verified.
The release rule is deliberately strict: unknown is STOP for sensitive traffic. Record the evidence card, enforce the approved route, and reopen the decision whenever the route changes.



