{"jtbd":{"id":"video-generation","slug":"video-generation","name":"Programmatic video generation","shortName":"Programmatic video generation","problemStatement":"Generate short videos via API for products/agents."},"pick":{"id":"fal","slug":"fal","name":"Fal","tagline":"Depot default for programmatic image/video/audio gen. One API to rule the media zoo.","website":"https://fal.ai","overall":8.5,"scoreBand":{"low":7.9,"mid":8.5,"high":9.1,"halfWidth":0.6,"basis":"editorial_prior","display":"7.9–9.1 (editorial prior)"},"scoreLayers":{"editorialPrior":8.5,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-10-19","pricingNotes":"Serverless generative media API (1000+ models); per-second/per-output; extremely agent-friendly.","scores":{"capabilityFit":9.2,"pricePerformance":8.5,"latencyReliability":8.6,"developerDx":9.6,"privacyPosture":7.2,"lockInRisk":4,"maturity":8,"overall":8.5,"kind":"curated_estimate","confidence":"high","asOf":"2026-10-19"}},"runnersUp":[{"id":"runway","slug":"runway","name":"Runway","tagline":"Top creative video brand. For pure agent pipelines, also price-check Fal-hosted alternatives.","website":"https://runwayml.com","overall":7.75,"scoreBand":{"low":7.2,"mid":7.8,"high":8.4,"halfWidth":0.6,"basis":"editorial_prior","display":"7.2–8.4 (editorial prior)"},"scoreLayers":{"editorialPrior":7.75,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","pricingNotes":"Gen video models (Gen-3/etc.) via web + API; credit plans; creative-suite positioning.","scores":{"capabilityFit":9,"pricePerformance":6.5,"latencyReliability":8.4,"developerDx":7.8,"privacyPosture":7,"lockInRisk":5.5,"maturity":8.8,"overall":7.75,"kind":"curated_estimate","confidence":"high","asOf":"2026-09-14"}},{"id":"luma","slug":"luma","name":"Luma AI","tagline":"Solid video gen option — A/B with Runway/Pika/Fal-hosted models for your domain.","website":"https://lumalabs.ai","overall":7.69,"scoreBand":{"low":7.1,"mid":7.7,"high":8.3,"halfWidth":0.6,"basis":"editorial_prior","display":"7.1–8.3 (editorial prior)"},"scoreLayers":{"editorialPrior":7.69,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-19","editorialPriorAsOf":"2026-09-14","pricingNotes":"As of 2026-09-14: Dream Machine video and multimodal APIs with credit/subscription packaging plus builder API. Compare unit economics vs Runway/Pika/Fal-hosted video models for your domain.","scores":{"capabilityFit":8.8,"pricePerformance":7,"latencyReliability":8,"developerDx":8,"privacyPosture":7,"lockInRisk":5,"maturity":7.8,"overall":7.69,"kind":"curated_estimate","confidence":"medium","asOf":"2026-09-14"}},{"id":"pika","slug":"pika","name":"Pika API (API Club)","tagline":"API story is no longer a mystery: self-serve keys + catalog quotes. Treat as a media aggregator (multi-vendor…","website":"https://dev.pika.art","overall":7.88,"scoreBand":{"low":7.3,"mid":7.9,"high":8.5,"halfWidth":0.6,"basis":"editorial_prior","display":"7.3–8.5 (editorial prior)"},"scoreLayers":{"editorialPrior":7.88,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","pricingNotes":"As of 2026-09-14: Programmatic Gen Media API is GA via Pika API Club — $10/mo membership unlocks member/wholesale rates + $10 first-month usage credit; prepaid balance (micro-USD); pay-as-you-go per model from live catalog. 100+ video/image/audio/LLM ops via one key (api.dev.pika.art). No free generation tier. Enterprise: volume discounts, concurrency, reserved capacity.","scores":{"capabilityFit":8.4,"pricePerformance":8.2,"latencyReliability":7.8,"developerDx":8.6,"privacyPosture":7,"lockInRisk":4.8,"maturity":7.8,"overall":7.88,"kind":"curated_estimate","confidence":"high","asOf":"2026-09-14"}},{"id":"minimax","slug":"minimax","name":"MiniMax","tagline":"Primary indie-usable Chinese multimodal API alongside Moonshot. Prefer Anthropic/OpenAI for coding agents…","website":"https://www.minimax.io","overall":7.83,"scoreBand":{"low":7.2,"mid":7.8,"high":8.4,"halfWidth":0.6,"basis":"editorial_prior","display":"7.2–8.4 (editorial prior)"},"scoreLayers":{"editorialPrior":7.83,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","pricingNotes":"As of 2026-09-14 (platform.minimax.io/docs/guides/pricing-paygo): International api.minimax.io (OpenAI + Anthropic-compat). MiniMax-M3 ≤512k: list $0.60/$2.40 → permanent 50% off $0.30/$1.20 per 1M (cache read $0.06); >512k $0.60/$2.40 after promo. Priority tier 1.5×. M2.7 $0.30/$1.20 (highspeed $0.60/$2.40). TTS speech-2.8-turbo $60/M chars, hd $100/M. ASR $0.38/hr. Video H3 768P $0.08/s / 2K $0.13/s. image-01 $0.0035. Token Plan (Plus/Max/Ultra) is closed to new purchases; its figure was removed. It is replaced by M Plan, listed at platform.minimax.io/docs/m-plan/monthly-offer as of 2026-10-21 at regular prices of Go $22/month, Explore $55/month and Build $132/month (first month 50% off; not stored as rows). Mainland keys use api.minimaxi.com — not interchangeable.","scores":{"capabilityFit":8.4,"pricePerformance":8.8,"latencyReliability":7.8,"developerDx":8.2,"privacyPosture":6.2,"lockInRisk":4.8,"maturity":7.6,"overall":7.83,"kind":"curated_estimate","confidence":"high","asOf":"2026-09-14"}},{"id":"kling","slug":"kling","name":"Kling AI","tagline":"Video-gen peer to Runway/Luma/Fal. Prefer Fal for multi-model media API DX; Kling when quality demos win and…","website":"https://kling.ai","overall":7.58,"scoreBand":{"low":7,"mid":7.6,"high":8.2,"halfWidth":0.6,"basis":"editorial_prior","display":"7.0–8.2 (editorial prior)"},"scoreLayers":{"editorialPrior":7.58,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","pricingNotes":"As of 2026-09-14: Official API (kling.ai/dev) is prepaid **units** distinct from consumer app subscriptions — secondary/official summaries ~$0.14/unit with video roughly **$0.084–$0.168/sec** (720p–1080p) and higher for 4K; packages from ~$9.80/100 units. Consumer app plans do **not** include API. As of 2026-10-25 https://kling.ai/dev/pricing answers HTTP 200 to plain curl (no redirect, byte-identical twice about 10 s apart) but is client-rendered: the tag-stripped server HTML has 73 characters of text and no price; the unit card sits only in the page's inline script data, which includes 'Video API Pricing 1 Unit = $0.14 (list price)' and 'Image API Pricing 1 Unit = $0.0035 (list price)'. Stored figures are not re-priced here; any price change goes through the reviewed --catalog step.","scores":{"capabilityFit":8.8,"pricePerformance":7.8,"latencyReliability":7.8,"developerDx":7.2,"privacyPosture":6.2,"lockInRisk":5,"maturity":7.6,"overall":7.58,"kind":"curated_estimate","confidence":"medium","asOf":"2026-09-14"}}],"scoreBand":{"low":7.9,"mid":8.5,"high":9.1,"halfWidth":0.6,"basis":"editorial_prior","display":"7.9–9.1 (editorial prior)"},"scoreLayers":{"editorialPrior":8.5,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"whyPickOverHigherScore":{"pickId":"fal","pickName":"Fal","pickScore":8.5,"highestScoredCandidateId":"fal","highestScoredCandidateName":"Fal","highestScore":8.5,"pickHasLowerCompositeScore":false,"delta":0,"pickLeadsOnDimensions":[],"explanation":"Fal (8.5) holds both the highest composite score among ranked candidates and the editorial pick for Programmatic video generation: capability quality + dx API + pricePerf."},"cheapest":{"providerId":"luma","providerName":"Luma AI","skuId":"luma-ray3-2-t2v-5s-540p","item":"Ray3.2 text/image-to-video, 5s, 540p","plan":"Ray3.2 text/image-to-video, 5s, 540p — Pay per video, SDR output; HDR is 2x and HDR+EXR 3x","unit":"usd_per_video","amountUsd":0.15,"isFloorPrice":true,"floorWarning":"Provider-wide floor SKU; may not be the flagship model scored for this JTBD.","skuCountInUnit":2,"isDepotPick":false,"sourceUrl":"https://lumalabs.ai/api/pricing","asOf":"2026-10-19","verifiedAsOf":"2026-10-19"},"recommendedWorkloadQuote":{"providerId":"fal","providerName":"Fal","skuId":"fal-image-seedream-v4-5","item":"Bytedance Seedream V4.5","plan":"Bytedance Seedream V4.5 — Model API billed per image (billing unit \"images\")","unit":"usd_per_image","amountUsd":0.04,"outputSkuId":null,"outputItem":null,"outputAmountUsd":null,"outputUnit":null,"sourceUrl":"https://fal.ai/pricing","asOf":"2026-10-19","pricingLastVerifiedAt":"2026-10-19","isFlagshipForJob":false,"differsFromFloorCheapest":false,"representativeQuote":{"skuId":"fal-image-seedream-v4-5","item":"Bytedance Seedream V4.5","plan":"Bytedance Seedream V4.5 — Model API billed per image (billing unit \"images\")","amountUsd":0.04,"inputOrUnitUsd":0.04,"unit":"usd_per_image","outputUsd":null,"outputUnit":null,"sourceUrl":"https://fal.ai/pricing","asOf":"2026-10-19"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"unitsPerTask":1,"baseCostPer1kTasksUsd":0.04,"totalUsd":0.046,"estimatedTotalUsd":0.046,"perTaskUsd":0.000046,"estimatedCostPerTaskUsd":0.000046,"formula":"$0.04 (usd_per_image) * 1.15 overhead","assumptions":"1,000 tasks in job native unit with 1.15x retry overhead."}},"representativeQuote":{"skuId":"fal-image-seedream-v4-5","item":"Bytedance Seedream V4.5","plan":"Bytedance Seedream V4.5 — Model API billed per image (billing unit \"images\")","amountUsd":0.04,"inputOrUnitUsd":0.04,"unit":"usd_per_image","outputUsd":null,"outputUnit":null,"sourceUrl":"https://fal.ai/pricing","asOf":"2026-10-19"},"estimatedTaskCost":{"tasks":1000,"retryAndToolOverheadMultiplier":1.15,"retryToolOverheadMultiplier":1.15,"unitsPerTask":1,"baseCostPer1kTasksUsd":0.04,"totalUsd":0.046,"estimatedTotalUsd":0.046,"perTaskUsd":0.000046,"estimatedCostPerTaskUsd":0.000046,"formula":"$0.04 (usd_per_image) * 1.15 overhead","assumptions":"1,000 tasks in job native unit with 1.15x retry overhead."},"freeAlternatives":[],"referenceDocs":[],"falsification":{"jtbdId":"video-generation","jtbdName":"Programmatic video generation","currentPickId":"fal","currentPickScore":8.5,"challengerId":"runway","challengerScore":7.75,"currentScoreGap":0.75,"minVerifiedOutcomes":10,"requiredOutcomeMargin":0.9,"requiredSuccessRateDelta":0.15,"maxPickPriceIncreasePct":25,"whatWouldChangePick":["Runway (runway) outperforms Fal (fal) by >= 0.9 outcome points (or >= 15% worked-rate delta) across >= 10 Countersign-verified production outcomes.","A verified price increase > 25% on Fal's representative SKU for video-generation without a corresponding capability gain.","Live caller rail exhaustion (?exhausted=fal) or sustained >= 30% degraded/failed rate in verified production outcomes."],"frozenHoldoutPolicy":{"holdoutSplit":"20% frozen benchmark holdout tasks + 80% live production outcome receipts","requireCountersignReceipt":true,"requiredEvidenceTiers":["outcome_verified","reference_checked"],"minDistinctContributors":2,"antiGamingRule":"Unverified self-reports and seed/editorial rows never mutate picks or scores."},"triggers":[{"kind":"verified_outcomes_outperformance","challengerId":"runway","minVerifiedOutcomes":10,"requiredOutcomeMargin":0.9,"requiredWorkedRateDelta":0.15},{"kind":"verified_price_increase","providerId":"fal","maxPriceIncreasePct":25},{"kind":"live_rail_exhaustion_or_degradation","providerId":"fal","immediateOverrideUrl":"/api/decide?jtbd=video-generation&exhausted=fal"}],"submissionSpec":{"falsifyEndpoint":"/api/falsify?jtbd=video-generation","outcomesEndpoint":"POST /api/feedback","correctionsEndpoint":"POST /api/corrections","payloadTemplate":{"agentIdentity":"agent:<your-agent-id>","jtbdId":"video-generation","providerId":"runway","outcome":"worked","detail":"Comparative production evaluation on video-generation (n>=10 tasks) with Countersign receipt.","confidence":"high","receipt":{"countersign":{"claim_id":"cs-00000000","status":"verified","evidence_tier":"outcome_verified","counts_as_verified":true}}}}},"whatWouldChangePick":["Runway (runway) outperforms Fal (fal) by >= 0.9 outcome points (or >= 15% worked-rate delta) across >= 10 Countersign-verified production outcomes.","A verified price increase > 25% on Fal's representative SKU for video-generation without a corresponding capability gain.","Live caller rail exhaustion (?exhausted=fal) or sustained >= 30% degraded/failed rate in verified production outcomes."],"routePlan":{"jtbdId":"video-generation","primary":{"providerId":"fal","name":"Fal","overall":8.5,"scoreBand":{"low":7.9,"mid":8.5,"high":9.1,"halfWidth":0.6,"basis":"editorial_prior","display":"7.9–9.1 (editorial prior)"},"scoreLayers":{"editorialPrior":8.5,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-10-19","role":"primary","reason":"Editorial Depot Pick for Programmatic video generation; healthy/eligible under caller constraints."},"fallback":[{"providerId":"runway","name":"Runway","overall":7.75,"scoreBand":{"low":7.2,"mid":7.8,"high":8.4,"halfWidth":0.6,"basis":"editorial_prior","display":"7.2–8.4 (editorial prior)"},"scoreLayers":{"editorialPrior":7.75,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","role":"fallback","reason":"Ranked fallback route for Programmatic video generation."},{"providerId":"luma","name":"Luma AI","overall":7.69,"scoreBand":{"low":7.1,"mid":7.7,"high":8.3,"halfWidth":0.6,"basis":"editorial_prior","display":"7.1–8.3 (editorial prior)"},"scoreLayers":{"editorialPrior":7.69,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-19","editorialPriorAsOf":"2026-09-14","role":"fallback","reason":"Ranked fallback route for Programmatic video generation."},{"providerId":"pika","name":"Pika API (API Club)","overall":7.88,"scoreBand":{"low":7.3,"mid":7.9,"high":8.5,"halfWidth":0.6,"basis":"editorial_prior","display":"7.3–8.5 (editorial prior)"},"scoreLayers":{"editorialPrior":7.88,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","role":"fallback","reason":"Ranked fallback route for Programmatic video generation."},{"providerId":"minimax","name":"MiniMax","overall":7.83,"scoreBand":{"low":7.2,"mid":7.8,"high":8.4,"halfWidth":0.6,"basis":"editorial_prior","display":"7.2–8.4 (editorial prior)"},"scoreLayers":{"editorialPrior":7.83,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","role":"fallback","reason":"Ranked fallback route for Programmatic video generation."},{"providerId":"kling","name":"Kling AI","overall":7.58,"scoreBand":{"low":7,"mid":7.6,"high":8.2,"halfWidth":0.6,"basis":"editorial_prior","display":"7.0–8.2 (editorial prior)"},"scoreLayers":{"editorialPrior":7.58,"measuredBenchmark":null,"verifiedOutcomeScore":null,"verifiedOutcomeCount":0,"accountRuntimeState":"unprobed"},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-09-14","role":"fallback","reason":"Ranked fallback route for Programmatic video generation."}],"disqualified":[],"expectedRegret":{"scoreDeltaVsUnconstrainedPick":0,"unconstrainedPickId":"fal","activePrimaryId":"fal","summary":"0.00 score regret: unconstrained editorial pick satisfies all caller constraints."},"evidenceAgeDays":{"editorialScoreAgeDays":8,"pricingVerifiedAgeDays":0,"editorialPriorAsOf":"2026-10-19","pricingLastVerifiedAt":"2026-10-27"},"confidenceBand":{"low":7.9,"mid":8.5,"high":9.1,"halfWidth":0.6,"basis":"editorial_prior","display":"7.9–9.1 (editorial prior)"},"constraintsApplied":false,"constraintBundle":{"task":null,"jtbd":"video-generation","quotaExhausted":[],"degraded":[],"healthy":[],"budgetUsd":null,"maxLatencyMs":null,"region":null,"privacy":null,"exit":[],"existing":[]}},"pricingLastVerifiedAt":"2026-10-27","editorialPriorAsOf":"2026-10-19","tie":false,"scoreGap":0.75,"decidingFactor":null,"tieNote":null,"rationale":"capability quality + dx API + pricePerf.","whenNotTopPick":"Creative suite workflows for humans — Runway UI; confirm Pika API maturity.","skipTopPick":false,"skipReason":null,"matchedConstraints":[],"pricingSummary":"Serverless generative media API (1000+ models); per-second/per-output; extremely agent-friendly.","cite":"Depot Pick for video-generation: fal (asOf 2026-10-19). See GET /api/jtbds/video-generation + GET /api/methodology.","nextActions":[{"step":1,"title":"Inspect full JTBD + embeds","href":"/api/jtbds/video-generation?embed=providers","why":"Confirm pick, runners-up, and methodology notes."},{"step":2,"title":"Quote sourced SKUs","href":"/api/quote?jtbd=video-generation","why":"Depot Pick SKUs plus the cheapest sourced SKU whose unit matches this job. Does not change the pick. Does not blend input and output or borrow a chat rate for a non-chat job."},{"step":3,"title":"Open provider detail","href":"/api/providers/fal","why":"Scores, pricingNotes, strengths/weaknesses, communitySignals (claims only)."},{"step":4,"title":"Cite methodology","href":"/api/methodology","why":"Required when publishing a Depot Pick citation."},{"step":5,"title":"Grab badge SVG","href":"/api/badge?type=depot-pick&jtbd=video-generation","why":"Embed in README / agent passport."},{"step":6,"title":"Post production insight","method":"POST","href":"/api/insights","why":"Unverified until curated; never auto-mutates official scores."}],"honesty":["Do not invent scores or benches.","Insights are claims until curated/reviewed; they never silently mutate official scores.","lockInRisk higher = more lock-in (worse).","normalizedUsdPerMillionTokens is set only for a single sourced token row. Otherwise null, with a machine-readable reason. Do not coerce GPU, minute, or per-1k search units.","Runners-up are not Depot Picks.","Depot overall is editorial_weighted, not Arena Elo and not an Artificial Analysis index."],"asOf":"2026-10-19","depth":{"whenNotToUse":{"text":"Creative suite workflows for humans — Runway UI; confirm Pika API maturity.","source":"editorial `whenNotTopPick` (data/jtbds.json)"},"whenNotToUseReason":null,"runnerUp":{"providerId":"runway","name":"Runway","overallForJob":7.75,"pickOverallForJob":8.5,"beatsPickOn":["maturity"],"source":"first resolvable entry of the job's editorially ranked `runnersUpIds`; scores are stored job-weighted scores"},"runnerUpReason":null,"lockIn":{"pickLockInRisk":4,"runnerUpLockInRisk":5.5,"scale":"0–10 stored curated estimate; higher = more lock-in (worse)","pickExitSignals":[],"runnerUpExitSignals":[],"pickNotes":[],"selfHostFallback":[],"migration":"The pick has lower stored lock-in risk than runner-up Runway (4 vs 5.5).","migrationReason":null,"derivedFrom":"stored lockInRisk scores, provider tags (oss, self-host, openai-compat, open-models), free rows that list this job, and verbatim provider notes. No migration guide was invented."}},"citation":{"text":"Agent Provider Depot (v0.12.148), Depot Pick for video-generation: fal, scores as of 2026-10-19, retrieved 2026-10-27. https://getagentdepot.com/jtbds/video-generation","markdown":"[Agent Provider Depot](https://getagentdepot.com/jtbds/video-generation) (v0.12.148) — Depot Pick for `video-generation`: **fal** (scores as of 2026-10-19, retrieved 2026-10-27)","fields":{"publisher":"Agent Provider Depot","version":"0.12.148","role":"depot_pick","jtbdId":"video-generation","providerId":"fal","scoreAsOf":"2026-10-19","retrievedOn":"2026-10-27","page":"https://getagentdepot.com/jtbds/video-generation","api":"https://getagentdepot.com/api/decide?jtbd=video-generation"},"howToCite":"Cite Depot as an editorial, dated recommendation, not a benchmark: name the job, the Depot Pick (or runner-up), the score asOf date and the day you retrieved it, and link the job page. Format: “Agent Provider Depot (v{version}), Depot Pick for {jobId}: {providerId}, scores as of {scoreAsOf}, retrieved {retrievedOn}. {baseUrl}/jtbds/{jobId}”. Quote prices only with their own sourceUrl and asOf. If the pick's score is stale (freshness.pick.score.stale), say so."},"freshness":{"pick":{"score":{"asOf":"2026-10-19","ageDays":8,"stale":false,"staleAfterDays":30,"reason":null},"lastReviewed":{"asOf":"2026-10-19","ageDays":8,"stale":false,"staleAfterDays":30,"reason":null},"sourceCheck":{"checkedAt":"2026-10-27","sourceUrls":1,"sourcesReachable":1,"pricingRows":3,"pricingRowsReconfirmed":2,"note":"A source re-check confirms the page is reachable and, for pricing rows, that the stored amount and SKU name appear on it. It does not re-derive or change the score.","reason":null}},"scoreAsOf":"2026-10-19","editorialPriorAsOf":"2026-10-19","pricingLastVerifiedAt":"2026-10-27","pickLastReviewed":"2026-10-19","runnersUpScoreAsOf":["2026-09-14","2026-09-14","2026-09-14","2026-09-14","2026-09-14"],"contractAsOf":"2026-10-03","pricingShape":"sourced_rows","normalizedUsdPerMillionTokens":null,"normalizationStatus":"unit_mismatch","normalizationReason":"unit_mismatch"},"pricingContract":{"normalizedUsdPerMillionTokens":null,"normalizationStatus":"unit_mismatch","normalizationReason":"unit_mismatch","shape":"sourced_rows","filterable":false,"priceSortEligible":false,"priceSortKeyUsdPerMillionInputTokens":null,"rows":[{"id":"fal-image-nano-banana-2","providerId":"fal","sku":"Nano Banana 2","unit":"usd_per_image","amountUsd":0.08,"currency":"USD","sourceUrl":"https://fal.ai/pricing","asOf":"2026-10-19","normalizationStatus":"unit_mismatch","normalizedUsdPerMillionTokens":null,"normalizationReason":"unit_mismatch_per_image","priceSortEligible":false,"qualifier":"Model API billed per image (billing unit \"images\"). Megapixel-billed models were not converted to per image."},{"id":"fal-image-seedream-v4-5","providerId":"fal","sku":"Bytedance Seedream V4.5","unit":"usd_per_image","amountUsd":0.04,"currency":"USD","sourceUrl":"https://fal.ai/pricing","asOf":"2026-10-19","normalizationStatus":"unit_mismatch","normalizedUsdPerMillionTokens":null,"normalizationReason":"unit_mismatch_per_image","priceSortEligible":false,"qualifier":"Model API billed per image (billing unit \"images\"). Megapixel-billed models were not converted to per image."},{"id":"fal-image-nano-banana-pro","providerId":"fal","sku":"Nano Banana Pro","unit":"usd_per_image","amountUsd":0.15,"currency":"USD","sourceUrl":"https://fal.ai/pricing","asOf":"2026-10-19","normalizationStatus":"unit_mismatch","normalizedUsdPerMillionTokens":null,"normalizationReason":"unit_mismatch_per_image","priceSortEligible":false,"qualifier":"Model API billed per image (billing unit \"images\"). Megapixel-billed models were not converted to per image."}],"notesExcerpt":"Serverless generative media API (1000+ models); per-second/per-output; extremely agent-friendly.","notesCheck":{"status":"no_known_contradiction","pairs":[],"review":null,"note":null},"lastReviewed":"2026-10-19","scoreAsOf":"2026-10-19","website":"https://fal.ai","doNotParse":"Do not parse pricingNotes. Use rows only. normalizedUsdPerMillionTokens is a single number only when this provider has exactly one sourced token row. Input/output, context tiers, and non-token units stay null at this level.","gap":"Partial coverage. Providers without a fetched SKU are omitted. See GET /api/pricing."},"links":{"jtbd":"/jtbds/video-generation","jtbdApi":"/api/jtbds/video-generation","leaderboard":"/api/leaderboards?jtbd=video-generation","methodology":"/api/methodology","badge":"/api/badge?type=depot-pick&jtbd=video-generation","decide":"/api/decide?jtbd=video-generation","humanPage":"/jtbds/video-generation","alternatives":"/api/alternatives?provider=fal","canonical":"/api/canonical","quote":"/api/quote?jtbd=video-generation","falsify":"/api/falsify?jtbd=video-generation"},"constraintBundle":{"task":null,"jtbd":"video-generation","quotaExhausted":[],"degraded":[],"healthy":[],"budgetUsd":null,"maxLatencyMs":null,"region":null,"privacy":null,"exit":[],"existing":[]},"stackContext":{"host":null,"framework":null,"repo":null,"lang":null,"existing":[],"volume":null,"sender":null,"detectedFromTask":[]},"keep":null,"contextAdvice":null,"communityFeedback":{"pickOnThisJob":{"failed":0,"degraded":0,"worked":0,"insights":0,"withVerifiedReceipt":0,"failureModes":{},"latestAt":null,"note":"Agent-reported claims (unverified unless a receipt is verified by Depot's re-check). They never change scores or picks."},"outcomes":{"job":{"n":0,"worked":0,"degraded":0,"failed":0,"failureModes":{},"verifiedReports":0,"contributors":0,"excluded":{"seed_editorial":0,"test":0,"notFeedback":0},"reason":"no_submitted_outcome_reports_yet"},"pick":{"providerId":"fal","n":0,"worked":0,"degraded":0,"failed":0,"failureModes":{},"evidenceTiers":{"agent_claim":0,"self_declared":0,"reference_checked":0,"outcome_verified":0},"reason":"no_submitted_outcome_reports_yet"},"scoresMutated":false,"more":"/api/outcomes?jtbd=video-generation"},"report":"POST /api/feedback {agentIdentity, outcome: failed|degraded|worked, detail, providerId, jtbdId, failureModeId?, receipt?}"}}