PageSourceSearch

https://smouter.ai/

html smouter.ai collected 2026-10-05 14:36:51 UTC 50,073 bytes, 123 lines download raw bytes

1<!doctype html>
2<html lang="en">
3  <head>
4    <meta charset="UTF-8" />
5    <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
6    <link rel="icon" type="image/png" sizes="512x512" href="/brand/smouter-logo-512.png" />
7    <link rel="apple-touch-icon" href="/brand/smouter-logo-256.png" />
8    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
9
10    <meta name="theme-color" content="#ffffff" />
11
12    <!-- Theme, before first paint. Mirrors src/theme.tsx: an explicit pick wins,
13         otherwise follow the OS. Runs here — not in the bundle — so the page never
14         flashes the wrong palette while the module loads. The theme-color meta is
15         declared above so this can repaint the mobile browser chrome too. -->
16    
16<script>
17      ;(function () {
18        var t = 'light'
19        try {
20          var p = localStorage.getItem('smouter-theme') || localStorage.getItem('lv3-theme')
21          t =
22            p === 'light' || p === 'dark'
23              ? p
24              : matchMedia('(prefers-color-scheme: dark)').matches
25                ? 'dark'
26                : 'light'
27        } catch (e) {
28          /* storage blocked — fall back to light */
29        }
30        document.documentElement.dataset.theme = t
31        if (t === 'dark') {
32          document.querySelector('meta[name="theme-color"]').setAttribute('content', '#05070c')
33        }
34      })()
35    </script>
35
36    <meta
37      name="description"
38      content="Smouter is an OpenAI- and Anthropic-compatible AI gateway. Access leading LLMs through one API and pay up to 50% less than OpenRouter."
39    />
40    <link rel="canonical" href="https://smouter.ai/" />
41
42    <!-- Google tag (gtag.js) — Google Ads conversion tracking (AW) + GA4 analytics (G) on one loader -->
vendor: 68 bytes, lines 42-43
42
43    <script async src="https://www.googletagmanager.com/gtag/js?id=
43AW-18223534235
vendor: 16 bytes, lines 43-44
43"></script>
44    
44<script>
45      window.dataLayer = window.dataLayer || []
46      function gtag() {
47        dataLayer.push(arguments)
48      }
49      gtag('js', new Date())
50      gtag('config', 'AW-18223534235')
51      gtag('config', 'G-3M46GKL7GB')
52    </script>
52
53
54    <!-- Social -->
55    <meta property="og:title" content="Smouter — AI Gateway for Lower-Cost LLM APIs" />
56    <meta
57      property="og:description"
58      content="Smouter is an OpenAI- and Anthropic-compatible AI gateway. Access leading LLMs through one API and pay up to 50% less than OpenRouter."
59    />
60    <meta property="og:type" content="website" />
61    <meta property="og:url" content="https://smouter.ai/" />
62    <meta property="og:site_name" content="Smouter" />
63    <meta property="og:image" content="https://smouter.ai/brand/og/home.5693110d.jpg" />
64    <meta property="og:image:width" content="1200" />
65    <meta property="og:image:height" content="630" />
66    <meta property="og:image:alt" content="Smouter — AI Gateway for Lower-Cost LLM APIs" />
67    <meta name="twitter:card" content="summary_large_image" />
68    <meta name="twitter:title" content="Smouter — AI Gateway for Lower-Cost LLM APIs" />
69    <meta
70      name="twitter:description"
71      content="Smouter is an OpenAI- and Anthropic-compatible AI gateway. Access leading LLMs through one API and pay up to 50% less than OpenRouter."
72    />
73    <meta name="twitter:image" content="https://smouter.ai/brand/og/home.5693110d.jpg" />
74    
74<script type="application/ld+json">
75      {
76        "@context": "https://schema.org",
77        "@graph": [
78          {
79            "@type": "Organization",
80            "@id": "https://smouter.ai/#organization",
81            "name": "Smouter",
82            "url": "https://smouter.ai/",
83            "logo": {
84              "@type": "ImageObject",
85              "url": "https://smouter.ai/brand/smouter-logo-512.png",
86              "width": 512,
87              "height": 512
88            },
89            "contactPoint": {
90              "@type": "ContactPoint",
91              "email": "[email protected]",
92              "contactType": "customer support",
93              "url": "https://smouter.ai/support"
94            }
95          },
96          {
97            "@type": "WebSite",
98            "@id": "https://smouter.ai/#website",
99            "name": "Smouter",
100            "url": "https://smouter.ai/",
101            "inLanguage": "en",
102            "description": "OpenAI-compatible AI gateway that routes every request through four stacked layers of savings.",
103            "publisher": { "@id": "https://smouter.ai/#organization" }
104          }
105        ]
106      }
107    </script>
107
108
109    <link rel="preconnect" href="https://fonts.googleapis.com" />
110    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
111    <link
112      href="https://fonts.googleapis.com/css2?family=Archivo:wdth,[email protected],400..800&family=Azeret+Mono:wght@400;500;600;700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&family=Space+Grotesk:wght@500;600;700&display=swap"
113      rel="stylesheet"
114    />
115    <title>Smouter — AI Gateway for Lower-Cost LLM APIs</title>
116    
116<script type="module" crossorigin src="/assets/index-ekCsyxOZ.js"></script>
116
117    <link rel="stylesheet" crossorigin href="/assets/index-iQbkkgbM.css">
118  
118<script type="application/json" id="route-metadata">{"/":{"title":"Smouter — AI Gateway for Lower-Cost LLM APIs","description":"Smouter is an OpenAI- and Anthropic-compatible AI gateway. Access leading LLMs through one API and pay up to 50% less than OpenRouter.","image":"https://smouter.ai/brand/og/home.5693110d.jpg"},"/models":{"title":"Models & pricing · Smouter","description":"50+ models behind one OpenAI-compatible key — live per-token prices, always routed to the cheapest healthy provider.","image":"https://smouter.ai/brand/og/models.940d78e5.jpg"},"/pricing":{"title":"Pricing · Smouter","description":"Pay per token with no seats and no lock-in — or pick a plan. Every tier gets the full savings stack.","image":"https://smouter.ai/brand/og/pricing.bb253f2a.jpg"},"/docs":{"title":"Documentation · Smouter","description":"Point your OpenAI or Anthropic SDK at api.smouter.ai and keep your code — endpoints, streaming, caching, routes.","image":"https://smouter.ai/brand/og/docs.072c6f0a.jpg"},"/docs/connect":{"title":"Connect your coding tool · Smouter","description":"Step-by-step guides for pointing Cursor, Claude Code, OpenCode, Codex, Cline, Aider, Zed and any OpenAI-compatible tool at Smouter.","image":"https://smouter.ai/brand/og/connect.62650340.jpg"},"/docs/connect/cursor":{"title":"Connect Cursor to Smouter · Smouter","description":"Override the OpenAI base URL in Cursor, add Smouter model ids as custom models, and verify — exact steps plus the gotchas that fail it.","image":"https://smouter.ai/brand/og/connect-cursor.73d0b66b.jpg"},"/docs/connect/claude-code":{"title":"Connect Claude Code to Smouter · Smouter","description":"Run Claude Code on the Anthropic-compatible Messages endpoint with two environment variables — base URL, auth token and model id.","image":"https://smouter.ai/brand/og/connect-claude-code.0dd967c2.jpg"},"/docs/connect/opencode":{"title":"Connect OpenCode to Smouter · Smouter","description":"Add Smouter as an OpenAI-compatible provider in opencode.json and pick any catalog model from the /models command.","image":"https://smouter.ai/brand/og/connect-opencode.94cf9b8e.jpg"},"/docs/connect/codex-cli":{"title":"Connect Codex CLI to Smouter · Smouter","description":"Point Codex CLI at Smouter with a model_providers entry in config.toml — chat wire, env key and a live model id.","image":"https://smouter.ai/brand/og/connect-codex-cli.d3a5b8eb.jpg"},"/docs/connect/cline":{"title":"Connect Cline to Smouter · Smouter","description":"Configure the Cline OpenAI Compatible provider with the Smouter base URL, an API key and an exact model id.","image":"https://smouter.ai/brand/og/connect-cline.e33f501b.jpg"},"/docs/connect/roo-code":{"title":"Connect Roo Code to Smouter · Smouter","description":"Configure the Roo Code OpenAI Compatible provider with Smouter values and point each mode profile at it.","image":"https://smouter.ai/brand/og/connect-roo-code.2bf62f58.jpg"},"/docs/connect/kilo-code":{"title":"Connect Kilo Code to Smouter · Smouter","description":"Configure the Kilo Code OpenAI Compatible provider with the Smouter base URL, key and model id.","image":"https://smouter.ai/brand/og/connect-kilo-code.8b92b247.jpg"},"/docs/connect/continue":{"title":"Connect Continue to Smouter · Smouter","description":"Add a Smouter model block to the Continue config.yaml with provider openai and apiBase — one block per model.","image":"https://smouter.ai/brand/og/connect-continue.5989e80d.jpg"},"/docs/connect/aider":{"title":"Connect Aider to Smouter · Smouter","description":"Run Aider against Smouter with OPENAI_API_BASE, OPENAI_API_KEY and the openai/ model prefix.","image":"https://smouter.ai/brand/og/connect-aider.c6ee2593.jpg"},"/docs/connect/zed":{"title":"Connect Zed to Smouter · Smouter","description":"Add Smouter as an openai_compatible provider in Zed settings.json and pick the model from the Agent panel.","image":"https://smouter.ai/brand/og/connect-zed.7576d16f.jpg"},"/docs/connect/desktop-chat-apps":{"title":"Connect desktop chat apps to Smouter · Smouter","description":"Add Smouter as an OpenAI-compatible provider in Jan, Chatbox, Msty, Cherry Studio, AnythingLLM, Open WebUI and similar desktop clients.","image":"https://smouter.ai/brand/og/connect-desktop-chat-apps.87310c32.jpg"},"/docs/connect/any-openai-client":{"title":"Connect any OpenAI-compatible tool to Smouter · Smouter","description":"The environment variables and SDK settings that connect any OpenAI-compatible or Anthropic-SDK tool to Smouter.","image":"https://smouter.ai/brand/og/connect-any-openai-client.98804064.jpg"},"/support":{"title":"Support · Smouter","description":"Search the Smouter knowledge base or open a ticket — setup, billing, routing and API answers.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/status":{"title":"Status · Smouter","description":"Live Smouter gateway health, probed from production — models, providers and routing in real time.","image":"https://smouter.ai/brand/og/status.bb55fb84.jpg"},"/models/kimi-k3":{"title":"Kimi K3 API — cheaper Kimi K3 · Smouter","description":"The same Kimi K3, OpenAI-compatible and priced from the live catalog — pay per token, below list price.","image":"https://smouter.ai/brand/og/kimi-k3.8b864afb.jpg"},"/models/deepseek-v4":{"title":"DeepSeek V4 API — cheaper V4 Pro & Flash · Smouter","description":"The same DeepSeek V4 Pro and Flash, OpenAI-compatible and priced from the live catalog — pay per token, below DeepSeek list.","image":"https://smouter.ai/brand/og/deepseek-v4.dd49a6a3.jpg"},"/models/glm-5":{"title":"GLM-5.2 API — cheaper GLM-5 · Smouter","description":"The same GLM-5.2, OpenAI-compatible and priced from the live catalog — pay per token, far below Z.ai list.","image":"https://smouter.ai/brand/og/glm-5.cf7d4e98.jpg"},"/models/qwen3-coder":{"title":"Qwen3 Coder API — cheaper Qwen coding models · Smouter","description":"The same Qwen3-Coder-Next with 262K context, OpenAI-compatible — one flat live per-token price, below Alibaba list.","image":"https://smouter.ai/brand/og/qwen3-coder.aa1e8086.jpg"},"/models/gpt-oss-120b":{"title":"gpt-oss-120b API — OpenAI’s open model for less · Smouter","description":"The official gpt-oss-120b weights, OpenAI-compatible and routed to the cheapest healthy host — live per-token pricing.","image":"https://smouter.ai/brand/og/gpt-oss-120b.be6215c4.jpg"},"/request-invite":{"title":"Get started · Smouter","description":"Create a key, point your SDK at api.smouter.ai and ship — free to start, pay per token.","image":"https://smouter.ai/brand/og/get-started.0048b129.jpg"},"/about":{"title":"About · Smouter","description":"Why we built Smouter — an OpenAI-compatible gateway that makes every token cheaper without changing your co
118de.","image":"https://smouter.ai/brand/og/about.e3331344.jpg"},"/contact":{"title":"Contact · Smouter","description":"Get in touch with the Smouter team — sales, support, partnerships and press.","image":"https://smouter.ai/brand/og/contact.d7b980a7.jpg"},"/blog":{"title":"Blog · Smouter","description":"Notes from the Smouter team on routing, model pricing and shipping cheaper AI.","image":"https://smouter.ai/brand/og/blog.e18966a8.jpg"},"/privacy":{"title":"Privacy · Smouter","description":"How Smouter handles your data — privacy policy.","image":"https://smouter.ai/brand/og/legal.826b9595.jpg"},"/terms":{"title":"Terms · Smouter","description":"Smouter terms of service.","image":"https://smouter.ai/brand/og/legal.826b9595.jpg"},"/data-processing":{"title":"Data processing · Smouter","description":"How Smouter processes request data across providers — data processing terms.","image":"https://smouter.ai/brand/og/legal.826b9595.jpg"},"/support/articles/create-api-key":{"title":"Create and manage API keys · Smouter support","description":"Mint a key, scope it with allowlists and caps, and rotate it safely.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/value-vs-verified-lanes":{"title":"Value vs verified lanes · Smouter support","description":"What the two lanes mean, what they cost, and when to use each.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/credits-and-top-ups":{"title":"Credits and top-ups · Smouter support","description":"Prepaid credits, per-token billing at live rates, and your ledger.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/understand-your-usage":{"title":"Understand your usage and charges · Smouter support","description":"Reading the Usage page, request ids, and what to send support.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/rate-limits-and-tpm":{"title":"Rate limits and TPM caps · Smouter support","description":"Platform limits, per-key tokens-per-minute caps, and handling 429s.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/caching":{"title":"How response caching works · Smouter support","description":"Exact and prefix cache hits: lower latency and cost, visible per request.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/batches":{"title":"Batch processing · Smouter support","description":"Submit asynchronous request batches at a discounted rate.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/report-an-incident":{"title":"Is Smouter down? Reporting an incident · Smouter support","description":"Check live status first, then what to include so we can trace fast.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/report-abuse":{"title":"Report abuse or misuse · Smouter support","description":"How to flag spam, fraud, or misuse of the platform.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/security-disclosure":{"title":"Report a security vulnerability · Smouter support","description":"Responsible disclosure goes to [email protected], ahead of the queue.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"},"/support/articles/organizations":{"title":"Organizations, members and roles · Smouter support","description":"Share Smouter with a team
118: invitations, roles, org keys and SSO.","image":"https://smouter.ai/brand/og/support.3107bc5c.jpg"}}</script>
118
119</head>
120  <body>
121    <div id="root"><div class="lv3" data-theme="light"><a class="site-skip" href="#book">Skip to content</a><header class="site-nav"><div class="site-nav__in"><a class="site-brand" aria-label="Smouter home" href="/"><svg width="28" height="28" viewBox="0 0 32 32" aria-hidden="true" class="lv3-mark"><mask id="lv3mark-R5a"><rect width="32" height="32" fill="#fff"></rect><circle cx="21" cy="11" r="1.1" fill="#000"></circle><circle cx="11" cy="21" r="1.1" fill="#000"></circle></mask><rect class="lv3-mark__tile" width="32" height="32" rx="8"></rect><rect class="lv3-mark__edge" x="0.5" y="0.5" width="31" height="31" rx="7.5" fill="none"></rect><g mask="url(#lv3mark-R5a)"><path class="lv3-mark__route" d="M21 11 C21 8 11 8 11 12 C11 15 21 17 21 20 C21 24 11 24 11 21" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path><circle class="lv3-mark__node" cx="21" cy="11" r="2.6"></circle><circle class="lv3-mark__node" cx="11" cy="21" r="2.6"></circle></g></svg><span>smouter</span></a><nav class="site-nav__links" aria-label="Primary"><a href="/models">Models</a><a href="/pricing">Pricing</a><a href="/docs">Docs</a><a href="/support">Support</a></nav><div class="site-nav__act"><button type="button" class="site-theme" aria-pressed="true" aria-label="Switch to the dark theme" title="Dark theme"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" aria-hidden="true"><circle cx="12" cy="12" r="4.4" stroke="currentColor" stroke-width="1.7"></circle><path d="M12 2.6v2.2M12 19.2v2.2M2.6 12h2.2M19.2 12h2.2M5.4 5.4l1.6 1.6M17 17l1.6 1.6M18.6 5.4 17 7M7 17l-1.6 1.6" stroke="currentColor" stroke-width="1.7" stroke-linecap="round"></path></svg></button><a class="site-nav__quiet" href="/app/login">Sign in</a><a class="site-btn site-btn--solid site-btn--sm" href="/app/signup">Start free <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></div></div><div class="site-nav__rule" aria-hidden="true"></div></header><main><section class="lv3-hero"><div class="lv3-hero__grid" aria-hidden="true"></div><div class="lv3-hero__glow" aria-hidden="true"></div><div class="site-wrap lv3-hero__in"><div class="lv3-hero__copy"><p class="lv3-eyebrow lv3-anim" style="--d:80ms"><span class="lv3-live"></span> AI gateway · one key · 50+ models</p><h1 class="lv3-hero__h1"><span class="lv3-anim" style="--d:160ms">Every model has</span><span class="lv3-anim" style="--d:240ms">a market price.</span><span class="lv3-anim lv3-hero__h1-b" style="--d:340ms">You’ve been paying list.</span></h1><p class="lv3-hero__sub lv3-anim" style="--d:440ms">Smouter is an OpenAI- and Anthropic-compatible AI gateway. Every request is shopped across a benchmarked pool of providers serving the same weights, then bought at the floor that actually holds — same models, same code, <strong>up to 50% under OpenRouter</strong>.</p><div class="lv3-hero__ctas lv3-anim" style="--d:540ms"><a class="site-btn site-btn--solid" href="/app/signup">Start free <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a href="#book" class="site-btn site-btn--line">Watch a request get priced</a></div><ul class="lv3-hero__ticks lv3-anim" style="--d:620ms"><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>OpenAI &amp; Anthropic SDKs</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>50+ models, one key</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>
121chat · image · audio · embeddings</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>free to start</li></ul></div><div class="lv3-hero__side lv3-anim" style="--d:420ms"><div class="lv3-card lv3-diff"><div class="lv3-card__bar"><span class="lv3-dots" aria-hidden="true"><i></i><i></i><i></i></span><span class="lv3-card__file">app.py</span><span class="lv3-card__note">one line</span></div><pre class="lv3-diff__pre"><code><span class="lv3-l"><span class="lv3-k">from</span> openai <span class="lv3-k">import</span> <span class="lv3-fn">OpenAI</span></span><span class="lv3-l"></span><span class="lv3-l">client = <span class="lv3-fn">OpenAI</span>(</span><span class="lv3-l lv3-l--del"><span class="lv3-sign">-</span>  base_url=<span class="lv3-str">&quot;https://api.openai.com/v1&quot;</span>,</span><span class="lv3-l lv3-l--add"><span class="lv3-sign">+</span>  base_url=<span class="lv3-str">&quot;https://api.smouter.ai/v1&quot;</span>,</span><span class="lv3-l">   api_key=<span class="lv3-str">&quot;sk-smouter-…&quot;</span>,</span><span class="lv3-l">)</span></code></pre><div class="lv3-diff__foot"><span class="lv3-diff__model">gpt-5.5</span><span class="lv3-diff__was">$1.25</span><svg width="20" height="10" viewBox="0 0 20 10" fill="none" aria-hidden="true"><path d="M0 5h17M13 1.5 17 5l-4 3.5" stroke="currentColor" stroke-width="1.4"></path></svg><span class="lv3-diff__now">$0.61</span><span class="lv3-diff__unit">/ 1M in</span></div></div></div></div><a class="lv3-cue" href="#book" aria-label="Scroll to the order book"><span class="lv3-cue__line"></span>scroll</a></section><section class="lv3-scene lv3-scene--book" id="book"><div class="lv3-stage"><div class="site-wrap lv3-book"><header class="lv3-book__head"><p class="lv3-eyebrow">Scene one · the spread</p><h2 class="lv3-h2">The floor is not the cheapest quote.<br/>It’s the cheapest one that’s real.</h2></header><div class="lv3-book__body"><div class="lv3-ladder"><div class="lv3-ladder__bar"><span class="lv3-ladder__model">gpt-5.5</span><span class="lv3-ladder__unit">USD / 1M input tokens</span><span class="lv3-ladder__count">9<!-- --> quotes</span></div><div class="lv3-ladder__rows" style="--fillrow:6"><span class="lv3-scan" aria-hidden="true"></span><span class="lv3-fill" aria-hidden="true"><span class="lv3-fill__tag">fill</span></span><div class="lv3-row is-list" style="--i:0;--t:1.000;--w:1.000"><span class="lv3-row__who">model maker<em>list</em></span><span class="lv3-row__lat">0.9s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">1.25</span></div><div class="lv3-row" style="--i:1;--t:0.789;--w:0.880"><span class="lv3-row__who">node A-17</span><span class="lv3-row__lat">1.1s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">1.10</span></div><div class="lv3-row" style="--i:2;--t:0.563;--w:0.752"><span class="lv3-row__who">node C-04</span><span class="lv3-row__lat">1.0s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">0.94</span></div><div class="lv3-row" style="--i:3;--t:0.479;--w:0.704"><span class="lv3-row__who">node K-22</span><span class="lv3-row__lat">1.4s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">0.88</span></div><div class="lv3-row" style="--i:4;--t:0.254;--w:0.576"><span class="lv3-row__who">node F-09</span><span class="lv3-row__lat">1.2s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">0.72</span></div><div class="lv3-row" style="--i:5;--t:0.211;--w:0.552"><span class="lv3-row__who">node B-31</span><span class="lv3-row__lat">0.9s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">0.69</span></div><div class="lv3-row is-fill" style="--i:6;--t:0.099;--w:0.488"><span class="lv3-row__who">node M-06</span><span class="lv3-row__lat">1.0s</span><span class="lv3-row__bar"><i></i></span><span class="lv3-row__px">0.61</span></div><div class="lv3-row is-out" style="--i:7;--t:0.056;--w:0.464"><span class="lv3-row__who">node Q-13</span><span class="lv3-row__lat">2.8s</span><span class="lv3-row__bar"><i></i><span class="lv3-row__x">weights drifted</span></span><span class="lv3-row__px">0.58</span></div><div class="lv3-row is-out" style="--i:8;--t:0.000;--w:0.432"><span class="lv3-row__who">node Z-02</span><span class="lv3-row__lat">—</span><span class="lv3-row__bar"><i></i><span class="lv3-row__x">never served</span></span><span class="lv3-row__px">0.54</span></div></div></div><aside class="lv3-quote">
121<p class="lv3-quote__cap">You pay</p><p class="lv3-quote__px"><em>$</em><span>1.25</span></p><p class="lv3-quote__unit">per 1M input tokens · <!-- -->gpt-5.5</p><div class="lv3-quote__rule"></div><dl class="lv3-quote__meta"><div><dt>List price</dt><dd>$<!-- -->1.25</dd></div><div><dt>Quotes struck</dt><dd>2 of <!-- -->9</dd></div></dl><p class="lv3-quote__save"><span>0</span>% cheaper than list</p></aside></div><p class="lv3-book__foot">Prices illustrate a real spread. The two struck quotes are the reason Smouter is not a price-sorted list: one node’s weights no longer match the reference, the other advertises a price it has never served.</p></div></div></section><section class="lv3-band"><div class="site-wrap lv3-notes"><div class="lv3-note" data-rise="true" style="--d:0ms"><span class="lv3-note__n">01</span><h3>Probed, not trusted</h3><p>Every node is fingerprinted against the reference weights and benchmarked for latency and error rate — continuously, not at onboarding.</p></div><div class="lv3-note" data-rise="true" style="--d:90ms"><span class="lv3-note__n">02</span><h3>Bait priced out</h3><p>A quote nobody honours is not a price. Nodes that advertise low and fail to serve are demoted before they can anchor yours.</p></div><div class="lv3-note" data-rise="true" style="--d:180ms"><span class="lv3-note__n">03</span><h3>Re-shopped per request</h3><p>The floor moves through the day. Smouter re-quotes on every call, so you ride it down instead of pinning one contract.</p></div><p class="lv3-more" data-rise="true"><a href="/models">See every model and what it costs<!-- --> <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></p></div></section><section class="lv3-scene lv3-scene--layers" id="layers"><div class="lv3-stage"><div class="site-wrap lv3-layers"><header class="lv3-layers__head"><p class="lv3-eyebrow">Scene two · the stack</p><h2 class="lv3-h2">Four layers between your prompt and the bill.</h2></header><div class="lv3-layers__body"><div class="lv3-deck"><article class="lv3-lcard" style="--i:0;--s:0.080;--z:1"><div class="lv3-lcard__top"><span class="lv3-lcard__n">01</span><span class="lv3-lcard__badge">optional</span><span class="lv3-lcard__cut">−20%</span></div><h3>Route to the model that can actually do it</h3><p>Most prompts do not need your most expensive model. Smouter grades each one and sends it to the cheapest model that still nails it — or you name the model yourself and skip this entirely.</p></article><article class="lv3-lcard" style="--i:1;--s:0.280;--z:2"><div class="lv3-lcard__top"><span class="lv3-lcard__n">02</span><span class="lv3-lcard__badge">optional</span><span class="lv3-lcard__cut">−11%</span></div><h3>Send fewer tokens for the same answer</h3><p>Prompts are trimmed and compressed before they reach a model. You pay for the tokens that carried meaning, not the ones that carried habit.</p></article><article class="lv3-lcard" style="--i:2;--s:0.480;--z:3"><div class="lv3-lcard__top"><span class="lv3-lcard__n">03</span><span class="lv3-lcard__badge">always on</span><span class="lv3-lcard__cut">−27%</span></div><h3>Buy at the floor</h3><p>For whichever model you land on, the request goes to the lowest-cost node that passed its probe. This is the layer the order book above describes.</p></article><article class="lv3-lcard" style="--i:3;--s:0.680;--z:4"><div class="lv3-lcard__top"><span class="lv3-lcard__n">04</span><span class="lv3-lcard__badge">on by default</span><span class="lv3-lcard__cut">−13%</span></div><h3>Never pay twice for the same answer</h3><p>Exact and near-exact repeats return in milliseconds at a fraction of the price. Send one header when you need a genuinely fresh call.</p></article></div><aside class="lv3-meter"><p class="lv3-meter__cap">Monthly bill</p><p class="lv3-meter__was">was<!-- --> <em>$4,200<span></span></em></p><p class="lv3-meter__now"><span>$4,200</span></p><p class="lv3-meter__cut"><span>0</span>% off the same workload</p><p class="lv3-meter__fine">Illustrative. Layers 01 and 02 are opt-in; 03 and 04 run on every account.</p></aside></div></div></div></section><section class="lv3-scene lv3-scene--rail" id="surfaces"><div class="lv3-stage"><div class="lv3-rail"><div class="site-wrap lv3-rail__head"><p class="lv3-eyebrow">Scene three · one key</p><h2 class="lv3-h2">Everything you’d otherwise buy from four vendors, on one wallet.</h2></div><div class="lv3-rail__track" style="--n:8"><article class="lv3-scard" style="--i:0"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 5h13a3 3 0 0 1 3 3v5a3 3 0 0 1-3 3H9l-5 4V8a3 3 0 0 1 3-3Z" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Chat &amp; completions</h3><p class="lv3-scard__tag">openai · anthropic</p><p class="lv3-scard__body">Streaming, tool calls, JSON mode. Both SDKs, unchanged.</p></article><article class="lv3-scard" style="--i:1"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 5h16v14H4ZM4 16l4.5-4.5 3 3L16 10l4 4" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Images</h3><p class="lv3-scard__tag">generate &amp; edit</p><p class="lv3-scard__body">Text-to-image and edits on the same key and the same wallet.</p></article><article class="lv3-scard" style="--i:2"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4 10v4M8 6v12M12 3v18M16 7v10M20 10v4" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Audio</h3><p class="lv3-scard__tag">speech ⇄ text</p><p class="lv3-scard__body">Speech synthesis and transcription, billed by the second.</p></article><article class="lv3-scard" style="--i:3"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M6 6h.01M12 6h.01M18 6h.01M6 12h.01M12 12h.01M18 12h.01M6 18h.01M12 18h.01M18 18h.01" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Embeddings</h3><p class="lv3-scard__tag">vectors</p><p class="lv3-scard__body">Batch-friendly embedding models for search and retrieval.</p></article><article class="lv3-scard" style="--i:4"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M11 4a7 7 0 1 0 0 14 7 7 0 0 0 0-14ZM21 21l-4.35-4.35" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Web search</h3><p class="lv3-scard__tag">grounded</p><p class="lv3-scard__body">
121Ground any model in fresh results with one flag. No second vendor.</p></article><article class="lv3-scard" style="--i:5"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M12 3 3 7.5 12 12l9-4.5ZM3 12l9 4.5L21 12M3 16.5 12 21l9-4.5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Batch</h3><p class="lv3-scard__tag">async · cheaper</p><p class="lv3-scard__body">Queue large jobs at a lower rate and collect them when they land.</p></article><article class="lv3-scard" style="--i:6"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M9 7V3M15 7V3M6 7h12v3a6 6 0 0 1-12 0ZM12 16v5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>MCP tools</h3><p class="lv3-scard__tag">your servers</p><p class="lv3-scard__body">Attach Model Context Protocol servers so models call your tools.</p></article><article class="lv3-scard" style="--i:7"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M4.5 12h2.5M7 12c4.2 0 3.8-6 10-6M7 12h10M7 12c4.2 0 3.8 6 10 6" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"></path></svg><h3>Programmable routes</h3><p class="lv3-scard__tag">one model id</p><p class="lv3-scard__body">Compose several models into one id your code already calls.</p></article></div></div></div></section><section class="lv3-scene lv3-scene--routes" id="routes"><div class="lv3-stage"><div class="site-wrap lv3-routes"><header class="lv3-routes__head"><p class="lv3-eyebrow">Scene four · programmable routes</p><h2 class="lv3-h2">Wire several models into one id.<br/>Your code never learns about it.</h2></header><div class="lv3-routes__body"><ol class="lv3-pipe"><li class="lv3-pipe__cap lv3-pipe__cap--in"><code>model=&quot;@triage&quot;</code><span>one id your code already calls</span></li><li class="lv3-step" style="--i:0"><span class="lv3-step__dot" aria-hidden="true"></span><span class="lv3-step__name">optimize</span><span class="lv3-step__body">trims the prompt before it costs you</span></li><li class="lv3-step" style="--i:1"><span class="lv3-step__dot" aria-hidden="true"></span><span class="lv3-step__name">guardrail</span><span class="lv3-step__body">stops what should never reach a model</span></li><li class="lv3-step" style="--i:2"><span class="lv3-step__dot" aria-hidden="true"></span><span class="lv3-step__name">fan out</span><span class="lv3-step__body">runs three models on the same input</span><span class="lv3-step__chips"><em style="--j:0">gpt-5.5</em><em style="--j:1">claude opus 4.8</em><em style="--j:2">gemini 3.1 pro</em></span></li><li class="lv3-step" style="--i:3"><span class="lv3-step__dot" aria-hidden="true"></span><span class="lv3-step__name">judge</span><span class="lv3-step__body">a blind judge returns the strongest answer</span></li><li class="lv3-pipe__cap lv3-pipe__cap--out"><code>one receipt</code><span>every stage metered per token — no platform fee on top</span></li></ol><div class="lv3-routes__notes"><div class="lv3-rnote" style="--i:0"><h3>Built in the dashboard</h3><p>Stages compose like chips. No orchestration framework, no second vendor, nothing new to deploy.</p></div><div class="lv3-rnote" style="--i:1"><h3>Metered like any call</h3><p>Each stage is a normal per-token request and the route settles as one receipt. No platform fee on top.</p></div><div class="lv3-rnote" style="--i:2"><h3>Rewired without a release</h3><p>Your code keeps calling the same id. Swap the judge or add a model and nothing ships on your side.</p></div></div></div></div></div></section><section class="lv3-scene lv3-scene--connect" id="connect"><div class="lv3-stage"><div class="site-wrap lv3-connect"><header class="lv3-connect__head"><p class="lv3-eyebrow">Scene five · connect with Smouter</p><h2 class="lv3-h2">Ship an AI app without funding everyone else’s inference.</h2></header><div class="lv3-connect__body"><article class="lv3-panel lv3-panel--app"><div class="lv3-panel__head"><span class="lv3-panel__who">Your app</span><code>app.yourproduct.com</code></div><div class="lv3-oauth"><svg width="18" height="18" viewBox="0 0 32 32" aria-hidden="true" class="lv3-mark"><mask id="lv3mark-Rp9r"><rect width="32" height="32" fill="#fff"></rect><circle cx="21" cy="11" r="1.1" fill="#000"></circle><circle cx="11" cy="21" r="1.1" fill="#000"></circle></mask><rect class="lv3-mark__tile" width="32" height="32" rx="8"></rect><rect class="lv3-mark__edge" x="0.5" y="0.5" width="31" height="31" rx="7.5" fill="none"></rect><g mask="url(#lv3mark-Rp9r)"><path class="lv3-mark__route" d="M21 11 C21 8 11 8 11 12 C11 15 21 17 21 20 C21 24 11 24 11 21" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path><circle class="lv3-mark__node" cx="21" cy="11" r="2.6"></circle><circle class="lv3-mark__node" cx="11" cy="21" r="2.6"></circle></g></svg>Sign in with Smouter</div><dl class="lv3-ledger"><div><dt>You pay for inference</dt><dd class="lv3-ledger__zero">$<!-- -->0.00</dd></div><div class="lv3-ledger__earn"><dt>You earn <em>optional margin</em></dt><dd>+$<span>0.00</span></dd></div></dl></article><div class="lv3-wire" aria-hidden="true"><span class="lv3-wire__line"></span><span class="lv3-wire__out"></span><span class="lv3-wire__back"></span><span class="lv3-wire__tag">oauth + pkce</span></div><article class="lv3-panel lv3-panel--user"><div class="lv3-panel__head"><span class="lv3-panel__who">Your user</span><code>their Smouter wallet</code></div><div class="lv3-consent"><span class="lv3-consent__cap">Spend cap <strong>$25.00 / month</strong></span><span class="lv3-consent__allow"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg> Allowed</span></div><dl class="lv3-ledger"><div><dt>Requests this month</dt><dd><span>0</span></dd></div><div><dt>They pay</dt><dd class="lv3-ledger__spend">$<span>0.00</span></dd></div></dl></article></div><div class="lv3-connect__points"><div class="lv3-cpoint" style="--i:0"><h3>OAuth 2.0 + PKCE</h3><p>The “sign in with” flow your users already trust. Your code keeps using any OpenAI SDK, unchanged.</p></div><div class="lv3-cpoint" style="--i:1"><h3>You pay nothing</h3><p>Inference bills the user who made the call. Set an optional margin and you earn on every one.</p></div><div class="lv3-cpoint" style="--i:2"><h3>Users stay in control</h3><p>They set a spend cap at consent and revoke your access in one click, instantly.</p></div></div><p class="lv3-more" data-rise="true"><a href="/docs/connect">Set it up in your tool — every guide<!-- --> <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true">
121<path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></p></div></div></section><section class="lv3-band lv3-band--lanes" id="lanes"><div class="site-wrap"><header class="lv3-bhead" data-rise="true"><p class="lv3-eyebrow">Two lanes</p><h2 class="lv3-h2">Cheapest by default. First-party on demand.</h2></header><div class="lv3-lanes"><article class="lv3-lane" data-rise="true" style="--d:0ms"><div class="lv3-lane__top"><h3>Value</h3><span>default</span></div><p class="lv3-lane__body">The sourcing pool — many nodes serving the same weights, picked per request on price and health. This is where the discounts live.</p><ul><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Up to 50% under OpenRouter</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Caching and optimization eligible</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Nodes probed continuously</li></ul><code class="lv3-lane__hdr">x-smouter-lane: value</code></article><article class="lv3-lane is-verified" data-rise="true" style="--d:110ms"><div class="lv3-lane__top"><h3>Verified</h3><span>when it has to be first-party</span></div><p class="lv3-lane__body">The model maker’s own endpoint under a zero-retention contract. Nothing stored, cached or replayed; every response carries cache-control: no-store.</p><ul><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Official supply only</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Zero retention</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Flip per key or per request</li></ul><code class="lv3-lane__hdr">x-smouter-lane: verified</code></article></div></div></section><section class="lv3-band lv3-band--proof"><div class="site-wrap"><div class="lv3-proof"><div class="lv3-stat" data-rise="true" style="--d:0ms"><p class="lv3-stat__v">50<em>+</em></p><p class="lv3-stat__k">models behind one key</p></div><div class="lv3-stat" data-rise="true" style="--d:80ms"><p class="lv3-stat__v">1<em></em></p><p class="lv3-stat__k">line of code to change</p></div><div class="lv3-stat" data-rise="true" style="--d:160ms"><p class="lv3-stat__v">50<em>%</em></p><p class="lv3-stat__k">up to, under OpenRouter</p></div><div class="lv3-stat" data-rise="true" style="--d:240ms"><p class="lv3-stat__v">0<em></em></p><p class="lv3-stat__k">subscription, minimum or seat fee</p></div></div><ul class="lv3-guar" data-rise="true"><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Global edge routing, sub-50ms gateway overhead</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Automatic failover the moment a node degrades</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Per-key spend caps, model allowlists and rate limits</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Guardrails on prompts and responses, inbound and outbound</li></ul></div></section><section class="lv3-band lv3-band--price" id="pricing"><div class="site-wrap"><header class="lv3-bhead" data-rise="true"><p class="lv3-eyebrow">Pricing</p><h2 class="lv3-h2">Subscribe, or just pay for the tokens.</h2></header><div class="lv3-plans"><article class="lv3-plan is-hot" data-rise="true" style="--d:0ms"><span class="lv3-plan__flag">Most popular</span><h3>Plus</h3><p class="lv3-plan__px">$20<em>/mo</em></p><p class="lv3-plan__sub">Billed monthly</p><ul><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Every frontier model — GPT, Claude, Gemini, Grok, DeepSeek</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>More usage per dollar than a single-vendor plan</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Runs in any coding agent or IDE</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Chat, image and research included</li></ul><a class="site-btn site-btn--solid" href="/pricing">Subscribe<!-- --> <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true">
121<path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></article><article class="lv3-plan" data-rise="true" style="--d:90ms"><h3>Pro</h3><p class="lv3-plan__px">$50<em>/mo</em></p><p class="lv3-plan__sub">For heavy builders</p><ul><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Everything in Plus</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>About 3× the usage</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Priority routing on busy models</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Verified-lane access</li></ul><a class="site-btn site-btn--line" href="/pricing">Subscribe<!-- --> <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></article><article class="lv3-plan" data-rise="true" style="--d:180ms"><h3>API</h3><p class="lv3-plan__px">Per token<em></em></p><p class="lv3-plan__sub">No subscription</p><ul><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>OpenAI- and Anthropic-compatible</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Chat, image, audio, embeddings and search</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>No minimums, no seats</li><li><svg width="13" height="13" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="m4 12 5.5 5.5L20 6.5" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path></svg>Build your own routes</li></ul><a class="site-btn site-btn--line" href="/models">See model pricing<!-- --> <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a></article></div></div></section><section class="lv3-close"><div class="lv3-close__glow" aria-hidden="true"></div><div class="site-wrap lv3-close__in" data-rise="true"><h2 class="lv3-close__h">Change one line. Keep the rest.</h2><code class="lv3-close__code">base_url=<span>&quot;https://api.smouter.ai/v1&quot;</span></code><div class="lv3-close__ctas"><a class="site-btn site-btn--solid site-btn--lg" href="/app/signup">Start free <svg width="15" height="15" viewBox="0 0 24 24" fill="none" aria-hidden="true"><path d="M5 12h13M13 6.5 18.5 12 13 17.5" stroke="currentColor" stroke-width="2.1" stroke-linecap="round" stroke-linejoin="round"></path></svg></a><a class="site-btn site-btn--line site-btn--lg" href="/models">See every model and price</a></div><p class="lv3-close__fine">No card to start. Your first credit is on us, and nothing renews on its own.</p></div></section></main><footer class="site-foot"><div class="site-wrap site-foot__in"><div class="site-foot__brand"><a class="site-brand" href="/"><svg width="26" height="26" viewBox="0 0 32 32" aria-hidden="true" class="lv3-mark"><mask id="lv3mark-Rlc"><rect width="32" height="32" fill="#fff"></rect><circle cx="21" cy="11" r="1.1" fill="#000"></circle><circle cx="11" cy="21" r="1.1" fill="#000"></circle></mask><rect class="lv3-mark__tile" width="32" height="32" rx="8"></rect><rect class="lv3-mark__edge" x="0.5" y="0.5" width="31" height="31" rx="7.5" fill="none"></rect><g mask="url(#lv3mark-Rlc)"><path class="lv3-mark__route" d="M21 11 C21 8 11 8 11 12 C11 15 21 17 21 20 C21 24 11 24 11 21" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"></path><circle class="lv3-mark__node" cx="21" cy="11" r="2.6"></circle><circle class="lv3-mark__node" cx="11" cy="21" r="2.6"></circle></g></svg><span>smouter</span></a><p>The smarter router. One key, every major model, bought at the floor.</p></div><nav aria-label="Product"><h3>Product</h3><ul><li><a href="/models">Models</a></li><li><a href="/pricing">Pricing</a></li><li><a href="/docs/connect">Connect</a></li><li><a href="/status">Status</a></li></ul></nav><nav aria-label="Developers"><h3>Developers</h3><ul><li><a href="/docs">Docs</a></li><li><a href="/docs">API reference</a></li><li><a href="/support">Support</a></li><li><a href="/blog">Changelog</a></li></ul></nav><nav aria-label="Company"><h3>Company</h3><ul><li><a href="/about">About</a></li><li><a href="/blog">Blog</a></li><li><a href="/contact">Contact</a></li><li><a href="/privacy">Privacy</a></li></ul></nav></div><div class="site-wrap site-foot__base"><span>© <!-- -->2026<!-- --> Smouter</span><span><a href="/terms">Terms</a><a href="/privacy">Privacy</a><a href="/status">Status</a></span></div></footer></div></div>
122  </body>
123</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.