Back to guides
API providers·September 18, 2026·Updated September 21, 2026·7 min read

Best API for SillyTavern: Model Choice, Context and Monthly Cost

SillyTavern costs nothing to run; the model endpoint is the entire bill. Compare models by cost per turn, then decide where direct, gateway, flat-rate or local wins.

Last reviewed on .

SillyTavern sells no API and no subscription, so choosing the best API for SillyTavern is a model-and-provider purchase — and the deciding number is the cost of one turn at your Context Size, not the headline price per million tokens. SillyTavern re-sends the character card, system prompt and as much history as fits on every generation, so the bill grows with the conversation even though the rate never changes.

Release 1.19.0 was published on September 14, 2026 under AGPL-3.0, and the repository's last push was September 14, 2026 (checked September 18, 2026). Two things that are not SillyTavern: TavernAI, the separate ancestor project — the docs date SillyTavern to "February 2023 as a fork of TavernAI 1.2.8" — and SillyTavern-Extras, whose repository description now begins "[OBSOLETE]". Tutorials that tell you to install Extras are stale.

What is free and what is not

What you are buyingPriceSource
SillyTavern, every platform$0, AGPL-3.0, no paid tier and no hosted service sold by the projectThe documentation states it "will always be free and open-sourced"
Something to run it onNode.js 20 or newerpackage.json declares "engines": { "node": ">= 20" }
The model that writes the repliesThis is the entire recurring billThe docs call it "a locally installed user interface that allows you to interact with text generation LLMs"
Third-party "SillyTavern hosting" or paid mobile appsSomeone else's productsillytavern.app publishes no price of any kind

Sources checked September 18, 2026: the project repository and the official FAQ. The FAQ divides backends into self-hosted models that are free to run and paid web services that, in its words, "cost money to use."

How a SillyTavern chat generates its bill

SillyTavern's Context Size documentation defines the setting as the maximum number of tokens SillyTavern will send to the API as the prompt, minus the response length, and says the context "comprises character information, system prompts, chat history, etc." Messages above the dotted line in the chat are simply not sent, rather than summarised. So one turn costs roughly context tokens × input rate + reply tokens × output rate, and a regenerated reply pays the input side again in full.

The default Chat Completion context is 4,095 tokens, set in the shipped defaults (read on September 18, 2026); the slider raises it by orders of magnitude, and further again with unlocked context. Context Size is therefore the largest budget control in the application: quadrupling it roughly quadruples the input charge on every subsequent message at the same rate.

Model shortlist and what each one costs

USD per million input / output tokens: current Kunavo catalog rates beside the vendor's own published list price, all checked September 18, 2026.

ModelKunavo: in / outVendor list: in / outWhere it fits
GPT-5.6 Luna$0.07 / $0.42$0.20 / $1.20The lowest-priced row here — for high turn counts where prose quality is not the binding constraint
Gemini 3.7 Flash$0.525 / $2.625$0.75 / $3.75 to Dec 31, 2026; $1.50 / $7.50 afterA cheap non-Claude voice, useful for a second opinion on the same character card
Claude Haiku 4.5$0.40 / $2.00$1.00 / $5.00The cheap Claude for long sessions where per-turn input dominates
Claude Sonnet 5$2.00 / $10.00$2.00 / $10.00Everyday balance of quality and per-turn cost
Claude Opus 5$2.00 / $10.00$5.00 / $25.00Higher Claude tier; compare its row before assuming it costs more
Claude Fable 5.1$7.00 / $35.00$10.00 / $50.00The most expensive per turn in this table, at both catalog and list price

Vendor prices come from Anthropic's pricing page, OpenAI's developer pricing and Google's Gemini API pricing. The Gemini row carries a promotional rate with a stated end date, so the number that applies to you after 2026 is the higher one; confirm it on Google's page rather than budgeting from a promotional figure. Claude Sonnet 5 is listed here at the vendor's own rate, which is parity rather than a saving.

At the rates above, Claude Opus 5 and Claude Sonnet 5 currently cost the same per token on this catalog, so choosing between them is a question of how each one writes, not of budget.

A worked monthly estimate

Assume 100 generations in a month, a prompt that has grown to about 16,000 tokens, 300-token replies, and no re-rolls. That is 1.6 million input tokens and 30,000 output tokens. At the catalog rates above:

ModelEstimated total for 100 turns
GPT-5.6 Luna$0.12
Gemini 3.7 Flash$0.92
Claude Haiku 4.5$0.70
Claude Sonnet 5$3.50
Claude Fable 5.1$12.25

This is token arithmetic on assumed numbers, not a measured session and not a ceiling on what you will be charged. Change any assumption and the answer moves: raising Context Size, re-rolling replies, or running 500 turns instead of 100 all scale the input side. It also excludes cache charges, which the next section is about.

The cache gap that decides a long chat

This is the part that is invisible from inside the UI. In the 1.19.0 release branch of its chat-completions backend (read on September 18, 2026), every cache_control marker sits behind a built-in-source check: the Claude source, the ElectronHub source for claude- model IDs, the OpenRouter source for anthropic/claude model IDs, the OpenRouter source again for google/gemini IDs it finds cacheable, and a NanoGPT flag. The Custom (OpenAI-compatible) branch is in none of those checks and sets no cache_control field of any kind — what it does set is logprobs, a response_format if you configured a JSON schema, your Include Headers and Include Body Parameters, and reasoning_effort or verbosity where you asked for them. Nor is there a custom: section in the shipped configuration, where the claude: and gemini: caching switches live.

The consequence is specific to Anthropic's protocol: the Custom source never sets a cache_control marker, so on a Claude model the whole history is re-billed at full input price every turn unless the endpoint inserts the breakpoints itself. It does not follow that nothing caches on this path. OpenAI's prompt caching is enabled by default for supported models and asks nothing of the client, so a GPT route through the same Custom source can cache while a Claude route does not. Caching is decided by the model and the endpoint, not by what SillyTavern sends. Kunavo's OpenAI-to-Anthropic translation does insert them — on the tools and system blocks, plus a rolling breakpoint on the final message once the conversation already contains an assistant turn, which is the shape of a SillyTavern chat after turn one. It needs 8,192 characters of prompt before it engages and it never exceeds the vendor's four-breakpoint cap. Details in the caching documentation, which is written for callers setting breakpoints themselves.

What that is worth, as a best case rather than a forecast: if 12,000 of those 16,000 prompt tokens were read from cache each turn at Kunavo's cache-read rate for Claude Sonnet 5 ($0.20 per million), the same 100 turns would come to about $1.34 instead of $3.50. Treat that as the largest saving available, not a ceiling on what you will pay: it assumes a cache hit on every turn and counts no cache writes, so a real bill lands above it. Anthropic prices a cache read at 0.1× base input (0.025× on Fable 5.1) but a cache write at 1.25× for a five-minute window — a roleplayer who takes longer than that between messages pays the write again instead of the read. Anthropic also sells a one-hour write at 2×. No live SillyTavern session was billed through the gateway for this guide, so check the reported usage on your own first long chat before budgeting on cache hits.

When direct, a gateway, a subscription or local wins

RouteBuy it whenThe tradeoff
Direct vendor (Anthropic, OpenAI, Google)You want one vendor and SillyTavern's built-in source for itThe built-in Claude source exposes caching settings the Custom source has no code path for; one account per vendor
Multi-model gatewayYou want Claude, GPT and Gemini IDs behind one key and one balanceSillyTavern speaks plain OpenAI chat to it, so the provider-specific controls it exposes stay on the built-in sources
Flat-rate open-weight hostYou chat daily and want a predictable monthly numberCheck what the tier caps: Arli AI's plans are separated by maximum context length, the exact resource a long chat consumes
Free hostedTrying the app out, or chats that tolerate a queuePriority and rate limits instead of a bill
Local modelYou have the hardware and want no content filter and no keyYour machine, your maintenance, your quality ceiling

Concrete numbers, checked September 18, 2026. OpenRouter passes through provider prices and charges 5.5% (minimum $0.80) on card credit purchases, with free models limited to 50 requests a day, or 1,000 after buying at least $10 in credits. NanoGPT sells pay-as-you-go plus an optional $12-per-month subscription, with a minimum deposit of $0.10 in crypto or $1 by card. Arli AI runs a free tier plus $10, $15, $20, $30 and $160 monthly tiers, which differ by maximum context length (12K on free up to 512K on the top tier), model size and parallel requests; Infermatic lists a free plan plus $9, $16 and $20; Featherless lists Chat at $25 a month and Developer at $50. AI Horde describes itself as "Free · community run · open source"; its FAQ explains that queue position follows your total kudos balance and that anonymous users start at zero, so registered users rank above them. Google publishes a free Gemini tier, but its rate-limit page lists no free-tier per-model numbers and points you to AI Studio instead, so treat any specific free-tier quota you read elsewhere as unverified.

Kunavo has no free tier and no signup credit: the minimum is $10 in prepaid credit, with no subscription and a balance that does not expire. A catalog estimate is not a price ceiling either — see billing for how a charge is settled.

Content rules come before price

SillyTavern's own FAQ says paid web services "are often censored and will refuse to chat with you about certain subjects." That is first-party, and it is the right expectation to set. Anthropic's Usage Policy prohibits erotic chat and sexually explicit generation, with no exception for adult users, and a gateway does not alter the policy the model is served under — Kunavo's own policy says upstream provider policies apply to what you send. Nothing on this page should be read as offering an unfiltered endpoint. If unrestricted adult roleplay is your requirement, the honest answer is a local model or an open-weight host, and the model shortlist above is not the right shelf.

Configure it, then control the bill

The documented path is Chat Completion → Custom (OpenAI-compatible), filling Custom Endpoint (Base URL) and Custom API Key. Do not append /chat/completions; add /v1 if the connection fails. Four things worth knowing before your first long chat:

  1. Sampling parameters go out unless the model ID is on a strip list. The front-end request builder puts temperature, top_p, frequency_penalty and presence_penalty into every Chat Completion request. In the 1.19.0 release branch it then deletes those four plus top_k for any model ID matching claude-fable, claude-opus-5 or claude-sonnet-5 — that rule is keyed on the model ID with no source check, so it fires on the Custom source too. It does not cover Claude Haiku 4.5, and the comparable GPT-5 rule beside it runs only for the built-in OpenAI, Azure and OpenRouter sources, so those IDs still carry sampling fields through a custom endpoint. Kunavo's catalog separately marks temperature, top_p and top_k as unsupported on the Claude 5 models listed above and removes them before the upstream call; on an endpoint that does not, blank them through Exclude Body Parameters in the Additional Parameters drawer, or a model that rejects those fields answers with a 400.
  2. Start Prompt Post-Processing at None. Anthropic's Messages API combines consecutive same-role turns itself and has no system role, so a translating gateway lifts system messages to the top-level parameter. SillyTavern's docs define None as "no explicit processing applied unless strictly required by the API", Semi-strict as merging roles and allowing only one optional system message, and Strict as additionally requiring a user message first — so if you see a 400 about message roles, move up to Semi-strict. Note that Merge, Semi-strict and Strict also remove tool calls unless you pick the "with tools" variant.
  3. The token counter is an estimate. SillyTavern's tokenizer documentation says counts are "estimated based on the selected tokenizer type" whenever the backend does not supply one, and its Best-match rules name specific vendors rather than an arbitrary custom endpoint. Anthropic states that Claude 4.7 and later models use a newer tokenizer producing "approximately 30% more tokens for the same text", so a count produced by an older tokenizer reads low against what those models bill.
  4. The Reverse Proxy drawer is a different feature. Its warning block in the shipped UI is scoped to the built-in sources (data-source="openai,claude,mistralai,…") and reads "ANY support requests will be REFUSED if you are using a proxy." The docs page of that name is about putting SillyTavern itself behind Traefik, NGINX or Caddy, which is a different subject again. The Custom source is the supported path and is not that drawer.

Kunavo publishes a SillyTavern setup guide with the exact field values — a written configuration, not a runtime compatibility test run on your behalf. If the rates above fit your chats, create an account and start with the $10 minimum rather than a subscription.

FAQ

How much does SillyTavern cost?

SillyTavern itself costs nothing. It is AGPL-3.0 software you install and run locally; release 1.19.0 was published on September 14, 2026, and the project's documentation says it “will always be free and open-sourced”. What costs money is the model API it connects to, billed per token by whichever provider you choose, or the hardware and electricity if you run a model locally. A page advertising a price for SillyTavern is selling hosting or an API subscription, not the application.

What is the cheapest API for SillyTavern?

Routes that produce no bill at all include local inference (KoboldCpp, llama.cpp, Ollama, Oobabooga) and AI Horde, a volunteer-run service SillyTavern reaches out of the box, where the trade is queue priority rather than money; some vendors also publish a free tier of their own. Among paid endpoints, the cheapest listed rate and the cheapest finished chat are different claims: SillyTavern re-sends the entire prompt on every generation, so a low per-token rate on a model that needs several re-rolls can cost more than a dearer model that lands the reply first time. Compare cost per turn at your actual Context Size, not the headline rate.

What is the best model for SillyTavern?

This page ranks no model for prose quality, because it measured none — choose by the constraint you can actually price, which is cost per turn. For the lowest cost per turn on long chats, look at a cheap tier such as Claude Haiku 4.5 or GPT-5.6 Luna. For an everyday balance, Claude Sonnet 5 or Claude Opus 5. Claude Fable 5.1 is the most expensive per turn of the models compared on this page, so it is only worth it if you can tell the difference in your own chats. SillyTavern 1.19.0's release notes record added backend support for Claude Fable 5 and 5.1, Claude Opus 4.8 and 5, Claude Sonnet 5 and the GPT-5.6 models, so its built-in Anthropic and OpenAI sources already know those IDs.

Does SillyTavern work with a custom OpenAI-compatible API?

Yes, and it is a documented first-class path rather than a workaround. Set API to Chat Completion, set Chat Completion Source to Custom (OpenAI-compatible), then fill Custom Endpoint (Base URL) and Custom API Key. SillyTavern's documentation says not to add the /chat/completions suffix to the base URL and to try adding /v1 if the connection fails. If the endpoint implements GET /v1/models, the Available Models dropdown fills itself; otherwise you type the model ID by hand.

Why does the SillyTavern bill grow as a chat gets longer?

Because the prompt grows. SillyTavern sends the character card, system prompt and as much chat history as fits within Context Size on every single generation, so turn 200 bills far more input than turn 2 at the same per-token rate. Prompt caching is the lever that changes this, but in the 1.19.0 release branch every cache_control SillyTavern sends is gated on a built-in source: its own Claude source, its ElectronHub source for claude-* model IDs, its OpenRouter source for anthropic/claude model IDs and for cacheable google/gemini ones, and a NanoGPT-specific flag. The Custom (OpenAI-compatible) source is not among them, so on a custom endpoint the caching has to come from the endpoint itself.

Can I use a paid API for uncensored roleplay?

Not from the frontier vendors. SillyTavern's own FAQ warns that paid web services are often censored and will refuse certain subjects, and Anthropic's Usage Policy prohibits erotic chat and sexually explicit generation outright. Routing the same request through a gateway does not change the policy the model is served under, and Kunavo's acceptable use policy states that upstream provider policies apply to content sent through it. If unrestricted adult content is the requirement, that decision belongs with local models or open-weight hosts, not with a Claude, GPT or Gemini endpoint.

SillyTavern release status, documentation, shipped source and competitor prices checked September 18, 2026. Kunavo rates are read from the live catalog; all totals here are token arithmetic on stated assumptions, not measured sessions.