OpenAI
openai.com · Compute, Storage · 4 records · JSON
- OpenAI Codex Computecaveatemailno cardDwrite-gated
- OpenAI Files API — per-project file storage Storagecaveatany-phoneno cardphoneRper-object-cap
- OpenAI Containers (Code Interpreter / Hosted Shell) Computepaidemail?card?Drequest-rate
- ChatGPT consumer file storage / Library + Projects Storagefails: quotaany-phoneno cardphoneRper-object-cap
OpenAI Codex Compute
caveatemailno cardDwrite-gated
| Free tier | Quoted: 'Open-source maintainers can apply for API credits, six months of ChatGPT Pro with Codex, and Codex Security', and 'Over the past year, the Codex Open Source Fund ($1 million) has supported projects that need API credits'. The form adds 'API credits for coding, maintainer automation, release workflows, and core open source work'. unit none; metered on wall-clock; recurring-credit |
|---|---|
| Price | none stated |
| Per-object cap | not applicable |
| Retention | not applicable |
| Egress | not stated |
| Identity | email not published |
| Limits |
A review decides entry and the maintainer must be a primary or core maintainer of a public repository with a public GitHub profile; the cash value of the API credit is not published. |
| Binding | write-gated A review decides entry and the maintainer must be a primary or core maintainer of a public repository with a public GitHub profile; the cash value of the API credit is not published. |
| Interface | rest inferred from the tooling the provider documents; not probed |
| Tooling | not stated |
| Composes with | This is the only record denominated in inference rather than machines, and it is the cheapest way to run an agent over a repository: six months of a frontier coding subscription plus API credit covers the review loop that the other records would have to pay for in tokens. |
| Reliability | no reliability event recorded |
| Notes | The page changed shape within the year: the fund began as USD 1 million of API credits and now leads with a six-month subscription, so the cash-equivalent value is not published and is left null. Codex Security is 'conditional' and reviewed case by case. The gate is maintainership of a project with traction, which is the same bar as every other vendor programme here, but the review is rolling and there is no cohort. |
| Evidence rung | documented |
| Checked | 2026-10-22 (live); stale on 2026-11-21 |
Evidence (2)
| date | source | what it proved |
|---|---|---|
| 2026-10-22 | developers.openai.com/codex/codex-for-oss | quoted the USD 1 million fund, the six months of ChatGPT Pro with Codex, the API credits, and 'If you're a core maintainer or run a widely used public project, apply' |
| 2026-10-22 | openai.com/form/codex-for-oss/ | the live application form, which asks for a ChatGPT account email, a public GitHub username, a public repository URL and the applicant's maintainer role, and states reviews run on a rolling basis |
More fields (1)
{
"wave2": {
"class": "vendor-oss-credits",
"free_tier_kind": "recurring-credit",
"shape": null
}
}Unknown or withheld values (9)
$.egress.meteredegress-unknown$.egress.termsnot-stated$.identity_cost.detailprocess$.per_object_cap.notesprocess$.per_object_cap.statednot-applicable$.reliability_notenone-observed$.retention.notesprocess$.retention.statednot-applicable$.toolingnot-stated
OpenAI Files API — per-project file storage Storage
caveatany-phoneno cardphoneRper-object-cap
| Free tier | 2.5 TB per project; 512 MB per file; no organization-wide storage cap; orgs may create up to 2,000 projects by default unit objects; metered on stored-bytes |
|---|---|
| Price | free (raw file storage); vector-store storage $0.10/GB/day after 1 GB — avoid attaching to vector stores |
| Per-object cap | 512 MB per file (512000000 bytes) |
| Retention | not stated |
| Egress | Not metered separately for upload/download of files; retrieval is a plain authenticated GET. No published per-GB transfer fee on the Files API surface. |
| Identity | any-phone any-phone |
| Limits |
per-object-cap 512 MB. Upload rate 1,000 requests/min/authenticated user. Vector-store attachment has its own 2,000 files/min/org limit. purpose is the real gate — see reliability_note. |
| Binding | per-object-cap the per-object cap sets the shard size and therefore the object count; it bounds the total more tightly than any headline quota |
| Interface | rest REST POST/GET/DELETE /v1/files, GET /v1/files/{file_id}/content; OpenAI SDKs; works through OpenAI-compatible gateways |
| Tooling | openai-python, openai-node, curl; purpose field selects the lifecycle class |
| Composes with | 2,000 projects/org x 2.5 TB = nominally 5 PB per org. Files are project-scoped and cannot be moved between projects, so a pooler must track (project -> file_id). Because purpose=batch and purpose=vision are both uploadable AND downloadable, they are the only two classes usable as actual storage. |
| Reliability | READ GATE IS PER-PURPOSE, NOT PER-ACCOUNT. An OpenAI staff-adjacent answer on the developer forum gives the directionality table: assistants up/NO down; user_data up/NO down; fine-tune up/NO down; evals up/NO down; **batch up/YES down**; **vision up/YES down**; *_output down only. So purpose=user_data and purpose=assistants are write-only — uploading there is data loss. Storage is genuinely free (no per-GB-day charge for raw files; the $0.10/GB-day on the pricing page is *vector store* storage, not Files API storage). Identity: ChatGPT signup is email-only, but generating the FIRST API key now mandates phone verification (SMS or WhatsApp, one number reusable 3x, rolled out to a listed set of countries). That is the binding constraint here. |
| Notes | 2.5 TB per project; 512 MB per file; no organization-wide storage cap; orgs may create up to 2,000 projects by default |
| Evidence rung | reported One page read moves it to documented. |
| Checked | 2026-10-21 (inherited); stale on 2026-11-04 |
| Parsed numbers |
|
Evidence (9)
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | developers.openai.com/api/reference/resources/files/methods/ | 'Individual files can be up to 512 MB, and each project can store up to 2.5 TB of files in total. There is no organization-wide storage limit. Uploads ... rate-limited to 1,000 requests per minute' |
| 2026-10-21 | help.openai.com/en/articles/8724843-file-storage-quota-error | 'OpenAI currently supports a file storage quota of 2.5 TB of files per project', updated 2 days ago |
| 2026-10-21 | help.openai.com/en/articles/9186755-managing-projects-in-the | 'Organizations can create up to 2,000 projects by default'; 'Project resources (such as files, assistants, storage, or threads) are scoped to the project' |
| 2026-10-21 | developers.openai.com/api/reference/resources/files/ | 'Retrieve file content: get /files/{file_id}/content' |
| 2026-10-21 | community.openai.com/t/file-uploads-error-why-can-t-i-downlo | directionality table; 'Not allowed to download files of purpose: user_data' |
| 2026-10-21 | community.openai.com/t/not-allowed-to-download-files-of-purp | 'You can't download files that you've uploaded to the assistants yourself' |
| 2026-10-21 | platform.openai.com/docs/pricing | 'File search | Storage | $0.10 / GB per day (1 GB free)' — this is vector-store storage, NOT raw file storage |
| 2026-10-21 | help.openai.com/en/articles/8983040-what-does-phone-verifica | 'Phone verification is now mandated on platform.openai.com for generating your initial API key' |
| 2026-10-21 | api.openai.com/v1/files | PROBE: curl -D - -> HTTP/1.1 401, Content-Length 616, real JSON error, x-openai-proxy-wasm; /v1/files/{id}/content also 401/616 — endpoint live, not a 0-byte 200 |
More fields (1)
{
"price_verbatim": "free (raw file storage); vector-store storage $0.10/GB/day after 1 GB — avoid attaching to vector stores"
}Unknown or withheld values (4)
$.free_tier.notesprocess$.per_object_cap.notesnot-extracted$.retention.notesnot-extracted$.retention.statednot-extracted
OpenAI Containers (Code Interpreter / Hosted Shell) Compute
paidemail?card?Drequest-rate
| Free tier | no container tier: the API is priced per million tokens and per audio minute, from $0.10 an input MTok on the cheapest current model unit none; metered on none |
|---|---|
| Price | none stated |
| Per-object cap | not stated |
| Retention | not stated |
| Egress | not stated |
| Identity | email (placeholder) not published |
| Limits |
not stated |
| Binding | request-rate |
| Interface | unknown |
| Tooling | not stated |
| Composes with | not stated |
| Reliability | no reliability event recorded |
| Evidence rung | documented the API pricing page was read on 2026-10-22 and carries model and audio rates only. There is no container product on it, so the record's free-tier framing does not apply and the verdict moves to paid-only |
| Checked | 2026-10-23 (live); stale on 2026-11-22 |
Evidence (2)
| date | source | what it proved |
|---|---|---|
| 2026-10-02 | developers.openai.com/api/docs/pricing | not published |
| 2026-10-22 | developers.openai.com/api/docs/pricing | the API pricing page was read on 2026-10-22 and is a per-million-token model table plus per-minute audio rates: 'gpt-6-luna $0.10 / $0.50 per MTok', 'gpt-5.5-pro $30.00 / $180.00', 'gpt-transcribe $0.0045 / minute'. It prices tokens and minutes, not containers |
More fields (13)
{
"talaria_m10h_usd": 128.0,
"talaria_m24h_usd": 279.2,
"nemo_m10h_usd": null,
"keep_rate": 0.0,
"keep_rate_basis": "suspends on idle (auto_stop_idle)",
"billing_model": "unclassified",
"shape": null,
"session_cap": {
"wall_clock_min": null,
"idle_reap_s": null,
"restart_required": false,
"note": "a container is billed per minute while it runs on the container pricing page this record does not cite"
},
"persistent_storage": null,
"network_out": null,
"price_note": null,
"free_tier_kind": "none",
"granularity": {
"min_billed_s": 300,
"rounding_s": null
}
}Unknown or withheld values (16)
$.chainingnot-stated$.egress.meteredegress-unknown$.egress.termsnot-stated$.evidence[0].provedprocess$.extras.price_noteprocess$.identity_cost.detaildefaulted$.identity_cost.kindidentity-defaulted$.interfaceinterface-unknown$.interface_detailwithheld$.limits_notenot-stated$.per_object_cap.notesprocess$.per_object_cap.statednot-stated$.reliability_notenone-observed$.retention.notesnot-extracted$.retention.statednot-stated$.toolingnot-stated
ChatGPT consumer file storage / Library + Projects Storage
fails: quotaany-phoneno cardphoneRper-object-cap
| Free tier | 25 GB shared upload storage per user, 100 GB per organization. 512 MB per file. Project file counts: Free 5, Go/Plus 25, Edu/Pro/Business/Enterprise 40. GPT knowledge: 20 files. 'Users can create an unlimited amount of projects.' unit objects; metered on stored-bytes |
|---|---|
| Price | none stated |
| Per-object cap | 512 MB per file (512000000 bytes) |
| Retention | not stated |
| Egress | Files can be previewed and downloaded from the project sources list; no egress fee. |
| Identity | any-phone any-phone |
| Limits |
per-object-cap 512 MB; CSV/spreadsheets ~50 MB; images 20 MB. Upload rate: 80 files per 3 hours; free users 3 uploads/day. Retention not stated as a limit — Library persists. |
| Binding | per-object-cap the per-object cap sets the shard size and therefore the object count; it bounds the total more tightly than any headline quota |
| Interface | unknown Web/app UI. GET /v1/files with an API key does NOT expose ChatGPT Library files — the API and the consumer product are separate stores. |
| Tooling | None programmatic for the consumer store. |
| Composes with | Unlimited projects x 40 files x 512 MB = nominal 20 GB per project, but the 25 GB/user byte wall across all of it is the real cap. Nothing multiplies. |
| Reliability | 25 GB/user is 20x below the brief's floor and the storage is explicitly 'shared upload storage' across the whole account, so projects do not stack. Notably better than the API for read-back ('open it from the project sources list to preview, download, or delete it') which is the inverse of the API's purpose-based read gate — but the byte wall makes it irrelevant. |
| Notes | 25 GB shared upload storage per user, 100 GB per organization. 512 MB per file. Project file counts: Free 5, Go/Plus 25, Edu/Pro/Business/Enterprise 40. GPT knowledge: 20 files. 'Users can create an unlimited amount of projects.' |
| Evidence rung | reported One page read moves it to documented. |
| Checked | 2026-10-21 (inherited); stale on 2026-11-04 |
| Parsed numbers |
|
Evidence (3)
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | help.openai.com/en/articles/8555545-file-uploads-faq | 'Shared upload storage is capped at 25 GB per user and 100 GB per organization'; 'You can upload up to 80 files every 3 hours. Free users are limited to 3 file uploads per day.'; project file caps by plan |
| 2026-10-21 | help.openai.com/en/articles/10169521-chatgpt-projects | 'After a file is added to a project, you can open it from the project sources list to preview, download, or delete it'; 'Users can create an unlimited amount of projects.' |
| 2026-10-21 | help.openai.com/en/articles/8555545-file-uploads-faq | 'All files uploaded to a GPT or a ChatGPT conversation have a hard limit of 512MB per file' |
More fields (1)
{
"dead_end": {
"failure_class": "quota",
"why": "25 GB shared upload storage per user, 100 GB per organization. 512 MB per file. Project file counts: Free 5, Go/Plus 25, Edu/Pro/Business/Enterprise 40. GPT knowledge: 20 files. 'Users can create an unlimited amount of projects.'",
"retry_when": null,
"first_recorded": "2026-10-21"
}
}Unknown or withheld values (6)
$.extras.dead_end.retry_whenprocess$.free_tier.notesprocess$.interfaceinterface-unknown$.per_object_cap.notesnot-extracted$.retention.notesnot-extracted$.retention.statednot-extracted