infr.ad

A free LLM API.
Ads in your terminal pay for it.

OpenAI-compatible, no credit card, no billing. Every so often a chat response ends with a small ASCII block from a sponsor. That is the entire arrangement.

What it looks like

the rest of the model's answer ends here. ┌────────────────────────────────────────┐ │ sponsored │ │ acme cli, ship faster │ │ deploy from your terminal, one command │ │ go.infr.ad/x7k2p9 │ └────────────────────────────────────────┘

Forty columns, plain text, no ANSI and no escape codes. Appended to the assistant message, so every client renders it as ordinary output.

Running numbers

Straight from the database, cached sixty seconds.

Tokens served
Developers
Ads shown

The full set, and the thresholds we committed to in advance

Sponsor the slot

Five seven-day packages. Each one costs more than the last, and they go in order — the first sponsor to commit pays the least.

  1. Slot 2 7 days, exclusive terminal placement $1,500
  2. Slot 3 7 days, exclusive terminal placement $2,000
  3. Slot 4 7 days, exclusive terminal placement $3,000
  4. Slot 5 7 days, exclusive terminal placement $5,000

Plain text, forty columns, reviewed by hand. You get delivery and click numbers at the end of the week, and the same figures we publish about ourselves.

Three models

Reasoning is switched off for now, until we scale.

1M context · default

deepseek-v4-flash

Fast, and cheap enough to be genuinely generous with. Sent when you omit the model field.

262K context

hy3

Stronger reasoning and coding when the cheap model is not getting there.

1M context · vision

gpt-5.6-luna

The most capable of the three. Accepts images. Moderated by the provider.

Two environment variables

export OPENAI_BASE_URL=https://api.infr.ad/v1
export OPENAI_API_KEY=sk-infr-...

curl $OPENAI_BASE_URL/chat/completions \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek-v4-flash",
       "messages":[{"role":"user","content":"hello"}]}'

Works with the OpenAI SDKs, aider, Continue, llm and Open WebUI. Setup for each.

What we log

Token counts, a hashed IP, a user agent and a country. There is no column in the database for the content of your messages — a thing you can check rather than a thing you have to believe.