Back to Comparison Hub/Pro T2V Pricing
Text to Video

Pro T2V API Pricing

Vidu Q3 Pro Text-to-Video generates cinematic, prompt-faithful clips with strong temporal consistency, accurate motion, and rich detail across resolutions up to 1080p. Pick this when you want the highest visual fidelity Vidu Q3 can produce — great for hero shots, narrative beats, and stylized sequences driven purely from text.

Savings Alert-400% ↓Cheaper than Fal.ai

About Pro T2V

Vidu Q3 Pro Text-to-Video is the flagship Q3 tier, generating cinematic, prompt-faithful clips with strong temporal consistency, accurate motion, and rich detail at resolutions up to 1080p. It's tuned for hero shots, narrative beats, and stylised sequences driven purely from text — no input image required.

Interactive Savings Calculator

Estimate monthly API spend and compare absolute developer savings.

Monthly API Generations10,000 runs
50025,00050,00075,000100,000+
MuAPI Monthly Cost

$1500.00

$0.15 per second at 720p ($0.75 per 5s clip)
Fal.ai Cost

$300.00

Not available
Estimated Monthly Savings$-1200.00
Annual Savings$-14400.00

Detailed Pricing Breakdown

ProviderEstimated RateNotes
muapiapp$0.15 per second at 720p ($0.75 per 5s clip)Per-second pricing — 360p $0.05/s, 540p $0.07/s, 720p $0.15/s, 1080p $0.16/s. Pay only for what you render.
Fal.aiNot availableVidu Q3 Pro is not listed on Fal.ai at this time.
ReplicateNot availableVidu Q3 Pro is not listed on Replicate at this time.

Developer Integration Snippets

1import requests 2import time 3import json 4 5api_key = "YOUR_API_KEY" 6url = "https://api.muapi.ai/workflow/run/vidu-q3-pro-text-to-video" 7 8def poll_for_result(run_id): 9 url = f"https://api.muapi.ai/workflow/run/{run_id}/api-outputs" 10 headers = { 11 "Content-Type": "application/json", 12 "x-api-key": f"{api_key}", 13 } 14 while True: 15 response = requests.get(url, headers=headers) 16 result = response.json() 17 18 if result['status'] == 'completed': 19 return json.loads(result['outputs']) 20 21 if result['status'] == 'failed': 22 raise Exception(result.get('error', 'Generation failed')) 23 24 time.sleep(5) 25 26data = { 27 "schemas": { 28 "input_data": { 29 "x-order-properties": [ 30 "prompt", 31 "resolution", 32 "aspect_ratio", 33 "duration", 34 "audio" 35 ], 36 "type": "object", 37 "properties": { 38 "prompt": { 39 "examples": [ 40 "The whale crashes downward through the street, releasing an enormous wave of water that floods the city instantly. Cars flip and streetlights bend while the camera dives through the rushing floodwater beside the whale." 41 ], 42 "description": "Text prompt describing the video.", 43 "type": "string", 44 "title": "Prompt", 45 "name": "prompt" 46 }, 47 "resolution": { 48 "enum": [ 49 "360p", 50 "540p", 51 "720p", 52 "1080p" 53 ], 54 "title": "Resolution", 55 "name": "resolution", 56 "type": "string", 57 "description": "The resolution of the generated video.", 58 "default": "720p" 59 }, 60 "aspect_ratio": { 61 "enum": [ 62 "16:9", 63 "9:16", 64 "4:3", 65 "3:4", 66 "1:1" 67 ], 68 "title": "Aspect Ratio", 69 "name": "aspect_ratio", 70 "type": "string", 71 "description": "Aspect ratio of the output video.", 72 "default": "16:9" 73 }, 74 "duration": { 75 "title": "Duration", 76 "name": "duration", 77 "type": "int", 78 "description": "The duration of the generated video in seconds.", 79 "default": 5, 80 "minValue": 1, 81 "maxValue": 16, 82 "step": 1 83 }, 84 "audio": { 85 "type": "boolean", 86 "title": "Audio", 87 "name": "audio", 88 "description": "Whether to generate audio for the video.", 89 "default": false 90 } 91 }, 92 "title": "BaseInput", 93 "required": [ 94 "prompt" 95 ], 96 "endpoint_url": "vidu-q3-pro-text-to-video" 97 }, 98 "output_data": { 99 "x-fal-order-properties": [ 100 "video" 101 ], 102 "type": "object", 103 "properties": { 104 "video": { 105 "examples": [ 106 "https://d3adwkbyhxyrtq.cloudfront.net/webassets/videomodels/vidu-q3-pro-text-to-video.mp4" 107 ], 108 "description": "The generated video", 109 "title": "Video", 110 "comparison": false 111 } 112 }, 113 "title": "ViduQ3ProT2V", 114 "required": [ 115 "video" 116 ] 117 } 118 } 119} 120 121headers = { 122 "Content-Type": "application/json", 123 "x-api-key": f"{api_key}", 124} 125 126response = requests.post(url, json=data, headers=headers) 127 128result = response.json() 129print("Queued:", result) 130 131outputs = poll_for_result(result["run_id"]) 132print("Completed:", outputs) 133

Model FAQ

Ready to scale your production?

Get instant access to developer keys. Integrate high-speed dynamic models in minutes with our robust SDKs.