Quick Reference
| Category |
Fast/Cheap |
Balanced |
Best Quality |
| Image |
FLUX Schnell |
FLUX.1 Dev |
FLUX.2 Pro |
| Video |
Runway Turbo |
LTX-2 Pro |
Kling 2.6 Pro |
| Audio STT |
Whisper Turbo |
Whisper |
Whisper Large v3 |
| Audio TTS |
Kokoro |
XTTS |
ElevenLabs |
| FLUX Model |
Endpoint |
Steps |
Use Case |
| FLUX.2 Pro |
fal-ai/flux-2-pro |
28 |
Production |
| FLUX.1 Dev |
fal-ai/flux/dev |
28 |
High quality |
| FLUX Schnell |
fal-ai/flux/schnell |
4 |
Fast iteration |
| Video Model |
Duration |
Audio |
Speed |
| Kling 2.6 Pro |
5-10s |
Yes |
Slow |
| LTX-2 Pro |
5s |
Yes |
Medium |
| Runway Turbo |
5-10s |
No |
Fast |
When to Use This Skill
Use for model selection decisions:
- Comparing FLUX vs SDXL for image generation
- Choosing video models by quality tier
- Optimizing costs with appropriate model selection
- Understanding model-specific parameters
- Building production vs development pipelines
Related skills:
- For text-to-image: see
fal-text-to-image
- For text-to-video: see
fal-text-to-video
- For audio models: see
fal-audio
fal.ai Model Selection Guide
Comprehensive guide to selecting the right fal.ai model for your use case.
Image Generation Models
FLUX Family
| Model |
Endpoint |
Best For |
Speed |
Quality |
Cost |
| FLUX.2 [pro] |
fal-ai/flux-2-pro |
Production, best quality |
Medium |
Highest |
$$$ |
| FLUX.1 [dev] |
fal-ai/flux/dev |
High quality, open-source |
Medium |
High |
$$ |
| FLUX Schnell |
fal-ai/flux/schnell |
Fast iteration |
Fast |
Good |
$ |
| FLUX LoRA |
fal-ai/flux-lora |
Custom trained styles |
Medium |
High |
$$ |
| FLUX Realism |
fal-ai/flux-realism |
Photorealistic images |
Medium |
High |
$$ |
FLUX.2 Pro - Latest and best quality
const result = await fal.subscribe("fal-ai/flux-2-pro", {
input: {
prompt: "Professional product photo of a watch",
image_size: "square_hd",
num_inference_steps: 28,
guidance_scale: 3.5
}
});
FLUX.1 Dev - Best open-source option
const result = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "A serene mountain landscape",
image_size: "landscape_16_9",
num_inference_steps: 28
}
});
FLUX Schnell - Fast 4-step generation
const result = await fal.subscribe("fal-ai/flux/schnell", {
input: {
prompt: "Quick concept sketch",
num_inference_steps: 4 // Optimized for 4 steps
}
});
Stable Diffusion Models
| Model |
Endpoint |
Best For |
| Fast SDXL |
fal-ai/fast-sdxl |
Speed, lower cost |
| SDXL |
fal-ai/stable-diffusion-xl |
Classic SDXL |
| SD 1.5 |
fal-ai/stable-diffusion-v15 |
Legacy compatibility |
| SDXL Turbo |
fal-ai/sdxl-turbo |
Ultra-fast |
// Fast SDXL - Good balance of speed and quality
const result = await fal.subscribe("fal-ai/fast-sdxl", {
input: {
prompt: "A colorful abstract painting",
image_size: "square_hd",
num_inference_steps: 25
}
});
Specialized Image Models
| Model |
Endpoint |
Use Case |
| Recraft V3 |
fal-ai/recraft-v3 |
Design assets, vectors |
| Ideogram |
fal-ai/ideogram |
Text in images |
| Playground v2.5 |
fal-ai/playground-v25 |
Creative/artistic |
| Kandinsky 3 |
fal-ai/kandinsky-3 |
Russian model |
Image-to-Image Models
| Model |
Endpoint |
Use Case |
| FLUX i2i |
fal-ai/flux/dev/image-to-image |
Transform images |
| FLUX Inpaint |
fal-ai/flux/dev/inpainting |
Edit regions |
| FLUX ControlNet |
fal-ai/flux/dev/controlnet |
Guided generation |
| IP-Adapter |
fal-ai/ip-adapter-flux |
Style transfer |
// Image-to-Image transformation
const result = await fal.subscribe("fal-ai/flux/dev/image-to-image", {
input: {
image_url: "https://example.com/photo.jpg",
prompt: "Transform into watercolor painting style",
strength: 0.75 // 0-1, how much to change
}
});
// Inpainting (edit specific regions)
const result = await fal.subscribe("fal-ai/flux/dev/inpainting", {
input: {
image_url: "https://example.com/photo.jpg",
mask_url: "https://example.com/mask.png",
prompt: "A golden retriever"
}
});
// ControlNet (structural guidance)
const result = await fal.subscribe("fal-ai/flux/dev/controlnet", {
input: {
prompt: "Modern house design",
control_image_url: "https://example.com/edges.png",
controlnet_conditioning_scale: 0.8
}
});
Video Generation Models
Text-to-Video
| Model |
Endpoint |
Quality |
Duration |
Audio |
Best For |
| Kling 2.6 Pro |
fal-ai/kling-video/v2.6/pro |
Highest |
5-10s |
Native |
Cinematic |
| Sora 2 |
fal-ai/sora |
Highest |
5-20s |
Optional |
Advanced |
| LTX-2 Pro |
fal-ai/ltx-video-2-pro |
High |
5s |
Yes |
Fast HQ |
| Runway Gen-3 |
fal-ai/runway/gen3/turbo |
High |
5-10s |
No |
Fast |
| Luma |
fal-ai/luma-dream-machine |
Good |
5s |
No |
Creative |
| CogVideoX |
fal-ai/cogvideox |
Good |
6s |
No |
Open source |
Kling 2.6 Pro - Best overall quality
const result = await fal.subscribe("fal-ai/kling-video/v2.6/pro", {
input: {
prompt: "A majestic eagle soaring over mountains at golden hour",
duration: 5,
aspect_ratio: "16:9",
negative_prompt: "blurry, distorted",
cfg_scale: 0.5
}
});
LTX-2 Pro - Fast with audio
const result = await fal.subscribe("fal-ai/ltx-video-2-pro", {
input: {
prompt: "Ocean waves crashing on rocks",
resolution: "720p",
enable_audio: true
}
});
Image-to-Video
| Model |
Endpoint |
Best For |
| MiniMax Hailuo |
fal-ai/minimax/video-01 |
Image animation |
| Kling i2v |
fal-ai/kling-video/v2.6/pro/image-to-video |
HQ animation |
| Luma i2v |
fal-ai/luma-dream-machine |
Creative |
| Runway i2v |
fal-ai/runway/gen3/turbo/image-to-video |
Fast |
// Animate a still image
const result = await fal.subscribe("fal-ai/minimax/video-01", {
input: {
image_url: "https://example.com/portrait.jpg",
prompt: "Person slowly turns head and smiles",
prompt_optimizer: true
}
});
Video-to-Video (Editing)
// Edit/transform existing video
const result = await fal.subscribe("fal-ai/kling-video/o1", {
input: {
video_url: "https://example.com/video.mp4",
prompt: "Change to anime style"
}
});
Audio Models
Speech-to-Text
| Model |
Endpoint |
Best For |
| Whisper |
fal-ai/whisper |
Accurate transcription |
| Whisper Turbo |
fal-ai/whisper-turbo |
Fast transcription |
const result = await fal.subscribe("fal-ai/whisper", {
input: {
audio_url: "https://example.com/speech.mp3",
task: "transcribe", // or "translate"
language: "en",
chunk_level: "segment"
}
});
console.log(result.text);
console.log(result.chunks); // With timestamps
Text-to-Speech
| Model |
Endpoint |
Best For |
| Elevenlabs |
fal-ai/elevenlabs |
Premium voices |
| F5-TTS |
fal-ai/f5-tts |
Voice cloning |
| Kokoro |
fal-ai/kokoro |
Multi-language |
// Text-to-speech with Elevenlabs
const result = await fal.subscribe("fal-ai/elevenlabs", {
input: {
text: "Hello, welcome to our service.",
voice_id: "voice_id_here"
}
});
3D Generation Models
| Model |
Endpoint |
Use Case |
| TripoSR |
fal-ai/triposr |
Image to 3D mesh |
| InstantMesh |
fal-ai/instantmesh |
Fast 3D generation |
| Stable Zero123 |
fal-ai/stable-zero123 |
Novel view synthesis |
// Generate 3D mesh from image
const result = await fal.subscribe("fal-ai/triposr", {
input: {
image_url: "https://example.com/object.jpg"
}
});
console.log(result.model_mesh.url); // GLB/OBJ file
Model Selection Decision Tree
What do you want to create?
├── Image
│ ├── From text only?
│ │ ├── Need best quality? → FLUX.2 Pro
│ │ ├── Need fast iteration? → FLUX Schnell
│ │ ├── Need open-source? → FLUX.1 Dev
│ │ └── Budget conscious? → Fast SDXL
│ ├── Transform existing image?
│ │ ├── Style transfer → FLUX i2i
│ │ ├── Edit specific region → FLUX Inpainting
│ │ └── Follow structure → FLUX ControlNet
│ └── Need text in image? → Ideogram
│
├── Video
│ ├── From text only?
│ │ ├── Need best quality? → Kling 2.6 Pro
│ │ ├── Need fast preview? → Runway Gen-3 Turbo
│ │ └── Need audio? → LTX-2 Pro or Kling
│ ├── Animate image? → MiniMax Hailuo
│ └── Edit video? → Kling O1
│
├── Audio
│ ├── Speech to text?
│ │ ├── Accurate → Whisper
│ │ └── Fast → Whisper Turbo
│ └── Text to speech? → Elevenlabs / F5-TTS
│
└── 3D
└── Image to 3D? → TripoSR
Performance Comparison
Image Generation Speed
| Model |
~Time (1024x1024) |
| FLUX Schnell |
1-2s |
| Fast SDXL |
2-3s |
| FLUX.1 Dev |
5-8s |
| FLUX.2 Pro |
8-12s |
Video Generation Speed
| Model |
~Time (5s video) |
| Runway Gen-3 Turbo |
30-60s |
| LTX-2 Pro |
60-90s |
| Kling 2.6 Pro |
120-180s |
Cost Optimization Strategies
Development Phase
- Use FLUX Schnell for prompt iteration
- Use Fast SDXL for quick tests
- Use Runway Gen-3 Turbo for video previews
Production Phase
- FLUX.2 Pro for final images
- Kling 2.6 Pro for final videos
Batch Processing
- Process during off-peak hours
- Use appropriate image sizes (don't upscale unnecessarily)
- Cache results by seed for reproducibility
Resource Efficiency
- Generate at target resolution (don't generate larger and downscale)
- Use webhooks for high-volume (avoid polling overhead)
- Implement client-side caching
Model-Specific Tips
FLUX Tips
- Guidance scale 3-4 works best
- 28 steps is optimal default
- Schnell works best with 4 steps only
- Detailed prompts produce better results
Video Tips
- Include camera movement in prompts
- Describe action/motion explicitly
- Use negative prompts to avoid artifacts
- Start with shorter duration for testing
Whisper Tips
- Provide language hint for better accuracy
- Use "translate" task for non-English to English
- chunk_level="segment" gives timestamps
Explore More Models
Visit https://fal.ai/models for the complete catalog of 600+ models including:
- Face restoration/enhancement
- Background removal
- Upscaling
- Style transfer
- OCR
- Object detection
- And many more specialized models