Skip to content
Playcut Docs

Lyria 3: Clip vs Pro, duration and credit pricing

Lyria 3 is Google’s music generation family on the Gemini API, and the only music model on Playcut. It comes in two tiers that share one endpoint: lyria-3-clip-preview produces a fixed 30-second track for 20 credits, and lyria-3-pro-preview produces a roughly two-minute, multi-section song for 40 credits. Both are multimodal — you can attach up to 10 reference images to steer mood, palette and energy — and both output 44.1 kHz stereo audio. Pricing is flat per song, not per second, so a failed idea costs the same as a good one. Iterate on Clip, then re-run the prompt you like on Pro.

Lyria 3 ClipLyria 3 Pro
Model idlyria-3-clip-previewlyria-3-pro-preview (default)
ProviderGoogle (Gemini API)Google (Gemini API)
Modestext to music, image-steered text to musictext to music, image-steered text to music
Durationfixed 30 s, no parameter~2 min, prompt-influenced only
Audio44.1 kHz stereo44.1 kHz stereo
Output formatMP3MP3
Max reference images1010
Credits20 / song40 / song

Aspect ratio and resolution do not apply — these are audio models.

Both tiers expose exactly the same two modes through the same request.

ModeInputNotes
Text to musicprompt (1–5,000 characters)The only required input.
Image-steered text to musicprompt + up to 10 image asset idsImages are ambient steering for mood, colour and energy.

Not available on either tier:

  • Streaming / real-time generation. Google ships that as a separate Lyria RealTime WebSocket API. Playcut does not integrate it.
  • Multi-turn editing or continuation. Lyria is single-turn. Every revision is a fresh, fully billed generation.

Reference images are not addressable from the prompt. Write “an ambient track inspired by this image”, not “use image 2 for the chorus” — there is no mechanism to target a specific image.

Images you do not own, and images that fail to download, are skipped silently. A generation can therefore succeed with fewer images than you passed. The number actually sent back is reported on the task as metadata.referenceImageCount; check it if the result ignored a reference.

Both tiers return MP3. Google’s own documentation advertises a WAV option for Pro, but in live testing (July 2026) every request shape — including Google’s documented one — returned MP3 bytes. Playcut therefore does not offer a format option: there is nothing to choose.

Credits are held at submission and refunded in full if the task fails or is cancelled.

ModelCredits / songWhat you get
lyria-3-clip-preview20one 30 s track
lyria-3-pro-preview40one ~2 min song

Flat per song. There is no per-second math, no length surcharge, and no discount for a short result. A 2-minute song from Pro costs the same 40 credits as anything else Pro returns.

The content filter blocks names, not subject matter

Section titled “The content filter blocks names, not subject matter”

This is by far the most common music failure on Playcut, and it is counter-intuitive. Verified across real production runs:

Blocked — the prompt is rejected with PROHIBITED_CONTENT:

  • Real artist names (Future, Pop Smoke, Travis Scott, Bon Iver, T-Pain)
  • Real producer names (Metro Boomin, 808 Mafia, Southside, Pi’erre Bourne)
  • Real album names (Pluto, Astroworld, DS2, Whole Lotta Red)
  • Real song titles (Mask Off, Yes Indeed, Drip Too Hard)
  • Real persona or set names (King Vamp, La Flame, Pretty Flacko)
  • Any of the above inside a negation — “NEVER Bon Iver indie pop” still fails. Lyria reads the name, not the sentence logic.

Not blocked — these are safe and sanitizing them wastes iterations:

  • Drug references (Percs, lean, codeine, Xanax, Molly)
  • Brand names used as descriptors (Cartier, Dior, AP)
  • Geographic names (Brooklyn, Compton, Atlanta)
  • Gear and plugin names (Neumann, Valhalla, Soundtoys)
  • Drill slang on its own

The fix is always the same: delete the name and describe the style instead. Replace “like Metro Boomin” with “dark trap, detuned 808 slides, minor-key bell melody, sparse hi-hat triplets”.

Google additionally states that prompts requesting specific artist voices or the generation of copyrighted lyrics are blocked by policy.

Heavy stacking of violent imagery can trigger a separate, softer block. Fix that by removing the offending lyric line, not the vocabulary.

  • Newlines are preserved. Multi-line prompts reach Lyria with their line structure intact, so section tags like [Verse 1], [Chorus] and [0:00 - 0:30] timestamp blocks behave the same here as in Google’s AI Studio. Write structured prompts freely.
  • Length is a request, not a guarantee. Pro has no duration parameter. Asking for three minutes may still return about two. There is no partial-credit mechanism.
  • Clip’s 30 seconds is fixed by the provider. No prompt hint changes it.
  • Non-deterministic. The same prompt returns a different song every time. No seed parameter is documented.
  • Bitrate is undocumented. Google publishes the sample rate (44.1 kHz stereo) but not the MP3 bitrate. We will not guess one.
  • Every output carries a SynthID watermark. Imperceptible, always on, not opt-out.
  • An internal prompt rewriter runs before generation and the rewritten text is never returned, so a failure cannot be traced back to the final prompt Lyria actually saw. When a generation returns no audio, the worker logs the finishReason and safety ratings first — check those before debugging the prompt.
  • Both tiers are -preview models. Surface area, quota and pricing can change without notice.
  • No music tool in the tools registry. Unlike image, video, voice and actor generation, music has no /api/v1/tools/... entry and no MCP tool. It is only reachable at the dedicated REST endpoint below.

Music uses its own endpoint rather than the tools registry, but the same Authorization: Bearer pk_live_... API key from the Quickstart works.

Terminal window
curl -X POST https://api.playcut.ai/api/music/generate \
-H "Authorization: Bearer $PLAYCUT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"workerId": "65f3a1b2c3d4e5f600000001",
"prompt": "Warm lo-fi hip hop, dusty Rhodes chords, vinyl crackle, relaxed swung drums"
}'

The response is the standard async acknowledgement:

{ "success": true, "taskId": "65f3a1b2c3d4e5f600000002" }

Poll it with the get-task-status tool, exactly as in the Quickstart, then call get-asset with the resulting asset id to get a signed URL (valid ~1 hour) for the finished audio.

FieldRequiredNotes
promptyes1–5,000 characters
modelnolyria-3-pro-preview (default — billed 40 credits) or lyria-3-clip-preview
imageIdsnoup to 10 image asset ids
workerIdnosession to attach the generation to