Home/Migrate/From OpenRouter
Migration guide · 5 minutes

OpenRouter → QuickSilver Pro

Two lines of code. ~20% lower on Kimi K3, Qwen 3.7 Plus, DeepSeek V4 Pro, Claude Opus 5, GPT-5.6 and Grok 4.5 — and 20% lower on DeepSeek V4 Flash. For the comparative analysis, see /vs/openrouter.

The 5 steps

  1. 1

    Get a QuickSilver Pro API key

    Sign up at quicksilverpro.io/dashboard. Launch bonus: top up between $5 and $50 and we match it 100% — pay $5, get $10; pay $50, get $100.

  2. 2

    Change the base URL

    In your OpenAI SDK init, swap the base_url.

    - base_url="https://openrouter.ai/api/v1"
    + base_url="https://api.quicksilverpro.io/v1"
  3. 3

    Swap the API key

    Replace OPENROUTER_KEY with your QSP key.

    - api_key=os.environ["OPENROUTER_KEY"],
    + api_key=os.environ["QSP_KEY"],
  4. 4

    Rename model IDs

    Drop the provider/ prefix. The Qwen models also drop the trailing -a3b MoE-config suffix.

    OpenRouterQuickSilver Pro
    deepseek/deepseek-v4-flash-0731deepseek-v4-flash
    deepseek/deepseek-v4-prodeepseek-v4-pro
    qwen/qwen3.7-maxqwen3.7-max
    qwen/qwen3.7-plusqwen3.7-plus
    qwen/qwen3.7-flashqwen3.7-flash
    qwen/qwen3.6-plusqwen3.6-plus
    qwen/qwen3.6-35b-a3bqwen3.6-35b
    moonshotai/kimi-k2.6kimi-k2.6
    moonshotai/kimi-k2.7-codekimi-k2.7-code
    moonshotai/kimi-k3kimi-k3
    z-ai/glm-5.3glm-5.3
    z-ai/glm-5.2glm-5.2
  5. 5

    Test your core flows end-to-end

    Run one representative request for each feature — chat, tool_calls, json_schema strict mode, streaming. Any behavioral diff is a bug — report it.

Full before/after

Before · OpenRouter
from openai import OpenAI

client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key=os.environ["OPENROUTER_KEY"],
)

r = client.chat.completions.create(
    model="deepseek/deepseek-v4-flash-0731",
    messages=[{"role": "user", "content": "Hi"}],
)
After · QuickSilver Pro
from openai import OpenAI

client = OpenAI(
    base_url="https://api.quicksilverpro.io/v1",
    api_key=os.environ["QSP_KEY"],
)

r = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Hi"}],
)

Common migration pitfalls

Cache-hit ratio drops temporarily
OpenRouter's cache lives across upstream providers; when you switch to QSP your cache starts cold. For the first day or two, observed cost may be a few % higher than list-price math suggests. Cache fills within 24-48h of your normal traffic pattern.
Model version drift
The undated OpenRouter DeepSeek ID serves an older build. QSP pins V4 Flash to the official 0731 revision; re-run evals if they were tuned to the older output style.
Don't migrate models you don't use on QSP
QSP's catalog spans open weights (Kimi K3, DeepSeek V4 Flash + Pro, GLM 5.2, Qwen 3.7, MiniMax M3) and the closed frontier (Claude Opus 5, GPT-5.6, Grok 4.5, Gemini 3.x) — so Claude and GPT-5.6 workloads move over too, at 20% below OpenRouter. If your setup also uses Llama, Mistral, or the long tail of community models, keep calling OpenRouter for those. Many teams run both SDKs side-by-side.
Rate limits work differently
OpenRouter silently smooths across upstreams. QSP enforces per-key throughput caps (default 600 req/min, 1M tok/min, 8 parallel). For bursty workloads, enable retry-on-429 in your client and ask for a higher limit if needed.

Other migration guides

Need help?

Email hello@quicksilverpro.io — a human replies usually within 4 hours. For the broader analysis, see QuickSilver Pro vs OpenRouter.

Start saving in 5 minutes

Launch bonus: first deposit matched 100%, up to $50 in bonus credits. Keep your OpenAI SDK unchanged — only the URL and key change.

Get API Key