fshy

Home / Inference

Pollinations

text.pollinations.ai/openaiInference endpoint, keylessinference/pollinationsJSONcomparereport an errorprovider JSON

Free allowance
The Classic API lists one model, openai-fast, described as 'GPT-OSS 20B Reasoning LLM (OVH)', with aliases openai, gpt-oss, gpt-oss-20b and ovh-reasoning
Verdict
caveatusable, with a named limit or an unprobed read path
Cost
free tier
Identity
anonymousno card, no phone
Binding limit
request-rate1 reply every 30 seconds per IP on the anonymous tier
Evidence
measured6 sources; a live request was made and its output kept
Freshness
stale on 2026-11-28checked 2026-10-28 (live); stale on 2026-11-28
Free tierthe Classic API lists one model, openai-fast, described as 'GPT-OSS 20B Reasoning LLM (OVH)', with aliases openai, gpt-oss, gpt-oss-20b and ovh-reasoning
unit requests; metered on request-count; the served model is OVH-hosted gpt-oss-20b, so this endpoint is a relay of the OVH public tier rather than a separate allocation
Pricenone stated
Limits
  • request-rate (binding) 1 reply every 30 seconds per IP on the anonymous tier
Identityanonymous no key required, but the allowance is metered per IP and shared with everything else on that address
Egressnot published
Interfacerest
Toolingany OpenAI-compatible client; curl against POST {base}/chat/completions
Composes withpairs with a lightweight interactive caller; the one-reply-per-30-seconds-per-IP floor is the scarce link and it is shared with every other caller on the address
Reliabilitythe same model on the same base URL returned 402 and 404 an hour apart, and 404 and 402 in reverse order's two runs
NotesThe 402 is the finding: a keyless endpoint exhausted by per-IP budget with no account in existence.
Evidence notemeasured the per-IP 402 was observed. The advertised id openai-fast is listed by GET /models with the aliases openai, gpt-oss, gpt-oss-20b and ovh-reasoning, and a completion for openai-fast reports the served model as gpt-oss-20b, so the served model is the advertised one under one of its aliases.
Parsed numbers
  • has-free-tier 1
Evidence 6
datesourcewhat it proved
2026-10-22probe: https://text.pollinations.ai/openai/chat/completionsrequesting openai-fast returned 200 with model gpt-oss-20b echoed, a substitution; 51 completion tokens in the written run, and re-probed at 2026-10-22T04:38:22Z at 475 ms total with 475 ms to first byte on one streaming request. The recon run's 289 ms figure is withdrawn: its ttft_ms on the same row was 499 ms, so the two fields describe two different calls and neither can be quoted as a latency
2026-10-22probe: https://text.pollinations.ai/openai/chat/completionsrequesting gpt-5-nano returned 402 'Free limit reached: 1 reply every 30 seconds per IP' in run 1 and 404 'isn't on the Classic API' in run 2, eight minutes apart
2026-10-22text.pollinations.ai/modelsthe Classic API lists exactly one model, openai-fast, with alias gpt-oss-20b and the description 'GPT-OSS 20B Reasoning LLM (OVH)'
2026-10-28github.com/pollinations/pollinations/blob/master/APIDOCS.mdtext requests are limited to one at a time, at least 30 seconds apart, per IP address
2026-10-28probe: https://text.pollinations.ai/openai/chat/completionsone POST with no Authorization header for openai-fast answered 200 with content NEEDLE-9K2X; body model gpt-oss-20b and user_tier anonymous; headers x-model-used: gpt-oss-20b, x-usage-prompt-text-tokens: 324, x-usage-completion-text-tokens: 51, x-usage-total-tokens: 375; no rate-limit header (Retry-After is exposed only on a refusal)
2026-10-28probe: https://text.pollinations.ai/modelsGET /models lists one model, openai-fast, described as GPT-OSS 20B Reasoning LLM (OVH), tier anonymous, with aliases openai, gpt-oss, gpt-oss-20b and ovh-reasoning
Unknown values 3
  • egress metered: egress metering was not published
  • per object cap stated: the field does not apply to this kind of offer
  • retention stated: the field does not apply to this kind of offer