Last week I wrote about DeepSeek V4.1 Flash like a calendar threat: new architecture, retire the old Flash IDs into the new one, and — the part that made builders twitch — a planned silent Pro → Flash reroute after September 14, 2026. That post still stands on the Flash launch. What does not stand is the Pro death date.

Today I re-checked the official API changelog and the Models & Pricing page. DeepSeek walked it back. In their words: “In response to user demand, we have decided to continue providing API services for DeepSeek V4 Pro after September 14, 2026, with the billing method remaining unchanged.” Same language is footnote (2) on pricing. Both models are still listed side by side: deepseek-flash (V4.1-Flash) and deepseek-v4-pro (V4-Pro-0813), with separate prices and concurrency caps.

They calendared a kill. Then they kept the product.

That is the whole story, and it is more useful than another benchmark table. Vendors love clean migration narratives. Builders love hard-coded model strings that still work on Monday morning. DeepSeek announced a date. Users pushed back. The date lost. Billing for Pro stays as published. Legacy Flash names still route into V4.1-Flash — that redirect is real — but Pro is not being silently swapped for Flash today.

If you already rewrote every WordPress agent, Breakdance helper, or MCP workflow to assume deepseek-v4-pro would suddenly behave like Flash at Flash prices, undo that assumption. Call what you mean.

Flash vs Pro is still a real fork

I am not romantic about Pro. I am practical. On the live pricing table, Flash is the cheap, vision-capable overflow lane. Pro is still the heavier, more expensive ID with its own peak/off-peak rates and a lower concurrency limit (500 vs 2500 on Flash). Vision is on Flash, not Pro. Thinking modes exist on both. Treat them as two products, not one product with a marketing rename.

For my agency stack — WordPress, Breakdance, Headspin UI, a lot of CSS and page scaffolding — that split maps cleanly:

  • deepseek-flash for high-volume, short-horizon jobs: class renames, alt text, section wireframes, changelog drafts, batch QA notes.
  • deepseek-v4-pro when I actually want the Pro behavior I paid for — deeper agent loops, harder refactors, tasks where a silent downgrade would burn client hours.
  • Legacy deepseek-v4-flash / deepseek-v4-flash-vision-exp only as temporary aliases. They route to V4.1-Flash and bill at Flash. Do not use them as a “stable identity” in production configs.

Stop trusting silent vendor redirects

This U-turn is good news and a warning label in the same sentence. Good news: customer demand still moves a frontier lab when the migration hurts. Warning: the original plan was a silent Pro→Flash handoff on a calendar. That pattern is how you wake up to different latency, different vision support, different quality, and a invoice that no longer matches the model you thought you pinned.

My rules after today:

1. Pin explicit model IDs in code and MCP configs. Not “latest.” Not “whatever the gateway remaps.” If the vendor retires an ID, I want a loud failure or a controlled fallback I wrote — not a quiet personality change mid-client sprint.

2. Separate routing policy from model choice. Flash for volume. Pro for judgment-heavy work. Fable in Cursor for careful Breakdance structure. Grok when I want a sharp second pass. Astra when the lane is open. One dropdown per job class, not one default forever.

3. Re-read changelogs on migration day, not just announcement day. The Sept 10 DeepSeek update carried both the Flash launch and the Pro keep. If you only skimmed headlines last week, you might still be bracing for a retirement that did not happen.

4. Price and concurrency are part of the model ID. Keeping Pro “billing unchanged” means the Pro lane stays expensive and capped relative to Flash. That is fine — as long as your cost-per-finished-job math still uses the right column.

Meanwhile on the Grok side

Secondary note, same week: Musk says Grok 4.8 (claimed 2.5T, new C++ stack) finishes training and enters RL during the week of September 14. That is a training milestone, not an API SKU you can hard-code yet. Useful as race context. Not a reason to rip DeepSeek out of a working overflow lane.

What I am shipping with

Nothing about this changes my default coding agent. Claude Fable in Cursor still builds the careful Breakdance trees. DeepSeek Flash still absorbs volume. DeepSeek Pro stays available if I explicitly ask for it — which is exactly how APIs should work after a scare like this. The lesson is not “trust DeepSeek forever.” The lesson is trust your own model map, refresh it when the docs change, and never let a vendor’s silent redirect become your architecture.

Sources I used today: DeepSeek API updates (2026-09-10 entry), Models & Pricing, and my prior post on the Flash launch. If they move Pro again, I will write the next correction the same way — with the ID strings in the headline, not the vibes.