📝 Originally published (in Japanese) at
[forge.workstyle.tech].
When you want to use an LLM for a personal project or a prototype, the first obstacle usually isn't technical — it's registering payment information. You just want to try something out, but you're asked for a credit card; you'd rather not put it on the company card; you're nervous that usage-based billing will blow up on you. It's a shame to stall out for reasons like that.
Fortunately, as of 2026, LLM APIs with free tiers that require no credit card are no longer rare. But if you stop at "apparently there's a free tier," the moment you actually run something you'll get smacked with 429 Too Many Requests
and that's the end of it. This article covers how to read rate limits and how to design a fallback across multiple providers, so you can use free tiers in a way that holds up in real use.
Let me give the conclusion up front: for personal experiments, prototypes, and internal tools, free tiers alone are plenty. On the other hand, supporting the backend of a publicly available service on free tiers alone isn't realistic. A free tier isn't a "cheap plan" — it's a favor that can change without notice.
With that premise in place, here's what free tiers are well suited for:
Conversely, if even one of the following applies — you need a latency SLA, you handle confidential data, or you're looking at hundreds of thousands of requests a month — your total cost will be lower if you just consider a paid plan.
Most comparison articles about free LLM APIs stop at "here's the list of available models," but what actually matters in production is these five things:
Number 2 in particular feeds directly into your design. Most of the major free providers offer OpenAI-compatible endpoints, so simply standardizing your client on the compatible interface reduces the fallback described below to "swap the base URL, API key, and model name." Whether you do this up front changes your later workload by an order of magnitude.
At the time of research, the representative options you can use without registering a credit card look roughly like this (specific limit values change frequently, so always confirm with the official documentation).
| Provider | Characteristics |
|---|---|
| High-speed inference services | Custom hardware makes inference extremely fast. Mostly open-weight models, with relatively generous tokens-per-minute |
| AI APIs from major clouds | Free tiers are available, with broad functionality including multimodal support |
| Inference services from GPU vendors | Host a large number of open models. Good for evaluation work |
| Model aggregators / routers | One key gets you access to many models, including free-tier ones |
| Free API gateways | OpenAI-compatible, bundling multiple models behind one interface |
Beyond these, there are several directory-style sites and repositories that collect and catalog free LLM APIs, with over 200 endpoints listed. That said, this kind of list lives or dies on freshness. Entries that are listed but already shut down, or whose free tier has gone paid, are an everyday occurrence — so treat these lists as an entry point for discovering candidates, and always make the adoption decision based on primary sources.
The important thing is not to pick a single provider, but to have two or three ready at the same time. The reason leads into the next section.
Articles introducing free tiers tend to emphasize a single number like "up to 30,000 tokens per minute free," but real rate limits are usually a logical AND across several axes.
So even if a provider advertises "30,000 tokens per minute," a low RPM means you'll hit the RPM wall first if your workload throws lots of short requests. Conversely, for something like long-document summarization, TPM binds first. Estimating up front which axis your workload will hit is the first trick to using free tiers well.
Another thing that's easy to overlook is when the daily limit resets. Resets are often based on UTC, which leads to accidents like hitting the cap in the morning Japan time and not recovering until the evening. When you build batch jobs, schedule them with the reset time in mind.
And when you get a 429, don't retry based on guesswork — read the Retry-After
header and the x-ratelimit-*
response headers. Many providers return your remaining quota and the seconds until reset, and just using those makes your retry behavior dramatically more accurate.
This is the main event for making free tiers practical. If you depend on a single provider, any one of rate limiting, an outage, or a model shutdown will stop you cold. Line up multiple providers and route to the next one on failure, and you can raise availability to a practical level while staying on free tiers.
The point is to convey the idea, so written plainly it looks like this.
import time, random
from openai import OpenAI
PROVIDERS = [
{"base_url": "https://api.provider-a.example/v1", "key": KEY_A, "model": "model-a"},
{"base_url": "https://api.provider-b.example/v1", "key": KEY_B, "model": "model-b"},
{"base_url": "https://api.provider-c.example/v1", "key": KEY_C, "model": "model-c"},
]
def chat(messages, max_retries=2):
last_error = None
for p in PROVIDERS:
client = OpenAI(base_url=p["base_url"], api_key=p["key"])
for attempt in range(max_retries):
try:
return client.chat.completions.create(
model=p["model"], messages=messages, timeout=30
)
except Exception as e:
last_error = e
status = getattr(e, "status_code", None)
if status in (401, 403, 404):
break # 設定の問題。リトライしても無駄なので次のプロバイダへ
time.sleep((2 ** attempt) + random.random())
raise RuntimeError(f"all providers failed: {last_error}")
This works well enough, but once you have more providers, it's more realistic to put a routing library or gateway in front. Boilerplate like fallback, retries, cost tracking, and model-name normalization can be declared in a config file, and your application code just points at a single endpoint.
Fallback is about what happens after you hit a limit, but making it harder to hit the limit in the first place is more effective.
Finally, here are the practical risks of relying on free tiers.
As of 2026, there are plenty of no-credit-card free LLM API options. But whether you can extract value from them depends less on which provider you choose and more on your design.
If you build past "it's free to use" and all the way to "it stays up while staying free," the personal-project experience gets remarkably comfortable. Start by moving the script you have on hand over to the compatible interface.