PayPerQ Logo

PayPerQ

Blog
Routing Preferences — Steer How PayPerQ Picks Your Provider
Routing Preferences — Steer How PayPerQ Picks Your Provider

Routing Preferences — Steer How PayPerQ Picks Your Provider

Matt Ahlborg

Append a suffix like :nitro or :floor to any model and tell PayPerQ whether to optimize for speed, cost, or tool-calling quality — no config, no separate endpoint.

What are routing preferences?

Most models on PayPerQ can be served by more than one upstream provider, and each provider trades off differently on speed, price, and reliability. Routing preferences let you steer that choice on a per-request basis by appending a :suffix to the model name — no separate endpoint, no config file, no code changes beyond the model string itself.

bash
curl https://api.ppq.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-YOUR_API_KEY" \
  -d '{
    "model": "anthropic/claude-sonnet-4.6:nitro",
    "messages": [{"role": "user", "content": "What is the capital of France?"}]
  }'

That :nitro tells PayPerQ to prioritize the fastest provider for this one request. Drop the suffix and you get the default routing. That's the whole feature.

The suffixes

SuffixOptimizes forWhat it does
:nitroThroughputRoutes to the highest tokens-per-second provider. Great for user-facing chat where latency is felt.
:floorCostRoutes to the lowest-priced provider. Great for batch jobs where cost is the constraint.
:exactoTool-calling qualityPrefers providers with the strongest tool-calling reliability signals instead of the cheapest. Great for agentic workflows.
:onlineFresh informationEnables web search for the request (adds relevant search results to the prompt).
:thinkingReasoningSelects a model's dedicated reasoning variant, when it has one (see the note below).
:extendedContext lengthSelects an extended-context variant, where the model offers one.

Each is appended directly to the model slug:

text
anthropic/claude-sonnet-4.6:floor      # cheapest provider
anthropic/claude-sonnet-4.6:exacto     # best tool-calling provider
openai/gpt-5.2:online                  # with web search

You can also use them on PayPerQ's short aliases — claude-sonnet-4:nitro works the same way as the full slug.

When to use which

  • :nitro — interactive chat, live assistants, anything a human is waiting on.
  • :floor — bulk processing, evals, background jobs, anything where you'd trade a little latency for a lower bill.
  • :exacto — agents and tool-heavy workflows where a mis-formatted tool call costs you more than a few cents of routing.
  • :online — questions about recent events, prices, docs, or anything past the model's training cutoff.

Good to know

Billing is unaffected — you're always charged the real cost. PayPerQ records the actual generation cost reported by the upstream after the request completes, so a suffix that routes you to a cheaper (:floor) or pricier-but-faster (:nitro) provider is reflected automatically in what you pay. There's nothing extra to configure.

:online costs extra — on paid requests. When web search runs, it bills a small per-request search fee on top of the model tokens. On free-tier models :online is a no-op: PayPerQ does not attach web search to free-tier requests, so there is no search and no fee.

Some models are pinned and ignore routing preferences. A handful of models are deliberately routed to a single provider — for example, low-latency "fast" variants and models pinned to a specific endpoint for cost or reliability reasons. On those, :nitro / :floor / :exacto have no effect because there's only one provider to choose from. If a routing preference doesn't seem to change anything, this is usually why.

:thinking and :extended are variant-specific. They only work on models that actually publish that variant. On a model that doesn't have one (Claude, for example), the request returns a no endpoints found error rather than silently ignoring the suffix. To turn on reasoning for models like Claude, use the reasoning request parameter — e.g. { "reasoning": { "effort": "medium" } } — instead of :thinking.

Unknown suffixes pass through untouched. If you append something PayPerQ doesn't recognize as a routing preference, the model string is forwarded to the upstream as-is — so a provider's own permaslug (for example one that already ends in :free) keeps working exactly as before.

Compatible with everything else

Routing preferences are just a model-string convention, so they work anywhere you already pass a model to PayPerQ — the chat completions API, your existing OpenAI-compatible SDK, or any tool that lets you set the model name. Nothing else about your request changes.

What is PayPerQ?

PayPerQ

PayPerQ is a pay-per-query AI service that gives you instant access to hundreds of chat, image, video, and audio AI models in one place. Unlike traditional ChatGPT subscription that charges $20+ per month, PPQ users pay only for what they use—averaging just $4 a month.

Account registration optional. No monthly commitments. Privacy focused. Credit cards and all major cryptos accepted. Just top up with as little as 10 cents and start using premium AI immediately.

Why Use PayPerQ?

  • Access hundreds of AI models from all major providers in one place
  • Pay per use - no subscriptions, no wasted money on unused credits
  • No registration required - start using AI in seconds
  • Start small - top up with as little as 10 cents
  • Privacy-first - conversational data stored locally by default
  • Average cost: ~1 cent per query

Getting Started

  1. Visit ppq.ai
  2. Top up your balance (crypto or credit card, as little as 10 cents)
  3. Select your model and start chatting

No account creation needed—just fund and go.

Features
twitter logotelegramdiscord
nostr logo
email