DeepSeek 1M-Token Context Window: Limits, Examples and Costs
A 1M-token context window is large, but the number is difficult to interpret without examples. It helps to know how much text it can hold, how the output limit differs from the context limit, and what happens to costs when you send a long prompt more than once. This guide brings together DeepSeek's published limits, token-conversion estimates and pricing information, all checked on 3 November 2026.
Both current DeepSeek models are listed with a 1M-token context window and a maximum output of 384K tokens per response. DeepSeek estimates that one English character uses about 0.3 tokens and one Chinese character about 0.6 tokens. On that basis, 1M tokens is roughly 3.3 million English characters, or about 555,000 words. The 384K output limit applies to one response, not the whole conversation. Input tokens are billed on each API call. For deepseek-flash, the published off-peak cache-miss rate is $0.15 per million input tokens, compared with $0.003 for a cache hit.
Context length, output limit and model differences
DeepSeek lists the same context and output limits for both current models. The models differ in image support and concurrency:
deepseek-flash | deepseek-v4-pro | |
|---|---|---|
| Context length | 1M tokens | 1M tokens |
| Maximum output | 384K tokens | 384K tokens |
| Images | Yes | No |
| Concurrency | 2,500 | 500 |
Context length covers the material the model processes in a request, including instructions, conversation history, documents and the response being generated. The maximum output is a separate cap on the generated response. Do not treat the two figures as interchangeable.
What 1M tokens looks like in text
DeepSeek gives approximate conversion rates of 0.3 tokens per English character and 0.6 tokens per Chinese character. The table below uses those averages to put the 1M-token context window into more familiar terms:
| What you are holding | Roughly how many tokens |
|---|---|
| 1,000 English characters (a long paragraph) | 300 |
| 1,000 English words (a short article) | 1,800 |
| A 300-page paperback, 90,000 words | 162,000 |
| A 60,000-line codebase at 40 characters a line | 720,000 |
| 1M tokens, converted back | 3.3M English characters ≈ 555,000 words |
Using those estimates, 1M tokens is roughly equivalent to six 300-page books or a medium-sized codebase. The estimate is not the same for every language: at the published average, 1M tokens corresponds to about 1.67 million Chinese characters, compared with about 3.3 million English characters.
These figures are estimates, not exact document limits. DeepSeek notes that token counts vary by model and tokenization method. Numbers, punctuation, code identifiers and structured data such as JSON may use tokens differently from ordinary prose.
How the 384K output limit works
A maximum output of 384K tokens is a per-response limit. It is separate from the 1M-token context window and is far larger than most chat responses. If a response is cut off, check the request's output-token setting and the returned usage information before assuming the model or connection failed.
Output tokens are also billed according to the rate card. The table below estimates the cost of a response that uses the full 384K-token allowance:
| A full 384K-token response | Off-peak | Peak |
|---|---|---|
deepseek-flash | $0.2304 | $0.4608 |
deepseek-v4-pro | $0.7603 | $1.5206 |
At scale, the difference between a short response and a response close to the maximum can be substantial. For production requests, set an output limit that matches the task instead of relying on the model's maximum.
Input billing and prompt caching
A context window does not mean a document is uploaded and billed only once for an entire conversation. Each API request includes the input sent with that request, and input tokens are billed on each turn. For example, if a 900K-token document is included in 100 separate requests, those input tokens are submitted 100 times.
DeepSeek's published off-peak rate for a deepseek-flash cache miss is $0.15 per million input tokens. The cache-hit rate is $0.003 per million tokens, which is 50 times lower. The peak rates are twice the off-peak rates, according to the pricing table.
| 900K-token prompt, 100 turns, flash | Per turn | Total |
|---|---|---|
| Cache miss, off-peak | $0.135 | $13.50 |
| Cache hit, off-peak | $0.0027 | $0.27 |
| Cache miss, peak | $0.27 | $27.00 |
In the example below, the same 900K-token prompt is priced under different cache and time-of-day assumptions. To improve the chance of a cache hit, keep the repeated part of the prompt unchanged and place the changing question after it. Check DeepSeek's published peak and off-peak schedule before planning large batches.
What the documentation says about exceeding the limit
DeepSeek's documentation does not specify a dedicated status code or message for a request that exceeds the context limit. Its error-code guide does list 400 for an invalid request body, but we did not reproduce an over-length request. Building a very large test prompt would also require a funded account.
For that reason, we cannot state exactly which response DeepSeek will return when a request exceeds 1M tokens. If you are preparing error handling, log the full response body and inspect the provider's message rather than assuming that every oversized request will use the same code.
If a prompt is too large, consider these options: remove less relevant material, summarise older conversation turns while keeping recent details, or split the task into smaller requests. Check the result after each change so that important context is not lost.
Ways to estimate and manage token use
DeepSeek documents several ways to estimate token use and check the actual usage returned by the API:
- Use the offline tokenizer. DeepSeek provides a tokenizer package at
cdn.deepseek.com/api-docs/deepseek_v4_tokenizer.zip, with demo code for counting tokens locally. This can help you estimate a prompt before sending it. - Check the usage field in each API response. DeepSeek says the returned usage values are the source of truth. Log them and compare them with your local estimates.
- Include image tokens in your estimate. Images sent to
deepseek-flashare processed according to the provider's image rules and count toward usage. A prompt containing many screenshots may use more of the context window than a plain-text character count suggests.
For applications with long prompts, consider setting an internal token budget below the provider's maximum. The example of 700K tokens is a conservative application-level threshold, not a DeepSeek limit. Adjust it to the size and reliability needs of your task.
Frequently asked questions
- What is DeepSeek's context window?
- DeepSeek lists a 1M-token context window for both
deepseek-flashanddeepseek-v4-proin the documentation checked on 3 November 2026. - What is 1M tokens in words?
- One million tokens is approximately 555,000 English words, using DeepSeek's estimate of 0.3 tokens per English character and an average of six characters per word, including spaces. Actual token counts vary.
- Is the 384K output limit part of the 1M context?
- No. The context window covers the request context, while 384K is the maximum output for a single response. They are separate limits.
- Does a long context cost more than a short one?
- Yes. Input tokens are billed on each request. For
deepseek-flash, the off-peak cache-miss rate is $0.15 per million input tokens and the cache-hit rate is $0.003. The example in this article estimates the cost of repeating a 900K-token prompt 100 times. - What happens if I exceed 1M tokens?
- DeepSeek does not document a specific over-length response in the material checked for this article, and we did not reproduce one. Log the response body and follow the error details returned by the API.
Sources and what we could not test
| Claim | Where it came from | Date checked |
|---|---|---|
| Context length 1M and maximum output 384K on both models | DeepSeek API docs — Models & Pricing | 3 Nov 2026 |
| 1 English character ≈ 0.3 token, 1 Chinese character ≈ 0.6 token, and that ratios vary by model | DeepSeek API docs — Token & Token Usage | 3 Nov 2026 |
| Offline tokenizer package and the statement that returned usage is the source of truth | Same Token & Token Usage page | 3 Nov 2026 |
| All per-million-token rates used in the cost tables, and the peak window definition | Models & Pricing | 3 Nov 2026 |
| 400 Invalid Format is the documented status for a malformed request body; no over-length status is published | DeepSeek API docs — Error Codes | 3 Nov 2026 |
We did not test the exact error returned by an over-length prompt or pay for a long-context API run. The cost figures in this article are calculations using the published rate card, not invoices or observed account charges.