Docs Rankings ↗
🌐 EN
Contribute your data

The Open Router Standard

TKX flips the usual integration burden: instead of us writing an adapter per marketplace, you expose public pricing and we ingest you automatically. Any router, aggregator, inference provider or model lab whose /v1/models carries pricing is normalized, sanity-checked and ranked within the hour.

Already live via the standard: novita.ai and Requesty — onboarded with zero bespoke code.

Supported pricing dialects

Expose per-model pricing in any one of these shapes; TKX normalizes all four to USD per 1M tokens:

// A — OpenRouter style: $/token as strings
"pricing": { "prompt": "0.0000006", "completion": "0.0000024" }

// B — Requesty style: $/token as numbers
"input_price": 0.0000006, "output_price": 0.0000024

// C — Novita style: ten-thousandths of $ per 1M (÷10000)
"input_token_price_per_m": 6000, "output_token_price_per_m": 24000

// D — one-api / new-api style: /api/pricing ratio system (base $2/1M; quota_type=1 rows are skipped)
"model_name": "gpt-5.5", "model_ratio": 2.5, "completion_ratio": 4, "quota_type": 0

How we protect the data

Ingested prices pass three sanity valves before they can appear: a per-row plausible-range check, a per-source minimum-sample check (≥3 priced models), and a per-source deviation check against official rate cards (a source whose median markup is wildly off is dropped whole). Bad units never pollute the boards.

Usage reporting (optional) — light up your Volume column

The Routers board ranks by 24h traded token volume first. OpenRouter's volume comes from its public rankings; every other marketplace can report its own by exposing one public JSON endpoint (any https URL). We pull it hourly — you never push numbers to us, and anyone can curl your endpoint to audit what we show.

// GET https://your-domain/tkx-usage.json — yesterday's completed UTC day
{
  "date": "2026-07-20",                    // UTC calendar day (YYYY-MM-DD), the last completed day
  "total_tokens_24h": 123456789012,     // prompt + completion tokens, whole platform
  "models": [                              // optional but recommended
    { "model_name": "gpt-5.5", "tokens_24h": 12345678 }
  ],
  "requests_24h": 98765,                 // optional
  "spend_usd_24h": 1234.56                // optional
}

Self-reported volume appears with an explicit self badge — never mixed with measured data, never added to OpenRouter's numbers, and never counted into TKX indices. Reports pass validation valves (shape, plausibility caps, freshness ≤3 days, per-model breakdown consistency); a report that fails any valve is dropped whole for that cycle. Self-reported ≠ endorsed: we display and label, readers judge.

i
Register the usage URL together with your /v1/models on the registration form, or ask us to attach it to an existing listing. It lights up within one collection cycle.

Get listed