AI Music APIs Compared: Mureka vs MiniMax vs ElevenLabs vs Lyria 3 Pro
12 min read • July 17, 2026
Table of contents
- Introduction
- The lineup and what a track costs
- How we tested
- Part 1 — Instrumentals
- Part 2 — Vocals, model writes the lyrics
- Part 3 — Vocals, our lyrics and an elaborate style brief
- What we learned
- FAQ
Introduction
We gave the same briefs to five AI music models — Mureka O2, Mureka V9, MiniMax music-2.6, ElevenLabs music-v1, and Google’s Lyria 3 Pro — through useapi.net, and published every result: 30 full tracks below, with real prices, generation times, and the quirks we hit along the way. Three test formats, two rounds each: pure instrumentals, vocals where the model writes its own lyrics, and vocals singing lyrics we wrote. Every model in a round gets the identical brief, so what you hear is the model, not the prompt.
The five models arrive through three services — Mureka directly (the strongest Suno and Udio alternative in the group), MiniMax and ElevenLabs through PixVerse, and Lyria 3 Pro through Flow Music. One useapi.net token drives all three. If you want the copy-paste quick starts instead of a listening test, see the Mureka tutorial and the Flow Music tutorial.
Short on time? The whole test is also a 15-minute YouTube video — a skimmable cut with every track’s best 30 seconds back to back, loudness-matched, with the prompt, model, cost, and generation time on screen. The full-length tracks and the exact API call behind each one live on this page.
The lineup and what a track costs
| Model | useapi.net API | Cost per track | Official API |
|---|---|---|---|
| Mureka O2 | Mureka API | $0.0135 | Official Mureka API starts at $1,000/month at 3¢/song |
| Mureka V9 | Mureka API | $0.0135 | same as above |
| MiniMax music-2.6 | PixVerse API | $0.16 | ~$0.15/track up to 5 min |
| ElevenLabs music-v1 | PixVerse API | $0.60 | $0.15/min, about $0.75 for 5 min |
| Lyria 3 Pro | Flow Music API | ~$0.008–0.013 | $0.08/song on Google’s official API |
Per-track figures are what the underlying account plan works out to — Mureka Premier at $27/month for 2,000 songs, PixVerse credits at $0.004 each on the $60/month Premium plan, Flow Music paid plans. On top of the account you pay useapi.net’s flat $15/month for API access to every supported service, with no per-generation surcharge. The standouts are at the extremes: Lyria through Flow Music runs six to ten times cheaper than Google’s own API for the same model, and Mureka through useapi.net is about half the official per-song rate with no $1,000/month floor. For ElevenLabs the PixVerse route is about running everything through one account rather than price — at the one-minute tracks it likes to produce, the official API is cheaper.
One playback note before you listen: Flow Music offers a lossless WAV alongside its m4a, so the Lyria players below are WAVs — the rest are the mp3s their APIs return.
How we tested
Every prompt asked for “around 60 seconds” (spoiler: only one model listened — see what we learned). Generation times are wall-clock through the API, polled at 15-second intervals, so treat them as ballpark. Where a model titles its own output we kept the title. Tracks are complete and unedited.
Part 1 — Instrumentals
Round 1: big-band noir
A retro secret-agent groove — walking bass, stabbing brass, surf-twang guitar. Rhythm feel and section writing are hard to fake:
Big-band noir action theme, around 60 seconds. Walking upright-bass and
baritone-sax groove, snapping rimshot snare, stabbing trumpet-section hits,
vibraphone glints, surf-twang guitar riff over a chromatic minor progression,
roaring full-brass climax with crash cymbals. Retro secret-agent swagger,
punchy analog-style production.
Mureka O2 — “The Dead Drop” · 3:19 · generated in 119 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-instrumental' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="O2"' \
--form 'prompt="Big-band noir action theme, around 60 seconds. Walking upright-bass and baritone-sax groove, snapping rimshot snare, stabbing trumpet-section hits, vibraphone glints, surf-twang guitar riff over a chromatic minor progression, roaring full-brass climax with crash cymbals. Retro secret-agent swagger, punchy analog-style production."'
Mureka V9 — “Dead End Alley” · 3:28 · generated in 85 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-instrumental' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="V9"' \
--form 'prompt="Big-band noir action theme, around 60 seconds. Walking upright-bass and baritone-sax groove, snapping rimshot snare, stabbing trumpet-section hits, vibraphone glints, surf-twang guitar riff over a chromatic minor progression, roaring full-brass climax with crash cymbals. Retro secret-agent swagger, punchy analog-style production."'
MiniMax music-2.6 · 2:11 · generated in 99 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-2.6"' \
--form 'instrumental="true"' \
--form 'prompt="Big-band noir action theme, around 60 seconds. Walking upright-bass and baritone-sax groove, snapping rimshot snare, stabbing trumpet-section hits, vibraphone glints, surf-twang guitar riff over a chromatic minor progression, roaring full-brass climax with crash cymbals. Retro secret-agent swagger, punchy analog-style production."'
ElevenLabs music-v1 · 1:00 · generated in 16 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-v1"' \
--form 'instrumental="true"' \
--form 'prompt="Big-band noir action theme, around 60 seconds. Walking upright-bass and baritone-sax groove, snapping rimshot snare, stabbing trumpet-section hits, vibraphone glints, surf-twang guitar riff over a chromatic minor progression, roaring full-brass climax with crash cymbals. Retro secret-agent swagger, punchy analog-style production."'
Lyria 3 Pro — “The Shadow Trail” · 2:59 · generated in 34 s
Show the API call
curl --location 'https://api.useapi.net/v1/flowmusic/music' \
--header 'Authorization: Bearer user:12345-…' \
--form 'instrumental="true"' \
--form 'prompt="Big-band noir action theme, around 60 seconds. Walking upright-bass and baritone-sax groove, snapping rimshot snare, stabbing trumpet-section hits, vibraphone glints, surf-twang guitar riff over a chromatic minor progression, roaring full-brass climax with crash cymbals. Retro secret-agent swagger, punchy analog-style production."'
Note the lengths: same brief, same “around 60 seconds” request — ElevenLabs delivered exactly 1:00, everyone else played on.
Round 2: liquid drum and bass
Maximum contrast with round 1 — a steady 174 BPM groove exposes rhythm programming and texture instead of dynamics:
Liquid drum and bass instrumental, around 60 seconds. Fast rolling breakbeats
at 174 BPM, deep warm sub-bass, lush atmospheric pads, delicate piano motif,
airy wordless vocal-chop textures, smooth builds into a euphoric flowing drop.
Silky, melodic, late-night energy, pristine modern production.
Mureka O2 — “Silver Lining” · 3:19 · generated in 86 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-instrumental' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="O2"' \
--form 'prompt="Liquid drum and bass instrumental, around 60 seconds. Fast rolling breakbeats at 174 BPM, deep warm sub-bass, lush atmospheric pads, delicate piano motif, airy wordless vocal-chop textures, smooth builds into a euphoric flowing drop. Silky, melodic, late-night energy, pristine modern production."'
Mureka V9 — “Silken Motif” · 2:31 · generated in 67 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-instrumental' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="V9"' \
--form 'prompt="Liquid drum and bass instrumental, around 60 seconds. Fast rolling breakbeats at 174 BPM, deep warm sub-bass, lush atmospheric pads, delicate piano motif, airy wordless vocal-chop textures, smooth builds into a euphoric flowing drop. Silky, melodic, late-night energy, pristine modern production."'
MiniMax music-2.6 · 2:22 · generated in 119 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-2.6"' \
--form 'instrumental="true"' \
--form 'prompt="Liquid drum and bass instrumental, around 60 seconds. Fast rolling breakbeats at 174 BPM, deep warm sub-bass, lush atmospheric pads, delicate piano motif, airy wordless vocal-chop textures, smooth builds into a euphoric flowing drop. Silky, melodic, late-night energy, pristine modern production."'
ElevenLabs music-v1 · 1:00 · generated in 16 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-v1"' \
--form 'instrumental="true"' \
--form 'prompt="Liquid drum and bass instrumental, around 60 seconds. Fast rolling breakbeats at 174 BPM, deep warm sub-bass, lush atmospheric pads, delicate piano motif, airy wordless vocal-chop textures, smooth builds into a euphoric flowing drop. Silky, melodic, late-night energy, pristine modern production."'
Lyria 3 Pro — “Silky Liquid Flow” · 2:54 · generated in 50 s
Show the API call
curl --location 'https://api.useapi.net/v1/flowmusic/music' \
--header 'Authorization: Bearer user:12345-…' \
--form 'instrumental="true"' \
--form 'prompt="Liquid drum and bass instrumental, around 60 seconds. Fast rolling breakbeats at 174 BPM, deep warm sub-bass, lush atmospheric pads, delicate piano motif, airy wordless vocal-chop textures, smooth builds into a euphoric flowing drop. Silky, melodic, late-night energy, pristine modern production."'
Part 2 — Vocals, model writes the lyrics
Round 3: pop duet
One sentence of direction, and a deliberate capability probe — a duet only works if the model can stage two voices. That is the thing to listen for in this round, and it is the clearest differentiator of the six.
A playful pop duet between a male and a female singer about texting too late
at night, around 60 seconds, catchy back-and-forth chorus.
Mureka O2 — “Don’t Hit Send” · 3:18 · generated in 80 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="O2"' \
--form 'prompt="A playful pop duet between a male and a female singer about texting too late at night, around 60 seconds, catchy back-and-forth chorus."'
Mureka V9 — “Midnight Dance” · 2:53 · generated in 62 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="V9"' \
--form 'prompt="A playful pop duet between a male and a female singer about texting too late at night, around 60 seconds, catchy back-and-forth chorus."'
MiniMax music-2.6 · 2:40 · generated in 97 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-2.6"' \
--form 'prompt="A playful pop duet between a male and a female singer about texting too late at night, around 60 seconds, catchy back-and-forth chorus."'
ElevenLabs music-v1 · 1:00 · generated in 16 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-v1"' \
--form 'prompt="A playful pop duet between a male and a female singer about texting too late at night, around 60 seconds, catchy back-and-forth chorus."'
Lyria 3 Pro — “Don’t Say Goodnight” · 2:58 · generated in 79 s
Show the API call
curl --location 'https://api.useapi.net/v1/flowmusic/music' \
--header 'Authorization: Bearer user:12345-…' \
--form 'prompt="A playful pop duet between a male and a female singer about texting too late at night, around 60 seconds, catchy back-and-forth chorus."'
Round 4: Spanish flamenco-pop
The language probe — the prompt is English, the song should not be:
A fiery flamenco-pop song in Spanish about summer rain, around 60 seconds,
passionate female vocals.
Mureka O2 — “El llanto del sol” · 3:59 · generated in 79 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="O2"' \
--form 'prompt="A fiery flamenco-pop song in Spanish about summer rain, around 60 seconds, passionate female vocals."'
Mureka V9 — “Lluvia de Verano” · 2:32 · generated in 63 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="V9"' \
--form 'prompt="A fiery flamenco-pop song in Spanish about summer rain, around 60 seconds, passionate female vocals."'
MiniMax music-2.6 · 2:57 · generated in 113 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-2.6"' \
--form 'prompt="A fiery flamenco-pop song in Spanish about summer rain, around 60 seconds, passionate female vocals."'
ElevenLabs music-v1 · 1:00 · generated in 17 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-v1"' \
--form 'prompt="A fiery flamenco-pop song in Spanish about summer rain, around 60 seconds, passionate female vocals."'
Lyria 3 Pro — “Tierra Mojada” · 2:34 · generated in 64 s
Show the API call
curl --location 'https://api.useapi.net/v1/flowmusic/music' \
--header 'Authorization: Bearer user:12345-…' \
--form 'prompt="A fiery flamenco-pop song in Spanish about summer rain, around 60 seconds, passionate female vocals."'
All five accepted the brief and every model sang in Spanish. Lyria even wrote a full Spanish lyric sheet (“Cae el peso del cielo gris / Sobre el polvo de este jardín…”) and titled the track accordingly, as did both Murekas.
Part 3 — Vocals, our lyrics and an elaborate style brief
For the final format each model received the same original lyrics plus a detailed production brief. Mureka takes these through music/create-advanced (lyrics + a comma-separated style desc + vocal_gender), PixVerse and Flow Music take a lyrics field next to the style prompt.
Round 5: deep house
[Verse]
Two shadows in a velvet room
Moving slow to a midnight tune
Say it soft, we do not need more
The bass is talking through the floor
[Chorus]
Keep it low light, low light, hold me near
All we need is the bassline here
Round and round till the morning shows
Low light, low light, do not let go
(do not let go, do not let go)
Deep house at 121 BPM. Rolling sub-bass groove, shuffled hi-hats, warm Rhodes
chord stabs, subtle chopped vocal echoes, smoky intimate female lead vocal,
understated hypnotic late-night club production.
Mureka O2 — “Low Light” · 3:13 · generated in 60 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-advanced' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="O2"' \
--form 'lyrics="[Verse]
Two shadows in a velvet room
Moving slow to a midnight tune
Say it soft, we do not need more
The bass is talking through the floor
[Chorus]
Keep it low light, low light, hold me near
All we need is the bassline here
Round and round till the morning shows
Low light, low light, do not let go
(do not let go, do not let go)"' \
--form 'desc="deep house, late night, smoky, hypnotic, groovy, 121 bpm, female vocals, warm, understated club production"' \
--form 'vocal_gender="female"'
Mureka V9 — “Low Light” · 2:39 · generated in 57 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-advanced' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="V9"' \
--form 'lyrics="[Verse]
Two shadows in a velvet room
Moving slow to a midnight tune
Say it soft, we do not need more
The bass is talking through the floor
[Chorus]
Keep it low light, low light, hold me near
All we need is the bassline here
Round and round till the morning shows
Low light, low light, do not let go
(do not let go, do not let go)"' \
--form 'desc="deep house, late night, smoky, hypnotic, groovy, 121 bpm, female vocals, warm, understated club production"' \
--form 'vocal_gender="female"'
MiniMax music-2.6 · 1:06 · generated in 59 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-2.6"' \
--form 'prompt="Deep house at 121 BPM. Rolling sub-bass groove, shuffled hi-hats, warm Rhodes chord stabs, subtle chopped vocal echoes, smoky intimate female lead vocal, understated hypnotic late-night club production."' \
--form 'lyrics="[Verse]
Two shadows in a velvet room
Moving slow to a midnight tune
Say it soft, we do not need more
The bass is talking through the floor
[Chorus]
Keep it low light, low light, hold me near
All we need is the bassline here
Round and round till the morning shows
Low light, low light, do not let go
(do not let go, do not let go)"'
ElevenLabs music-v1 · 0:40 · generated in 29 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-v1"' \
--form 'prompt="Deep house at 121 BPM. Rolling sub-bass groove, shuffled hi-hats, warm Rhodes chord stabs, subtle chopped vocal echoes, smoky intimate female lead vocal, understated hypnotic late-night club production."' \
--form 'lyrics="[Verse]
Two shadows in a velvet room
Moving slow to a midnight tune
Say it soft, we do not need more
The bass is talking through the floor
[Chorus]
Keep it low light, low light, hold me near
All we need is the bassline here
Round and round till the morning shows
Low light, low light, do not let go
(do not let go, do not let go)"'
Lyria 3 Pro — “Low Light (Take 2)” · 2:32 · generated in 44 s
Show the API call
curl --location 'https://api.useapi.net/v1/flowmusic/music' \
--header 'Authorization: Bearer user:12345-…' \
--form 'prompt="Deep house at 121 BPM. Rolling sub-bass groove, shuffled hi-hats, warm Rhodes chord stabs, subtle chopped vocal echoes, smoky intimate female lead vocal, understated hypnotic late-night club production."' \
--form 'lyrics="[Verse]
Two shadows in a velvet room
Moving slow to a midnight tune
Say it soft, we do not need more
The bass is talking through the floor
[Chorus]
Keep it low light, low light, hold me near
All we need is the bassline here
Round and round till the morning shows
Low light, low light, do not let go
(do not let go, do not let go)"'
Round 6: jazzy house duet
The hardest brief of the set — a two-voice arrangement with live-jazz layers over a house groove, voice roles tagged in the lyrics. The tags are a hint, not an API parameter, so listen for who actually trades verses between a male and a female voice and who flattens it into one singer:
[Verse 1 - male]
Blue hour settles on the avenue
Trumpet smoke and a table for two
I talk in rhythm, you answer in rhyme
We swing together on borrowed time
[Verse 2 - female]
You bring the thunder of a double bass
I bring the shimmer of a satin dress
Piano is asking what the night is about
We are the answer when the lights go out
[Chorus - both]
Meet me in the blue hour, where the bass goes slow (blue hour, blue hour)
Sax on the corner and the lights burn low (burn low, burn low)
You take the high note, I will hold the ground
Blue hour, blue hour - do not stop the sound
Jazzy deep house duet at 120 BPM. Rolling deep-house groove with swung hi-hats,
walking upright-bass motif over the sub, smoky muted trumpet and tenor-sax licks
answering the vocals, extended jazz piano chords, a male and a female lead
trading verses and joining in harmony on the chorus, small backing ensemble
echoing the hook, warm vinyl texture, sophisticated late-night club production.
Mureka O2 — “Blue Hour” · 2:49 · generated in 59 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-advanced' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="O2"' \
--form 'lyrics="[Verse 1 - male]
Blue hour settles on the avenue
Trumpet smoke and a table for two
I talk in rhythm, you answer in rhyme
We swing together on borrowed time
[Verse 2 - female]
You bring the thunder of a double bass
I bring the shimmer of a satin dress
Piano is asking what the night is about
We are the answer when the lights go out
[Chorus - both]
Meet me in the blue hour, where the bass goes slow (blue hour, blue hour)
Sax on the corner and the lights burn low (burn low, burn low)
You take the high note, I will hold the ground
Blue hour, blue hour - do not stop the sound"' \
--form 'desc="jazzy deep house, jazz house, duet, male and female vocals, group backing vocals, muted trumpet, saxophone, upright bass, swung, 120 bpm, late night, warm sophisticated production"'
Mureka V9 — “Blue Hour” · 2:27 · generated in 72 s
Show the API call
curl --location 'https://api.useapi.net/v1/mureka/music/create-advanced' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="V9"' \
--form 'lyrics="[Verse 1 - male]
Blue hour settles on the avenue
Trumpet smoke and a table for two
I talk in rhythm, you answer in rhyme
We swing together on borrowed time
[Verse 2 - female]
You bring the thunder of a double bass
I bring the shimmer of a satin dress
Piano is asking what the night is about
We are the answer when the lights go out
[Chorus - both]
Meet me in the blue hour, where the bass goes slow (blue hour, blue hour)
Sax on the corner and the lights burn low (burn low, burn low)
You take the high note, I will hold the ground
Blue hour, blue hour - do not stop the sound"' \
--form 'desc="jazzy deep house, jazz house, duet, male and female vocals, group backing vocals, muted trumpet, saxophone, upright bass, swung, 120 bpm, late night, warm sophisticated production"'
MiniMax music-2.6 · 1:35 · generated in 62 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-2.6"' \
--form 'prompt="Jazzy deep house duet at 120 BPM. Rolling deep-house groove with swung hi-hats, walking upright-bass motif over the sub, smoky muted trumpet and tenor-sax licks answering the vocals, extended jazz piano chords, a male and a female lead trading verses and joining in harmony on the chorus, small backing ensemble echoing the hook, warm vinyl texture, sophisticated late-night club production."' \
--form 'lyrics="[Verse 1 - male]
Blue hour settles on the avenue
Trumpet smoke and a table for two
I talk in rhythm, you answer in rhyme
We swing together on borrowed time
[Verse 2 - female]
You bring the thunder of a double bass
I bring the shimmer of a satin dress
Piano is asking what the night is about
We are the answer when the lights go out
[Chorus - both]
Meet me in the blue hour, where the bass goes slow (blue hour, blue hour)
Sax on the corner and the lights burn low (burn low, burn low)
You take the high note, I will hold the ground
Blue hour, blue hour - do not stop the sound"'
ElevenLabs music-v1 · 1:12 · generated in 32 s
Show the API call
curl --location 'https://api.useapi.net/v2/pixverse/music/create' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="music-v1"' \
--form 'prompt="Jazzy deep house duet at 120 BPM. Rolling deep-house groove with swung hi-hats, walking upright-bass motif over the sub, smoky muted trumpet and tenor-sax licks answering the vocals, extended jazz piano chords, a male and a female lead trading verses and joining in harmony on the chorus, small backing ensemble echoing the hook, warm vinyl texture, sophisticated late-night club production."' \
--form 'lyrics="[Verse 1 - male]
Blue hour settles on the avenue
Trumpet smoke and a table for two
I talk in rhythm, you answer in rhyme
We swing together on borrowed time
[Verse 2 - female]
You bring the thunder of a double bass
I bring the shimmer of a satin dress
Piano is asking what the night is about
We are the answer when the lights go out
[Chorus - both]
Meet me in the blue hour, where the bass goes slow (blue hour, blue hour)
Sax on the corner and the lights burn low (burn low, burn low)
You take the high note, I will hold the ground
Blue hour, blue hour - do not stop the sound"'
Lyria 3 Pro — “Blue Hour Duet (Retry)” · 3:03 · generated in 60 s
Show the API call
curl --location 'https://api.useapi.net/v1/flowmusic/music' \
--header 'Authorization: Bearer user:12345-…' \
--form 'prompt="Jazzy deep house duet at 120 BPM. Rolling deep-house groove with swung hi-hats, walking upright-bass motif over the sub, smoky muted trumpet and tenor-sax licks answering the vocals, extended jazz piano chords, a male and a female lead trading verses and joining in harmony on the chorus, small backing ensemble echoing the hook, warm vinyl texture, sophisticated late-night club production."' \
--form 'lyrics="[Verse 1 - male]
Blue hour settles on the avenue
Trumpet smoke and a table for two
I talk in rhythm, you answer in rhyme
We swing together on borrowed time
[Verse 2 - female]
You bring the thunder of a double bass
I bring the shimmer of a satin dress
Piano is asking what the night is about
We are the answer when the lights go out
[Chorus - both]
Meet me in the blue hour, where the bass goes slow (blue hour, blue hour)
Sax on the corner and the lights burn low (burn low, burn low)
You take the high note, I will hold the ground
Blue hour, blue hour - do not stop the sound"'
What we learned
Nobody has a duration parameter, and only one model listens to the prompt
None of the five APIs exposes a track-length parameter. Every brief above asked for “around 60 seconds” — here is what that request was worth across all our runs, including test takes not published here:
| Model | Asked for ~60 s, got | Verdict |
|---|---|---|
| ElevenLabs music-v1 | 1:00 on every prompt-only run | the only model that treats it as a spec |
| Lyria 3 Pro | ~0:59 on 2 prompts, 2:30–3:03 on the rest | occasionally |
| MiniMax music-2.6 | 1:20–2:57 | ignores it |
| Mureka O2 / V9 | 2:30–4:00 | ignores it |
The lever that actually works is lyric length. With our short one-verse-one-chorus lyrics in part 3, ElevenLabs came in at 0:40, MiniMax dropped to 1:06, and Mureka fell from its usual 3–4 minutes to as short as 0:50 in test takes. If you need a fixed-length cue, write fixed-length lyrics — or trim in post.
ElevenLabs refuses named artists and works, the rest do not
In side experiments we prompted “in the spirit of the James Bond GoldenEye title sequence” and, separately, “in the spirit of Pendulum and The Prodigy”. ElevenLabs music-v1 failed both generations at the service level — evidently a copyrighted-reference filter that catches both named works and named artists. Mureka O2, Mureka V9, MiniMax music-2.6, and Lyria 3 Pro accepted and generated both times. Style-descriptive prompts (like round 1’s unnamed secret-agent brief) sail through everywhere.
Speed, titles, and what lands in your bucket
ElevenLabs is in a different speed class — 16 to 32 seconds per track in our runs, wall-clock through the API. Lyria followed at 34–79 s, with Mureka V9 at 57–85 s and both Mureka O2 and MiniMax spanning 59–119 s. Mureka and Lyria name their own tracks — every title above is model-written, and in part 3 both pulled the name from our lyric hook, quirky suffixes included (“Take 2” and “Retry” on the Lyria tracks are Lyria’s own). The PixVerse-routed models return untitled files. Mureka gives you two variants per generation at 320 kbps, PixVerse one track at 192 kbps, and Flow Music usually an A/B pair with a lossless WAV available — the only lossless source in the group.
FAQ
Which AI music API is the cheapest? Per track in this lineup: Lyria 3 Pro via Flow Music at roughly $0.008–0.013, then Mureka at $0.0135 (Premier plan rate, two variants per generation), MiniMax music-2.6 at $0.16, and ElevenLabs music-v1 at $0.60 via PixVerse. See the lineup for how these compare with the official APIs.
Can I control how long the generated song is? Not with a parameter — no API here has one. Asking in the prompt only works reliably on ElevenLabs. The dependable lever is lyric length: short lyrics produce short songs on every model that accepts custom lyrics.
Can I bring my own lyrics? Yes on all five models: Mureka through music/create-advanced, MiniMax and ElevenLabs through the PixVerse lyrics field, and Lyria through the Flow Music lyrics field. Tag structure with [Verse] and [Chorus].
Will these models imitate a named artist or song? ElevenLabs refuses generation when the prompt names a work or artist — we hit its filter twice. The other four accepted named-reference prompts in our tests. Describing a style without names works on all five.
Ready to run your own listening test? The whole experiment is one script — github.com/useapi/ai-music-comparison sends any brief (the six above are included) to all five models and downloads every track. Then dig deeper with the Mureka and Flow Music tutorials, the PixVerse music endpoint, and a useapi.net subscription — one token, all five models.
Cross posted
Also published on dev.to, discussed on Reddit, and on YouTube as a 15-minute listening cut.