DeepSeek API pricing, all variants
Current per-million-token prices for every DeepSeek V4.1 Flash variant, from the cheapest general model to uncensored and private routes.
DeepSeek V4.1 Flash is one of the cheapest model families on GeniusRelay, and it comes in several variants with different prices, context windows and refusal behavior. This page puts every current rate in one table so you can choose by budget, history length and how much alignment you want.
Prices are per million tokens, from the live rate table on each model page. Cached input is billed separately and is not shown for every model.
Price table
| Model | Input / 1M | Output / 1M | Context | Notes |
|---|---|---|---|---|
| DeepSeek V4.1 Flash | $0.0503 | $0.520 | 1.05M | cheapest general model |
| DeepSeek V4.1 Flash 1017 | $0.130 | $0.780 | 1.05M | newer checkpoint |
| DeepSeek V4.1 Flash Heretic | $0.257 | $1.03 | 512K | fewer refusals, mixed precision |
| DeepSeek V4.1 Flash Uncensored | $0.429 | $1.72 | 1M | DeAlign, hardest prompts |
| DeepSeek V4.1 Flash 1017 Uncensored | $0.429 | $1.72 | 1.05M | DeAlign, newer base |
| DeepSeek V4.1 Flash Private | $0.780 | $1.89 | 1.05M | private route |
The :thinking suffix on any of these names bills reasoning tokens as output. If you enable it, expect a 2–5× effective output cost on reasoning-heavy prompts.
How to choose
- Cheapest general use: DeepSeek V4.1 Flash. At $0.0503/M input it is one of the lowest rates in the catalogue.
- A newer base model: 1017, when the older checkpoint dates show up in quality.
- Less-refusal workloads: Heretic for a middle price, Uncensored when Heretic still stalls.
- Higher privacy: Private, at roughly 15× the base input rate.
- Long prompts: The 1M-context variants avoid truncation, but the input bill scales with the full prompt.
What a run actually costs
Prices per million tokens look abstract. These examples use DeepSeek V4.1 Flash, the cheapest variant.
Support bot, 2K input / 400 output, 1,000 requests per day
- Input: 2,000 × 1,000 = 2M tokens → $0.10
- Output: 400 × 1,000 = 0.4M tokens → $0.21
- Daily: $0.31, monthly: about $9.30
Document summarizer, 80K input / 800 output, 200 requests per day
- Input: 16M tokens → $0.80
- Output: 0.16M tokens → $0.08
- Daily: $0.88, monthly: about $26.50
Chat with 20K-token history, 1,000 turns
- Input: 20M tokens → $1.01
- Output: 0.4M tokens → $0.21
- Total: about $1.22 for the run
The lesson is that input dominates on long prompts. Summarize history, cache the stable prefix, and the same workload gets much cheaper.
Caching changes the picture
Repeated prefixes bill at the cached input rate on supported models. A system prompt, a style guide, a codebase header — anything stable — should sit at the front of the message array. The cache rate is a fraction of the normal input price, so a repeated 10K-token prefix can cost a tenth of what a naive call would.
Two rules:
- Keep the stable block byte-identical. A timestamp in the prefix breaks the cache.
- Put the variable part last, after the cached block.
Switching from the official DeepSeek API
Change the base URL to https://api.geniusrelaygpt.com/v1, replace the key, and keep the model ID. The request format is OpenAI-compatible, so an official-API client moves without code changes:
from openai import OpenAI
client = OpenAI(
base_url="https://api.geniusrelaygpt.com/v1",
api_key="YOUR_KEY",
)
resp = client.chat.completions.create(
model="deepseek-v4.1-flash",
messages=[{"role": "user", "content": "Summarize this contract."}],
)Other DeepSeek variants
The family is not only about price. If the job is roleplay, start from the uncensored models page instead of the cheapest row. If it is coding, check the tool-calling models. For long repositories, filter by long context and compare against GLM and Qwen before committing.
The pricing calculator applies the same rates with sliders, and the comparison page shows DeepSeek next to other makers.
Guardrails
- Set a per-key cap. A retry loop on a cheap model is still a loop.
- Watch output length. Output is 10× input on the base model; a runaway
max_tokensis the usual bill spike. - Log the model ID. Provider names change faster than price tables; per-request logs make regressions visible.
- Check the balance. Empty credit returns
insufficient_quota, covered in error codes.
FAQ
Is there a free tier?
No subscription and no free tier. Prepaid credits are deducted per token used.
Can I switch from the official DeepSeek API?
Yes. Change the base URL and key. The chat completions format is the same.
Which DeepSeek model is best for roleplay?
Heretic or Uncensored. Both refuse less than the base model; see the roleplay page.
Why is output more expensive than input?
Generation is the expensive direction. Expect output to cost roughly 4–10× input and keep max_tokens bounded.
Does DeepSeek V4.1 Flash support vision?
The Uncensored and Heretic variants accept image input. Check the capability badges on each model page before relying on it.
Do prices include tax?
Rates are in USD per million tokens. Any local tax handling depends on your account and payment method; the console balance is authoritative.
Start here
Open DeepSeek V4.1 Flash, send one request through the quickstart, and use the billing rules to set limits before the first batch run.
Caching in practice
Put the stable block first and keep it identical:
messages = [
{"role": "system", "content": STYLE_GUIDE}, # unchanged, cached
{"role": "user", "content": article}, # changes per call
]Rebuilding STYLE_GUIDE with a new timestamp each run breaks the cache and moves the whole prefix back to full price. Serialize it once at boot. If the guide is large, store it as a file and read it unchanged.
Cache hits show up in the usage log as cached input tokens. Compare that line against total input; if it is zero on a repeated prompt, the prefix is drifting.
Bulk pricing rules
- Batch 20–50 items per request and send the instructions once.
- Cap
max_tokensper batch so one runaway item cannot bill the whole job. - Summarize long histories rather than resending them; on a 1M model the input is still charged per token.
- Run a 1% sample first and extrapolate cost before the full batch.
The billing rules page lists how cached and uncached input are separated, and the streaming guide covers request timeouts for long batches.