Pollinations.ai

Trial verified 2026-10-08 · 2d ago no cardno phoneOpenAI-compatible

OpenAI-compatible multi-modal API funded by Quest Pollen (no card)

What's free

Quest Pollen: create an account, complete eligible Quests on the Quests dashboard and claim the rewards; Quest Pollen is spent before paid Pollen on regular (non-paid-only) models. No anonymous/no-key generation — every generation endpoint requires an API key and costs Pollen ($1 ≈ 1 Pollen). Text, image, video, audio, embeddings and 3D models behind one OpenAI-compatible API

Credit card
not required
Phone verification
not required
Commercial use
not confirmed

Free limits

Numeric limits are not recorded in structured form for this provider.

In the provider's words

No per-request rate limits published for sk_ keys; usage is bounded by the Pollen balance (legacy raw pk_ keys: 1 Pollen per IP per hour)

The catch

The old anonymous 1 req/15s and Seed 1 req/5s tiers (and the watermark/nologo scheme) are gone from the current docs; the API moved to gen.pollinations.ai with keys from enter.pollinations.ai. Quest availability and reward amounts change ("the dashboard and the linked issue are the source of truth"). No credit card needed to try. Paid-only models require Paid Pollen. Commercial use is not explicitly addressed in the docs. The previous docs_url pointed at the stale master branch; the default branch is main.

PlanTrial credit
How it renewsOne-time trial credit
Expiresnot confirmed
Modalitiesimage, text, audio
OpenAI base URLhttps://gen.pollinations.ai/v1

Free models: not listed yet.

Quickstart — chat completions

from openai import OpenAI

client = OpenAI(base_url="https://gen.pollinations.ai/v1", api_key="<YOUR_FREE_API_KEY>")
resp = client.chat.completions.create(
    model="<a-free-model>",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)

…or with curl:

curl https://gen.pollinations.ai/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"<a-free-model>","messages":[{"role":"user","content":"Hello!"}]}'

Appears in

Compare

Change history

How this free tier has changed since we started tracking it (2026-07-30) — generated from the git history of providers.json.

← All providers