MiniMax H3 vs Seedance 2.5: API, Pricing and 8 Real Clips

MiniMax H3 vs Seedance 2.5: I fired 8 clips through both APIs and measured cost, latency, resolution and audio. Full pricing tables and Python code.

MiniMax Hailuo H3 vs Seedance 2.5 comparison, featured image from a native 2K H3 generation

MiniMax shipped Hailuo H3 as a native 2K model, and the number that made me stop was the price: $0.1625 per second of finished 2K video. Seedance 2.5, the model I reach for most often, charges $0.2386 per second at 720p. That is a higher price for a quarter of the pixels, which sounded wrong enough that I went and measured it.

So I ran the same three prompts through both APIs on Segmind, plus a resolution test and a re-run, eight clips in total, and logged the billed cost, the wall clock latency, the real output dimensions and the audio levels of every one. This post is what came back. There is a genuine winner on price per pixel, a genuine winner on speed and control, and one reliability problem I would not have found without firing twice.

What MiniMax Hailuo H3 actually is

H3 is the third generation of the Hailuo line, after Hailuo 01 and 02. Where the earlier models were specialised short form generators, H3 is an omni-modal system that reads text, images and video as one context, and it renders native 2K at 24fps with a synchronised stereo audio track in a single pass. No separate audio step, no upscaler.

On Segmind it arrives as three separate endpoints rather than one, which matters when you are wiring it up:

The text-to-video endpoint takes exactly four parameters: prompt, ratio, duration and resolution. That is the whole surface. Seedance 2.5 takes eleven, including seed, generate_audio, first_frame_url, last_frame_url, reference_images, reference_videos and reference_audios. Hold that thought, because the gap between four knobs and eleven knobs turns out to be the real story here, not the pixel count.

The pricing, and why H3 looks impossible

Both models bill per second of output, with resolution as the multiplier. Here is the full picture, taken from the rate tables behind each model page and confirmed against the x-cost header on my own generations:

ModelTierReal output sizePer second6s clipMax clip
Hailuo H3768P1344 x 768$0.1125$0.67515s / $1.6875
Hailuo H32K2560 x 1440$0.1625$0.97515s / $2.4375
Seedance 2.5480p854 x 480$0.1065$0.63930s / $3.195
Seedance 2.5720p1280 x 720$0.2386$1.43230s / $7.168
Seedance 2.51080p1920 x 1080$0.5876$3.52530s / $17.627

H3 sizes measured with ffprobe on my own output. Seedance 480p and 1080p sizes are the standard tier dimensions.

Normalise that to what you are actually buying, which is pixels per second of video. H3 at 2K delivers 3.69 megapixels a frame for $0.1625 a second, so $0.044 per megapixel-second. Seedance at 720p delivers 0.92 megapixels for $0.2386, so $0.259. H3 at its top tier is 5.9x cheaper per megapixel-second than Seedance at its middle tier, and 6.4x cheaper than Seedance 1080p while still carrying 78% more pixels than that tier does.

One more thing I did not expect. I asked for six seconds every time. H3 returned 6.58 seconds on all four of its fires, consistently, and billed the six second rate. Seedance returned 6.04 to 6.08 seconds. H3 quietly hands you about 9% more footage than you paid for.

Test 1: the product shot, for a marketing team

The agency case is the boring one that pays the bills: a clean product beauty shot, on brief, no surprises. I gave both models the same espresso pour with an explicit camera instruction.

Prompt used Macro shot of a matte black espresso machine on a marble counter at golden hour. A single stream of espresso falls into a clear glass cup, crema swirling on the surface. Steam curls upward through a shaft of warm window light. The camera pushes in slowly and settles as the cup fills. Sound: the low hum of the machine, the hiss of steam, espresso hitting glass, faint room tone. No music.

Parameters H3: resolution 2K, duration 6, ratio 16:9  |  Seedance: resolution 720p, duration 6, aspect_ratio 16:9, generate_audio true, seed 42

Hailuo H3 · 2K · $0.975

Seedance 2.5 · 720p · $1.432

Same prompt, same duration. H3 holds the commercial framing; Seedance travels much further on the same instruction.

H3 did what the brief said and nothing else. It held a wide product framing on the marble counter, pushed in gently, and the cup filled as the shot settled. Drop that in an ad cut and it works.

Seedance read the same words as permission to move. It starts on the machine with an empty glass and pushes all the way into an extreme macro of the crema, finishing on a shot so tight the product is gone. It is the more beautiful clip of the two and the less useful one, because the brand's machine is only on screen for the first two seconds. Neither is wrong. H3 is literal, Seedance is interpretive, and which you want depends on whether you are filling a storyboard slot or fishing for something better than you asked for.

Test 2: the cinematic scene, for a film team

Pre-visualisation is where a video model earns its place in a studio pipeline. The test is whether it can hold an atmosphere and a camera move at the same time.

Prompt used A lighthouse keeper in a heavy oilskin coat climbs a spiral iron staircase at dawn, a lantern swinging in one hand. Cold blue light spills through a narrow slit window and rakes across wet stone. The camera tracks upward beside him, then holds as he reaches the lamp room and the beam sweeps out over a grey sea. Anamorphic lensing, shallow depth of field, subtle handheld movement. Sound: boots on iron, wind through the tower, distant surf. No music.

Parameters H3: resolution 2K, duration 6, ratio 16:9  |  Seedance: resolution 720p, duration 6, aspect_ratio 16:9, generate_audio true, seed 42

Hailuo H3 · 2K · $0.975

Seedance 2.5 · 720p · $1.432

H3 renders one continuous take. Seedance cuts to an aerial at 4.7 seconds.

This is the clearest structural difference I found, and it is measurable rather than a matter of taste. I ran ffmpeg scene detection over every clip. H3 returned zero cuts on all four of its fires, at every threshold I tried. Seedance's lighthouse clip cuts once, at 4.71 seconds, from the tower interior to an aerial of the beam sweeping over open water.

Seedance is doing edit-level work. It read a six second brief with a beginning and an end and built a two shot sequence out of it, and the aerial it invented is the best single image either model produced. H3 gave me one unbroken move up the stairwell into the lamp room, and at 2560 x 1440 the wet stone and the Fresnel lens hold up at full size. If you are cutting your own sequence, H3's single takes are raw material you can trim. If you want a finished beat handed to you, Seedance is already editing.

Test 3: vertical for social, and a bug worth knowing about

Short form vertical is most of the volume for production houses and MCNs, so 9:16 is not an afterthought. I ran a high motion night market scene at 9:16 on both.

Prompt used Vertical handheld shot of a street food vendor in a night market tossing noodles in a blazing wok. Flames leap up and light his face from below. Neon signs glow behind him on a rain slick street. He glances up at the camera and grins, then turns back to the wok. Sound: the roar of the burner, sizzling oil, the clang of the spatula against steel, market chatter and light rain. No music.

Parameters H3: resolution 2K, duration 6, ratio 9:16  |  Seedance: resolution 720p, duration 6, aspect_ratio 9:16, generate_audio true, seed 42

Hailuo H3 · 2K · 1440 x 2560

Seedance 2.5 · 720p · rotated on this fire

H3 delivered a true 1440 x 2560 vertical. Seedance returned a correctly sized portrait file with the render lying on its side.

H3's vertical is excellent: a genuine 1440 x 2560 frame, the wok flare lighting the vendor's face from below, the grin landing on cue. It is the best clip of the eight for its intended use.

Seedance's came back sideways. The file is a correct 720 x 1280 portrait container with no rotation metadata, but the image inside it is landscape content turned 90 degrees, flames pointing left instead of up, for the entire clip. I re-fired 9:16 with a different prompt and a different seed to see whether vertical was simply broken, and it was not:

Second Seedance 9:16 fire, different prompt and seed. Correctly oriented, so the rotation is intermittent rather than systemic.

One in two of my 9:16 Seedance fires came back rotated. That is a small sample and I am not going to call it a failure rate, but it is enough that I would validate orientation programmatically before publishing vertical output from a batch job. A two line ffprobe check on width against height catches it, and the fire still bills whether the render lands upright or not. I have passed this one to the team.

The 768P tier is not a preview of the 2K tier

The obvious way to save money is to draft at the cheap tier, pick the winner, then re-render that one at 2K. That does not work on H3, and it is worth understanding why before you build a workflow around it.

H3 768P · $0.675 · 140.5s

H3 2K · $0.975 · 853.0s

Identical prompt at both tiers. Different framing, different lighting, different shot.

Same prompt, and the two tiers gave me completely different shots. The 768P run is a tighter, darker, moodier composition; the 2K run is wide and bright with a window in frame. Neither is a version of the other.

The cause is simple: H3 exposes no seed parameter at all. There is no way to pin a generation, so there is no way to reproduce one, and the cheap tier can only ever be a sample of the model's range rather than a preview of a specific shot. Seedance takes a seed and will hold a composition across resolution changes. If reproducibility is part of your pipeline, that single missing parameter matters more than the price gap.

Latency is where H3 gives the money back

Every fire below is a six second clip, timed end to end from a single sequential process in the same session:

FireModel and tierWall clockBilled
EspressoH3 2K853.0s$0.975
LighthouseH3 2K466.0s$0.975
Night marketH3 2K403.7s$0.975
EspressoH3 768P140.5s$0.675
EspressoSeedance 720p148.0s$1.432
LighthouseSeedance 720p112.9s$1.432
Night marketSeedance 720p170.7s$1.432
RooftopSeedance 720p151.1s$1.432

Eight fires on 3 September 2026. Sequential, one at a time, no parallelism.

H3 at 2K took 403 to 853 seconds, a median of 466. Seedance at 720p took 113 to 171 seconds, a median of about 150. So the cheap model is roughly three times slower at its top tier, and the spread is wide enough that you cannot promise a completion time to a user.

The interesting row is H3 at 768P: 140.5 seconds, right in Seedance's band, for a 1344 x 768 output that is 12% more pixels than Seedance's 720p at 47% of the price. That tier is the sweet spot for volume work. H3's 2K tier is the one you queue overnight.

Calling it from Python

Both endpoints are synchronous and return the MP4 as raw binary in the response body, so there is no polling and no job id to track. Set a long timeout and write the bytes straight to disk. Note the parameter names differ: H3 uses ratio, Seedance uses aspect_ratio.

import requests

def generate(slug, params, out, timeout=1800):
    r = requests.post(
        f"https://api.segmind.com/v1/{slug}",
        headers={"x-api-key": "YOUR_API_KEY"},
        json=params,
        timeout=timeout,
    )
    r.raise_for_status()
    open(out, "wb").write(r.content)
    print(out, r.headers.get("x-cost"), "USD")

# MiniMax Hailuo H3: native 2K, four parameters, no seed
generate("minimax-h3-text-to-video", {
    "prompt": "A lighthouse keeper climbs a spiral iron staircase at dawn, lantern in hand.",
    "ratio": "16:9",
    "duration": 6,
    "resolution": "2K",
}, "h3.mp4")

# Seedance 2.5: same job, seeded and reproducible
generate("seedance-2.5", {
    "prompt": "A lighthouse keeper climbs a spiral iron staircase at dawn, lantern in hand.",
    "aspect_ratio": "16:9",
    "duration": 6,
    "resolution": "720p",
    "generate_audio": True,
    "seed": 42,
}, "seedance.mp4")

Two things that will save you a run. Read the x-cost response header on every call, because it is the only per-generation record of what you actually spent. And if you write audio into the prompt, end the clause with "no music": Seedance runs a copyright check on its own output and will refuse to release a finished clip whose audio it thinks resembles music, after you have already waited for the render.

The audio nobody mentions

Both models ship a real stereo AAC track at 32kHz, and neither lets you turn it off on H3. I measured mean and peak levels on every clip, and the two behave very differently. On the quiet espresso scene H3 came back at -40.0 dB mean and -21.7 dB peak, against Seedance's -31.9 and -3.7. On the loud night market scene H3 was the louder of the two, -22.2 mean and -0.6 peak, close enough to clipping to matter.

H3 mixes to the scene, with a 17.8 dB spread between its quietest and loudest clip. Seedance normalises toward a consistent level, with a 7.4 dB spread. If you are dropping clips straight onto a timeline, Seedance's output is closer to usable as delivered. H3's needs a gain pass, and its quiet scenes need a lot of one.

Honest assessment

Where H3 wins. Price per pixel is not close: 5.9x cheaper per megapixel-second than Seedance 720p, and it is the only one of the two that gives you a true 2K master. It follows a camera instruction literally, holds a single unbroken take, and its 768P tier matches Seedance on speed while undercutting it on both price and resolution. For volume work where you own the edit, it is the better buy.

Where it loses. No seed, so nothing is reproducible and cheap drafting does not work. Four parameters total, so no first frame, no last frame and no reference images on the text endpoint. Fifteen seconds is the ceiling against Seedance's thirty. The 2K tier is three times slower. And the audio needs a mix pass. Seedance costs more per pixel and earns it back in control: a seed, a full reference stack, thirty second clips and shot level editing you did not have to ask for.

I would run H3 768P for volume, H3 2K for hero shots I can wait on, and Seedance for anything that has to match a character, a first frame or a previous take.

FAQ

Is MiniMax H3 cheaper than Seedance 2.5?
Per second, yes at every comparable tier. H3 2K is $0.1625 a second against Seedance 720p at $0.2386. Per pixel the gap is much wider, because H3's 2K output is four times the frame size of Seedance 720p.

What resolution does MiniMax H3 actually output?
Two tiers. 768P measures 1344 x 768, and 2K measures 2560 x 1440, both at 24fps. I confirmed both with ffprobe on real output rather than trusting the label.

How long can a MiniMax H3 clip be?
Four to fifteen seconds, any whole number. Seedance 2.5 goes to thirty. If you need a single shot longer than fifteen seconds, H3 cannot do it.

Does MiniMax H3 generate audio?
Yes, a synchronised stereo AAC track in the same pass, and there is no parameter to switch it off. Expect to ride the gain, since quiet scenes come back around -40 dB mean.

Can I reproduce a MiniMax H3 generation?
No. The API exposes no seed parameter, so the same prompt returns a different shot every time, including across resolution tiers. Seedance 2.5 takes a seed and does hold a composition.

Which is better for vertical short form video?
H3, on this test. It returned a true 1440 x 2560 vertical frame, while one of my two Seedance 9:16 fires came back with the render rotated 90 degrees inside a correctly sized portrait file.

The short version

Hailuo H3 is the cheapest route to a genuine 2K clip with audio that I have tested, by a wide margin, and it follows direction more literally than anything else in its price band. It pays for that with no seed, four parameters and a slow top tier. Seedance 2.5 costs more per pixel and gives you back reproducibility, references, thirty second durations and a model that edits. Run H3 at 768P for volume, and keep Seedance for the shots that have to match something.

Both are live on Segmind: MiniMax Hailuo H3 and Seedance 2.5, no setup, billed per second of output.