chatbotapis.comGuide
LLM API Pricing: What You Pay Per Token, With Examples
This API charges $0.15 per 1M input tokens and $0.50 per 1M output tokens, from prepaid credit. Below is how that turns into real bills for chatbots, long documents and batch jobs.

The price table
LLM API pricing on this site has two numbers. You pay for tokens you send (input) and tokens the model writes back (output), billed from credit you topped up in advance. There is no monthly fee, no seat count and no minimum usage.
| Item | Price |
|---|---|
| Input tokens | $0.15 per 1M |
| Output tokens | $0.50 per 1M |
| Subscription | None, pay as you go |
| Failed or refused requests | Not charged |
| Credit expiry | Never |
Output costs a little over three times as much as input ($0.50 divided by $0.15 is 3.33). That ratio drives most cost decisions: a long prompt with a short answer is cheap, a short prompt that asks for a long story costs more per request. The model ID is uncensored and the current list is on the pricing page.
How a token turns into dollars
A token is a piece of a word. English text averages somewhere around three-quarters of a word per token, but the exact count depends on the text, so read it from the response rather than guessing. Every response includes a usage object with prompt_tokens and completion_tokens. The cost of one call is:
cost = prompt_tokens x 0.15 / 1,000,000 + completion_tokens x 0.50 / 1,000,000
Here is a small script that prints the cost of a real call:
from openai import OpenAI
client = OpenAI(base_url="https://api.chatbotapis.com/v1", api_key="YOUR_KEY")
IN_PRICE = 0.15 / 1_000_000 # dollars per input token
OUT_PRICE = 0.50 / 1_000_000 # dollars per output token
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise the plot of Hamlet in 100 words."}],
)
u = resp.usage
cost = u.prompt_tokens * IN_PRICE + u.completion_tokens * OUT_PRICE
print(u.prompt_tokens, u.completion_tokens, round(cost, 6))The prompt includes everything you send: the system message, the whole chat history and the new user message. Many people forget the history. Each turn resends all earlier turns, so input tokens grow as the conversation gets longer.
Worked examples
A support or companion chatbot
One request with 2,000 input tokens and 500 output tokens: 2,000 x $0.15 / 1M = $0.0003 and 500 x $0.50 / 1M = $0.00025, so $0.00055 per request. At 1,000 requests that is $0.55. At 100,000 requests it is $55.
An output-heavy writing tool
A prompt of 500 tokens that returns a 3,000-token story: 500 x $0.15 / 1M = $0.000075 and 3,000 x $0.50 / 1M = $0.0015, so $0.001575 per story. A thousand stories cost $1.575, about $1.58.
A full-window document job
The context window is 100,000 tokens for prompt plus completion. A prompt of 100,000 tokens would leave no room for an answer, so take 99,000 input and 1,000 output: 99,000 x $0.15 / 1M = $0.01485 and 1,000 x $0.50 / 1M = $0.0005, so $0.01535 per call. Feeding a whole long document is a cent or two, not a budget problem.
A batch classifier
20,000 items, each 300 tokens in and 20 tokens out. Input is 6,000,000 tokens, or 6 x $0.15 = $0.90. Output is 400,000 tokens, or 0.4 x $0.50 = $0.20. Total $1.10.
Top-ups, bonuses and the trial
You fund the account with any whole amount from $20 to $500. Larger payments carry a bonus on top of the credit:
| Top-up | Bonus | Credit you get |
|---|---|---|
| $20 | none | $20.00 |
| $50 | +5% | $52.50 |
| $100 | +10% | $110.00 |
| $200 | +15% | $230.00 |
| $500 | +15% | $575.00 |
The minimum $20 covers about 36,000 chatbot requests of the 2,000 in, 500 out size above ($20 divided by $0.00055). Payment is by card (Visa, Mastercard, Apple Pay, Google Pay) or crypto (USDT on TRC20, USDC on Base).
New users can try the service first. After sign-up with Google or with email and password, one click on the API key page claims $0.50 of trial credit, one per person, valid for 7 days, no card needed. At $0.00055 per request, $0.50 buys roughly 900 requests of the chatbot size, which is plenty to test a prompt. A trial key allows 2 concurrent requests and 60 per minute.
How chat history inflates input
The surprise in most first invoices is history. A chat completion call is stateless, so each turn carries every earlier message. Take a chat with a 400-token system prompt where every exchange adds 100 user tokens and 300 reply tokens. The reply is 300 tokens each time, but the input keeps growing:
| Turn | Input tokens | Output tokens | Cost of that turn |
|---|---|---|---|
| 1 | 500 | 300 | $0.000225 |
| 5 | 2,100 | 300 | $0.000465 |
| 10 | 4,100 | 300 | $0.000765 |
Add the ten turns together and the conversation sends 23,000 input tokens and receives 3,000 output tokens. That is 23,000 x $0.15 / 1M = $0.00345 plus 3,000 x $0.50 / 1M = $0.0015, so $0.00495 for the whole chat. A thousand such conversations cost $4.95. Long chats stay affordable at these rates, but the growth is quadratic in the number of turns, so a 100-turn session behaves very differently from a 10-turn one unless you trim old messages.
Estimate your own monthly cost
You can budget in four steps.
- Log one realistic request and read
prompt_tokensandcompletion_tokensfrom the response. - Multiply by the number of requests you expect per month.
- Apply $0.15 per 1M to the input total and $0.50 per 1M to the output total.
- Add a margin of 20% for retries from your own code, longer chats and test traffic.
Example: 800 requests a day over 30 days is 24,000 requests. At $0.00055 each that is $13.20, and with the 20% margin $15.84. A $20 top-up covers that month with credit left over.
Things that change your bill
Four habits account for most of the difference between a cheap month and an expensive one.
- Long history. A chat that carries 20,000 tokens of history pays $0.003 of input on every turn (20,000 x $0.15 / 1M). Summarise or trim old turns.
- Verbose answers. Output is the pricier side. Ask for short replies and set
max_tokenswhere a cap makes sense. It is optional and the model can otherwise use the rest of the window. - Retries. A failed request is not charged, so a retry after HTTP 429 costs nothing extra. A request that succeeds twice, because your code sent it twice, is billed twice.
- Test traffic. Loops that run during development add up. Watch the
X-Balance-USDheader in each response to see the balance fall.
Pricing compared with other APIs
Other providers publish their own rates and change them often, so this page does not quote them. To compare, take your own monthly token counts, apply each vendor's current input and output prices, and add any minimums or subscriptions. Also compare what the models do: this one is a single open-weight model tuned for no content refusals, text only, with no image, audio, embeddings or fine-tuning. For a side-by-side with a flagship model, see the article on GPT-5 API versus uncensored alternatives.
The quickstart has the code to point your existing client at the API, so you can run the same prompts on both and read the token counts in each response.
More guides
Questions and answers
Is there a monthly fee?
No. You pay per token from prepaid credit. Nothing is billed when you do not use the API.
Do I pay for errors?
No. Failed or refused requests are not charged.
Does the credit expire?
No, credit never expires, so a $20 top-up can last as long as you like.
What is the cheapest way to try it?
Claim the $0.50 trial credit on the API key page. It needs no card and lasts 7 days.
Your key is one form away
Create an account, copy the key, change the base URL. That is the whole setup.
ChatBotApis
chatbotapis.com