Ulric
Book a call

Eugene, Oregon · one person, whole builds

Insights

MiniMax H3: the Hailuo image-to-video model, in practice

MiniMax H3: the Hailuo image-to-video model, in practice

MiniMax released H3 on 31 July 2026, put the weights on Hugging Face three days later, and attached a licence that names the United States as a territory the grant does not reach. It ranks third on a public image-to-video arena and first among open-weight models. Forty cents turns a client's product photograph into five seconds of video with sound. Every one of those sentences is load-bearing, and they do not all point the same way. The wider field survey covers who else is in the race; this is the one model, up close.

What is MiniMax H3?

It is Hailuo's general-purpose generation model. MiniMax's launch note, dated 31 July 2026, puts it plainly:

H3 understands unified context across text, images, video, and audio, generating video with native stereo sound, up to 15 seconds at 2K resolution.

The practical shape: one endpoint, one request body, and the roles inside it decide the mode. Output is 4 to 15 whole seconds at 24 fps, 768P or 2K, in seven aspect ratios, and every generation carries 32 kHz stereo audio made in the same pass rather than dubbed on. There is no silent mode. MiniMax's docs now list Hailuo 02 and 2.3 as legacy, with H3 and the faster H3-Max (480P or 768P, text and image to video only) as current.

Where does it actually rank?

Third, on both of Artificial Analysis's image-to-video boards, and first among models whose weights you can download.

Read on 5 September 2026, the with-audio image-to-video arena runs: MiniMax H3 Max post-trained by fal at an Elo of 1201, Dreamina Seedance 2.0 720p at 1191, MiniMax H3 at 1187, Gemini Omni Flash at 1180, Wan 3.0 at 1175. Exclude audio and H3 still sits third, at 1347. Among open-weight image-to-video models with audio, H3's 1187 leads MAGI-2 Preview at 1100 and LTX-2.5 Fast at 1045, which is not a close race.

Worth knowing what that number is made of. Artificial Analysis states the method on the page: "Users compare videos generated from the same input image and choose the result they prefer." Blind preference, one clip at a time. It cannot see whether shot three still matches shot one. Keep that for two sections' time.

One oddity in the top line: the model beating H3 is H3, post-trained by fal. The leader is a fine-tune of a base the community licence puts out of reach for a US company without a separate agreement from MiniMax.

What does an image-to-video call look like?

Like one POST with an array in it. From MiniMax's API reference, with a first frame attached:

curl --request POST \
  --url https://api.minimax.io/v2/video_generation \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "model": "MiniMax-H3",
  "content": [
    { "type": "text",
      "text": "The steam rises, the camera pushes in slowly." },
    { "type": "image_url",
      "image_url": { "url": "https://client-site.com/img/hero.jpg" },
      "role": "first_frame" }
  ],
  "resolution": "768P",
  "duration": 5
}'

The response is a task_id and nothing else; the create call is asynchronous and you poll until the file exists. Three constraints are easy to trip over. Every request needs one non-empty text item, so the prompt is required even when the image is doing the describing. first_frame and last_frame cannot appear alongside any reference_* role: the two modes are exclusive, not a menu. And input images must sit between 256 and 5760 pixels at an aspect ratio between 0.4 and 2.5, which rules out the very tall packshot a lot of product photography arrives as. Crop before you upload, not after the API refuses.

A diagram of one MiniMax H3 request. On the left, three input panels: a required text item; image_url items with role first_frame or last_frame, accepting zero, one or two images at 30 MB each, 256 to 5760 pixels, aspect ratio 0.4 to 2.5; and reference roles accepting up to 9 images, 3 video clips and 3 audio clips, 12 files total under a 64 MB body. In the centre, three pipeline stages: H3-Context-IR, API only, which serializes the context into an integrated description, a soundscape and a non-diegetic music line; H3-Base, weights released, a 33B dense single-stream transformer that outputs 768p; and H3-Regenerate-2K, API only, which regenerates the 768p result in context. On the right, three outputs: video at 4 to 15 seconds, 24 fps, 768P or 2K; 32 kHz stereo audio generated in the same pass; and a task_id for polling.

The middle column of that diagram is the part most write-ups skip. H3 is not one model call, it is three modules, and a system called H3-Context-IR rewrites everything you sent into a structured intermediate representation before the video model sees it. MiniMax publishes its output in the reproducible scripts on the model card. It has three named parts:

integrated_multimodal_description: [Shot 1] Cinematic, medium wide
  shot, pushing in slowly. In the cavernous, dimly lit bridge of a
  starship... [Shot 2] At 00:04.500, the camera cuts to a close-up...
overall_soundscape: A low, resonant hum of the ship's ambient life
  support systems serves as the baseline, soon drowned out by...
non_diegetic_music: Cinematic space-opera orchestral score, slow
  tempo, featuring a solitary, mournful French horn melody...

That is what a prompt looks like by the time H3 acts on it: picture, diegetic sound and score described separately, with timecodes. The prompt-structure learning curve reviewers complain about is the gap between what a person types and that. Write in that register yourself, or pay for the module that does it.

What does a clip actually cost?

Forty cents for five seconds at 768P on MiniMax's own API, thirty on fal, and the whole pricing model is multiplication.

MiniMax bills $0.08 per second at 768P and $0.13 at 2K, Replicate resells at the same two numbers, and fal runs cheaper at the bottom: $0.05 at 480p, $0.06 at 768p, then $0.13 at 2K and $0.16 at 4K. That last tier is worth a flag: MiniMax's own API reference documents 768P and 2K only, so fal's 4K is uncorroborated by the maker. Audio input is free, and the first five reference images are free and $0.04 each after.

A price table for MiniMax H3 read from vendor pages on 5 September 2026, showing dollars per second of output by resolution and host: 480P at $0.05 on MiniMax H3-Max and $0.05 on fal; 768P at $0.08 on MiniMax, $0.06 on fal and $0.08 on Replicate; 2K at $0.13 everywhere; and 4K at $0.16 on fal only. Beside it, a worked example of a five-clip social pack costing $2.00 first attempt, $1.50 on fal, $6.00 at three takes each, plus $1.25 to regenerate the keepers to 2K. A panel quotes the H3 licence: Excluded Territories means the European Union, the United Kingdom, the Republic of Korea and the United States of America.

Studio arithmetic, since that is the number that decides anything. My standing rule for social video is a clip of 5 to 30 seconds, never past 35, so H3's 15-second ceiling is not the binding constraint. Takes are. Five clips at five seconds is $2.00 on a first attempt, $6.00 at three attempts apiece, then $1.25 to regenerate the keepers to 2K. Price per second tells you what one attempt costs. Nobody publishes attempts per usable clip, and I have not run enough to publish one either.

Can a US studio run the open weights?

No. Not as the licence is written, and the wording is not ambiguous.

The MiniMax H3 Community License Agreement, dated 2 August 2026, limits its own scope in the first line and then defines the limit in section I:

"Applicable Territory" means worldwide, excluding the Excluded Territories. [...] "Excluded Territories" means the European Union, the United Kingdom, the Republic of Korea and the United States of America.

The grant in section II is made "solely within the Applicable Territory", and section V.4 closes the obvious workaround: "You may not use, reproduce, modify, distribute, or display the MiniMax H3 Works or any of their Outputs or results outside the Applicable Territory." Outputs, not just weights. The launch note had flagged it in the softest language available, promising weights "subject to applicable laws and regulations". Two other clauses worth knowing: above $20 million in yearly revenue you need written authorization before commercial use at all, and the exact wording Powered by MiniMax H3 is only encouraged (III.3), but section IV.2 does require a commercial product to display "MiniMax H3" on its interface.

Renting the model through MiniMax's API, fal or Replicate is a different contract, and it is the route open to a US business today. Which is fine, because two other things would have stopped me. The open checkpoint is H3-Base alone, at 768p; the model card says of the 2K module, "Due to the complexity of the system, this module is not yet open-sourced." And a 33B dense transformer was never going to run on this machine, an Intel i7 with integrated Iris Plus graphics and no NVIDIA GPU at all. I settled that in August pricing out a self-hosted language model.

What do the reviewers say that the leaderboard does not?

That it comes apart when a lot is moving. Curious Refuge's hands-on review of 5 August 2026 reads as genuinely mixed rather than promotional: strong omni-modal control, real 2K, cheaper than Seedance for a comparable generation, and then this.

MiniMax H3 often struggled with large-scale action, introducing artifacts and movements that broke the illusion. [...] Texture instability, facial distortions, inconsistent compositing, and visual noise appeared throughout our testing.

Their summary: acceptable for social content, harder to recommend for high-end filmmaking, with weaker multi-shot continuity than Seedance. And MiniMax, in the same launch note that announced the model, lists under future priorities: "Visual detail can still be improved in certain scenarios." The maker and the sceptic agree.

So how is it third on the arena? Because the arena asks one blind question about one clip, and these complaints live where one clip cannot show them: continuity across shots, sustained action, a face holding still under scrutiny. A high Elo and a mediocre commercial edit are compatible findings about the same model.

What would I actually use it for?

Four things, in the order I would test them.

  • Product photography into motion. A client's existing hero shot as first_frame, five seconds at 768P, output ratio taken from the crop you upload, forty cents. The cheapest honest test of whether the model is any use to a brand, because the input already sits on their server and the failure shows in one viewing. Crop inside the 0.4-2.5 ratio window first.
  • First and last frame as a controlled transition. Two real photographs from the same shoot, the model asked only to fill the middle. Constraining both ends is the closest thing H3 offers to direction, and a four-second loop between two known states is the raw material for a scroll-scrubbed hero, where the visitor drags the frames rather than watching them and a wobble in the physics never plays at speed.
  • Decide about the audio before you pay for it. There is no silent mode, so every generation includes 32 kHz stereo whether the destination is a muted feed or not. For a reel with sound that saves a pass. For a page hero it is spend on a track nobody hears.
  • A ladder, not a favourite. Iterate at 480P on H3-Max, promote the survivors to 768P, regenerate only the keepers to 2K at $0.05 a second. Same structure as the model ladder I run for text: pick the tier by what a bad answer costs, not by how good the top of the range is.

What is honestly not there: no documented free API tier (fal gives signed-in users five free H3 Max generations a day, a trial rather than a pipeline), no 4K in MiniMax's own documentation, and no camera-control parameter. Camera moves are prompt text, a request rather than an instruction, and the distance between that and a world model you steer with a camera is the distance between describing a shot and taking one. Measure attempts per usable clip in a first test, not seconds of output, for the same reason a pipeline can report success it did not achieve: the receipt and the artifact are different objects.

What to check before a client's photographs go in

The licence you grant, not the one you get. Hailuo's consumer terms of service, last modified 19 August 2026 and entered into with Nanonoble Pte. Ltd. of Singapore, do not claim ownership of what you make, and then say this:

By using the Services, you grant to us, our affiliates, successors, and assigns a royalty-free, perpetual, irrevocable, worldwide, non-exclusive right (including any moral rights) and license to use, license, reproduce, modify, adapt, publish [...] derive revenue or other remuneration from, and communicate to the public, perform and display your User Contributions and User Generated Content [...] This license survives termination of this Agreement by any party, for any reason.

User Contributions is the input. That clause covers the photographs you upload as much as the video that comes back, and a photographer's release to a client rarely contemplates it. The same terms forbid removing the AI watermark or metadata. Hailuo's privacy policy says personal data generally stays in Singapore and that uploaded photos are deleted after generation, but says nothing about training on inputs, and it is the consumer policy, not the API contract: if a client's material carries residency obligations, contract for them rather than infer them. And if the clip is going on a property listing, check the MLS's rules on generated images before it publishes, not after.

The one thing I could not settle in a day is the contract that governs the API rather than the consumer app: MiniMax's platform terms render in JavaScript and I could not pull primary text, so I am not going to characterise them from a summary. Two cheap things would settle it: a plain-text copy of the platform agreement, and a written answer from [email protected] about retention and training on API inputs. The technical report MiniMax promised on 31 July has not appeared either. When it does, the interesting number in it will be the one the arena cannot see.

Common questions

How much does a MiniMax H3 clip cost?

MiniMax bills $0.08 per second of output at 768P and $0.13 at 2K, so a five-second clip is $0.40 or $0.65, and Replicate resells at the same two prices. fal is cheaper at the bottom, listing $0.05 per second at 480p and $0.06 at 768p. Audio input is free, the first five reference images are free and then $0.04 each, and upgrading an existing 768P clip to 2K is $0.05 per second with the original inputs billed again. Prices read from each vendor page on 5 September 2026.

Can a US company self-host the MiniMax H3 open weights?

No, not under the licence as written. The MiniMax H3 Community License Agreement dated 2 August 2026 grants rights only within an "Applicable Territory" defined as worldwide excluding the Excluded Territories, and it defines Excluded Territories as the European Union, the United Kingdom, the Republic of Korea and the United States of America. Section V.4 extends the restriction to outputs. Using the model through MiniMax, fal or Replicate is a separate contract governed by those services terms.

Does MiniMax H3 generate audio?

Yes, on every generation, and there is no silent mode. The model predicts video and audio latents together and returns 32 kHz stereo covering dialogue, foley, ambience and score. For a reel with sound that removes a production step. For a page hero on a muted feed it is spend on a track nobody will hear, so decide which you are making before you pay for it.

Why do the reviews criticise a model ranked third on the arena?

Because they are measuring different things and both results are true. The Artificial Analysis arena is blind preference between two single clips generated from the same input, which cannot show whether shot three still matches shot one. Reviewers testing sustained action and multi-shot sequences reported artifacts, texture instability and continuity breaking down, and MiniMax itself lists visual detail as an area still to improve.

Related

← All insights