Companion Scout blog

DeepSeek API Pricing in 2026: Flash vs Pro, Peak & Costs

deepseekjanitor-aitips

DeepSeek’s direct API bills $0.15 per million input tokens and $0.60 per million output tokens for Flash off-peak; Pro is $0.66 input and $1.98 output. Peak rates (01:00-04:00 and 06:00-10:00 UTC, weekdays, excluding Chinese public holidays) are double. Cached input is 50x cheaper than cache-miss input. For a typical 60-messages-a-day Janitor AI chat at 8k context with half a swipe each, Flash costs about $5 a month off-peak and Pro about $21.

DeepSeek’s pricing page is short, but three details change the bill more than people expect: peak hours, cache hits, and the fact that every swipe resends the whole context. This is what the numbers actually look like for roleplay use.

Key takeaways

  • Flash off-peak: $0.15 input / $0.60 output / $0.003 cached input, per million tokens
  • Pro off-peak: $0.66 input / $1.98 output / $0.022 cached input, per million tokens
  • Peak doubles the rate; peak hours are two UTC windows on weekdays only
  • Cache hits can make a hot chat cost 10x less than a cold one
  • Prepaid balance: plan the top-up at the model and context you actually use

The full DeepSeek API price table

Prices are USD per million tokens. The table below is DeepSeek’s live pricing page, checked 2026-11-04 at api-docs.deepseek.com/quick_start/pricing.

ModelInput (cache miss)Input (cache hit)Output
deepseek-flash off-peak$0.15$0.003$0.60
deepseek-flash peak$0.30$0.006$1.20
deepseek-v4-pro off-peak$0.66$0.022$1.98
deepseek-v4-pro peak$1.32$0.044$3.96

Both models expose a 1M-token context window and up to 384k output tokens, and both support thinking and non-thinking modes. Flash is DeepSeek-V4.1-Flash-1017; Pro is DeepSeek-V4-Pro-0813. The old deepseek-v4-flash and deepseek-v4-flash-vision-exp IDs are still accepted but now served by Flash at the Flash price.

When are DeepSeek’s peak hours?

DeepSeek’s note on the pricing page is precise:

Peak hours are 01:00 - 04:00 and 06:00 - 10:00 UTC, Monday through Friday, excluding Chinese public holidays. All other hours are off-peak, including weekends and Chinese public holidays in full.

That is seven hours a day across two windows, five days a week. The rest of the week, more than 80% of all hours, is off-peak. If you chat in the US evening or European afternoon, you are almost entirely off-peak. If you chat during the European morning or Indian afternoon, you are at least partially inside a peak window.

Practical read: unless you run batch work during Chinese business hours, treat the headline rates ($0.15 / $0.60 for Flash) as what you will actually pay. The peak rates mostly matter for multi-region production apps, not evening roleplay.

What is cache hit input?

DeepSeek caches recent prompts and bills repeat prompt prefixes at the cache-hit rate: Flash’s $0.003 and Pro’s $0.022 are 50x and 30x cheaper than their respective cache-miss input prices. In a Janitor AI or SillyTavern chat, the character card, persona and lorebook that go in front of every message are stable; if you keep the same chat open, the second and later messages hit the cache for most of their input.

A realistic mix for a running roleplay session is 60-90% cache hits on the character card and recent history, miss on the new user turn. The calculator at our proxy cost tool lets you enter a cache-hit share and shows the effect.

A rough shape: if 70% of your 8k context is cache-hit on Flash off-peak, the input side drops from $0.00120 per request to $0.00037, so a $5-a-month bill becomes closer to $2.

Cost per message and per month

Using DeepSeek’s own prices, 30% peak share (typical in Europe and North America combined), 0% cache hits (worst case, cold chat start), 8k-token context, 350-token reply, and 0.5 swipes per message:

ModelPer message (incl. swipes)Per day at 60 msgsPer month
Flash$0.0027$0.16about $5
Pro$0.0116$0.70about $21

Lighter use, 10 messages a day at 4k context with no swipes, no peak, no cache:

ModelPer messagePer dayPer month
Flash$0.00088$0.009about $0.27
Pro$0.00374$0.037about $1.12

Heavy use, 150 messages a day at 16k context with one swipe each:

ModelPer messagePer dayPer month
Flash$0.0079$1.19about $35
Pro$0.0339$5.08about $150

Run your own numbers in the proxy cost calculator; the maths above comes from the same formula.

DeepSeek direct vs Janitor+ vs NanoGPT

The direct DeepSeek API competes with two flat-price alternatives for roleplay:

RouteFlat costVariable costBest when
DeepSeek Flash direct$0$0.15 input / $0.60 output per 1M tokens (off-peak)You chat 30-120 messages a day and want the lowest paid token price
Janitor+$12.99/month or $99/yearRouter usage per token on topYou prefer one Janitor subscription and like the janitor+ Router UI
NanoGPT subscription$12/monthPay-as-you-go above planYou use open-source text models outside Janitor too

Break-even math: Janitor+ at $12.99/month covers its own JLLM+ model. If you want a DeepSeek model specifically, Janitor+ Router bills you per token on top, roughly at provider rates. A direct DeepSeek Flash key costs about $5/month at 60 messages/day; Janitor+ costs $12.99/month flat before any Router usage. Direct wins at light and medium use. Janitor+ wins when you also value the JLLM+ model, priority access and more context.

Your Router model and context will shift these numbers. The Janitor AI proxy guide covers each route’s privacy trade-off; the DeepSeek on Janitor AI setup guide covers the direct-API steps.

Getting the prepaid balance right

DeepSeek bills from a prepaid balance. For a first top-up:

  • $2 covers a typical Flash user for two or three months
  • $10 covers a heavy Flash user for one to two months, or a Pro user for about three weeks
  • Avoid loading more than one or two months of usage on a new key; rotate the key first if it has been in a proxy config

Keep your DeepSeek balance, OpenRouter balance and Janitor+ Router wallet separate; pasting one key against another’s endpoint is the most common 404 and 402 you will see.

What to watch for

  • Model aliases. deepseek-v4-flash still works but is served by Flash at the Flash price. There is no reason to keep using the old alias; it adds confusion when reading billing logs.
  • Thinking mode. Both Flash and Pro default to thinking mode. Thinking tokens are output tokens and are billed at the output rate; the extra tokens are often a third of a short reply’s billed output.
  • Search and Fetch APIs. DeepSeek added paid Search and Fetch APIs: $0.75 per 1,000 successful requests from 1 November 2026. Normal chat requests do not touch these; they only matter if you call the Search/Fetch endpoints or use DeepSeek Harness/Claude Code/Codex server-side tools.
  • Concurrency limits. Flash allows 2,500 concurrent requests, Pro 500. Single-user roleplay never hits either.

Sources & references

  • DeepSeek API docs, Models & Pricing: the current Flash and Pro rates, peak hours, cache-hit and cache-miss definitions, concurrency limits, and the retired-alias note. Checked 2026-11-04. api-docs.deepseek.com/quick_start/pricing
  • OpenRouter API docs, API Credit & Rate Limits: free-model cap, 10-credit unlock and 9-credit grant, used for the direct-vs-OpenRouter comparison. Checked 2026-11-04. openrouter.ai/docs/api-reference/limits
  • Janitor AI subscription page: Janitor+ at $12.99/month or $99/year. Used for the break-even math. Checked 2026-11-04. janitorai.com/plus
  • NanoGPT pricing page: the $12/month open-source text-model subscription. Checked 2026-11-04. nano-gpt.com/pricing

What will my proxy cost per message and per month?

Prices checked 2026-11-04 from each provider’s official pricing page (sources below). Estimates assume every swipe resends the full context and exclude tax. A 1,000-token reply is roughly 750 English words. Nothing you enter leaves your browser.

Proxy doctor: what does this error mean?

Paste the error your proxy shows (for example “429”, “failed to fetch” or “model not found”).

All common proxy errors
401 Unauthorized / invalid API key
Cause: The key is wrong, revoked, or pasted with a space or line break. Fix: Create a fresh key in the provider dashboard, paste it again with no spaces, and check it belongs to the same provider as the endpoint URL.
402 Payment required / insufficient balance
Cause: Your balance is empty or negative for a paid model. Fix: Top up the provider balance, or switch to a free model. On OpenRouter, a top-up of 10 credits also lifts the free-model cap from 50 to 1,000 a day.
403 Forbidden
Cause: The key does not have access to this model, the account is restricted, or the model is unavailable in your region. Fix: Check the model is enabled for your account and region in the provider dashboard, or pick another model.
404 Not found / model not found
Cause: The model ID is misspelled, retired, or the endpoint URL is wrong. Fix: Copy the exact model ID from the provider’s model list (IDs are case-sensitive), and make sure the URL ends in /chat/completions.
429 Too many requests / rate limited
Cause: You hit a per-minute or per-day cap. OpenRouter free models allow 20 a minute and 50 a day (1,000 a day after buying 10 credits). Busy upstream providers also return 429. Fix: Wait and retry, slow down swipes, try another free model, or add credit. Each swipe counts as a request.
5xx / overloaded / timeout
Cause: The upstream provider is down, overloaded or slow; it is not your settings. Fix: Retry in a few minutes or switch provider. Large contexts make timeouts more likely, so trimming chat memory helps.
“Failed to fetch” / network error
Cause: The request never reached the provider: usually a wrong endpoint URL, a typo in https, or a browser extension or network blocking it. Fix: Re-check the full endpoint URL (for example https://openrouter.ai/api/v1/chat/completions), disable blockers for the site, and try another network.
Context length exceeded
Cause: Character card + persona + memory + chat history is larger than the model or your settings allow. Fix: Lower the context size, shorten the character card or lorebook, or start a new chat with a summary.
Empty or cut-off replies
Cause: The reply-length (max tokens) setting is too low, or a reasoning model spent its tokens thinking. Fix: Raise max new tokens, or turn reasoning off for chat models that support it.
Refusals / content blocked
Cause: The model or provider’s content policy declined the request. This is policy, not a bug. Fix: Pick a provider whose published usage policy fits what you use it for. We don’t publish ways around provider safety rules.

Frequently asked questions

How much does DeepSeek API cost in 2026?

DeepSeek Flash costs $0.15 per million input tokens and $0.60 per million output off-peak; DeepSeek V4 Pro costs $0.66 input and $1.98 output. Peak rates (01:00-04:00 and 06:00-10:00 UTC on weekdays) are double the off-peak rates. Cached input is much cheaper.

What are DeepSeek's peak hours?

01:00-04:00 and 06:00-10:00 UTC, Monday to Friday, excluding Chinese public holidays. Everything else is off-peak, including all weekends. Peak rates are double the off-peak rates: Flash becomes $0.30 input and $1.20 output, Pro $1.32 and $3.96.

How much is cached input on DeepSeek?

$0.003 per million tokens off-peak and $0.006 peak on Flash; $0.022 off-peak and $0.044 peak on Pro. A cache hit means the same prompt prefix has been seen recently, so long character cards and chat histories can cut input cost by 50x on a hot chat.

Is DeepSeek API cheaper than Janitor+ for roleplay?

At under about 90 messages a day, DeepSeek Flash on the direct API is cheaper per month than janitor+ ($12.99/month). Above that, janitor+ becomes competitive because its JLLM+ is included. Router usage inside Janitor+ is billed per token on top and is not included.

What is DeepSeek V4 Pro vs Flash?

Flash is tuned for speed and lower cost, Pro for harder prompts and longer reasoning. Both have 1M-token context and 384k max output, both support thinking and non-thinking modes. Pro costs about 4x Flash on input and about 3x on output.

Can I get DeepSeek free?

Not directly. DeepSeek's API is prepaid and metered. Free DeepSeek routing exists on OpenRouter's :free tier, but the model ID and limits change. 50 requests a day (1,000 after 10 credits) apply there, not the direct API's per-concurrency limits.