Quick setup
Open the kRouter dashboard at http://localhost:20128
Go to Providers → click Fal.ai
Paste your API key, click Save
Test the connection
Use in your IDE
Point any OpenAI-compatible client at kRouter using your local API key.
# Endpoint
http://localhost:20128/v1
# API key (from Dashboard → API Keys)
sk-krouter-XXXX
# Model
fal/<model-id>How Fal.ai billing works with kRouter
Fal.ai is pay-per-token. You bring your own API key and kRouter routes to it, so you keep your own rate limits and billing relationship. kRouter authenticates it via apikey. 7 models are routable as fal/<model>.
Through kRouter, Fal.ai serves image generation, exposed on /v1/images/generations. Requests reach it through the same local OpenAI-compatible endpoint as every other provider, so switching to or from Fal.ai is a one-line model change in your client rather than a rewrite.
Fal.ai models & pricing
These are the model ids kRouter routes to. This provider does not publish per-token rates.
| Model | Route as |
|---|---|
| FLUX Schnell | fal/fal-ai/flux/schnell |
| FLUX Dev | fal/fal-ai/flux/dev |
| FLUX Pro v1.1 | fal/fal-ai/flux-pro/v1.1 |
| FLUX Pro v1.1 Ultra | fal/fal-ai/flux-pro/v1.1-ultra |
| Recraft V3 | fal/fal-ai/recraft-v3 |
| Ideogram V2 | fal/fal-ai/ideogram/v2 |
| SD 3.5 Large | fal/fal-ai/stable-diffusion-v35-large |
Fal.ai links
Fal.ai FAQ
Is Fal.ai free through kRouter?
Fal.ai is pay-per-token: you bring your own API key and are billed by Fal.ai at their rates. kRouter adds nothing on top and is free and MIT-licensed.
How do I use Fal.ai with Claude Code or Cursor?
Connect Fal.ai in the kRouter dashboard, then point your tool at kRouter's local endpoint (http://localhost:20128/v1) with a kRouter API key. Any OpenAI-compatible client works, and models are addressed as fal/<model>.
Which Fal.ai models can kRouter route to?
7 models, including FLUX Schnell, FLUX Dev, FLUX Pro v1.1. Every one is addressed as fal/<model> from any client.
What happens when Fal.ai is rate limited?
kRouter detects the limit, parks that account until its real reset time, and fails over to your next connected account or provider — so the request still completes instead of erroring.