You asked for 140. You got something else.
The prompt said 140 bpm. The render comes back and it is not 140 โ it is somewhere near it, or it is half of it, or it sits at whatever tempo that genre usually sits at and your number was quietly overruled. Nothing warned you. Suno does not reject a tempo; it negotiates with it.
Understanding what it is negotiating against is the difference between a tempo you specified and a tempo you got.
Three things outrank your BPM number
The genre carries its own tempo. Every genre token in your prompt drags a distribution behind it. Ask for hardstyle, 95 bpm and you have handed the model two instructions that point in opposite directions โ hardstyle lives around 150, and the genre token is doing far more work in the model's representation than a bare number. The number does not win that fight. It does not even make it close.
The rhythm description implies a tempo. 16th hats, rapid rolls, 8 syl/sec and long tail kick all say something about speed. If your BPM says 90 and your percussion says 32nd-note rolls, the percussion is a much more concrete instruction than the number, and the render will follow it.
A second number cancels the first. This is the one nobody talks about, and it is the most common. It is covered in its own section below because we found it in our own tool, at a scale that surprised us.
The one-number rule
A prompt should state each number exactly once.
That sounds too obvious to be worth a heading. It is not, because tempo tends to appear in more than one place without anyone deciding it should. A style descriptor like [128BPM D major + arena melody] sits inside the style field. A separate bpm field says 116. Both are in the same prompt, and nothing in Suno resolves the conflict โ it averages, and averaging is exactly what a structured prompt exists to prevent.
We measured this against our own generator on 2026-07-30, across 8.000 sampled prompts covering all 40 modes:
| | Prompts that contradicted themselves | |---|---:| | Tempo | 91% | | Key | 90% | | Worst single case | 120 BPM apart |
Ninety-one per cent. Our own output, shipping two tempos and letting the model pick. It is fixed now โ the tool reconciles the descriptor to the field before the prompt is ever shown โ but the lesson generalises to any prompt you write by hand, in any tool:
Before you hit generate, search your prompt for every number. If a tempo or a key appears twice, delete one. You will hear the difference immediately in how tight the first bar is, because the model is no longer hedging between two grids.
Half-time is not a contradiction
One exception worth knowing, because it looks like a conflict and is not.
150 BPM and 75 BPM frequently describe the same record. Brazilian funk is the clearest case: the modern automotivo scene is written at 105-120 in the DAW while the same groove counted on the kick reads as 210-240. Neither number is wrong; they are two notations for one pocket.
That matters when you write the rhythm fields. If you state 110 BPM but describe a kick pattern that only makes sense at 220, you have not made an error โ you have made a decision, and you should make it explicitly:
- Put the tempo you want the grid quantised at in
bpm. - Describe the kick relative to that grid:
full bar 1,four-on-floor,
offbeat.
- Let
swingcarry the feel, not the tempo.
Where it does become a real conflict is when the two numbers are neither equal nor a 2:1 ratio โ 110 against 150, say. That is not a notation choice. That is two different records.
Copy-paste templates
Every template below is a real output of the VORAX generator, scored by the same engine the app uses โ not an example written by hand. All three are uptempo hardcore, the genre where tempo is least forgiving: at 185+ BPM there is no room for the model to hedge.
Template 1 โ quality score 100/100 (PREMIUM)
{"style":"uptempo mainstage distorted hardcore 2024-2026 NL, frenchcore underground [210BPM D minor + clipped saturated kick rave-stab fast + 2024-2026 FR]",
"length":"2 minutes","bpm":210,"drop":"bar 4 beat 1","key":"D minor",
"kick":"clipped foldback-distortion kick harsh 6dB drive",
"bass":"gabber bass-stab Rotterdam overdriven aggressive",
"melody":"frenchcore saturated clipped stab aggressive A3-E4",
"vocals":"no vocals, pure instrumental uptempo hardcore loop",
"percussion":"gabber clap + hat fast + crash Rotterdam hardcore",
"swing":"no swing uptempo straight hardcore grid",
"structure":"no intro, no vocals, full bar 1",
"texture":"gabber overdriven distortion mid-aggression",
"atmosphere":"warehouse rave dark uptempo hardcore",
"production":"minimal uptempo clean rave-stab forward",
"era":"2024-2026 gabber Rotterdam revival",
"dynamic":"build-drop uptempo into overdriven kick",
"mood":"dark hardcore uptempo dominant aggressive",
"negative":"no funk elements, no swing"}
The extreme-tempo template. Note that 210BPM in the style descriptor and "bpm":210 agree โ that is the one-number rule in practice. The token holding it together is "no swing uptempo straight hardcore grid": at 210 BPM any swing at all smears the kick into the next beat, so the prompt forbids it rather than leaving it to chance.
Template 2 โ quality score 100/100 (PREMIUM)
{"style":"uptempo hardcore distorted long-tail 2024-2026 NL, uptempo mainstage [185BPM B minor + distorted hardcore kick festival aggressive + 2024-2026 NL]",
"length":"2 minutes","bpm":185,"drop":"bar 2 beat 1","key":"B minor",
"kick":"clipped foldback-distortion kick harsh 6dB drive",
"bass":"distorted offbeat sub overdriven hardcore",
"melody":"rave-stab synth-brass detuned uptempo bright",
"vocals":"pitched-up shout +3st rhythmic dry offbeat uptempo",
"percussion":"gabber clap overdriven + hat 16th + ride hardcore",
"swing":"no swing gabber straight Rotterdam grid aggressive",
"structure":"no intro, full bar 1, 100% loop, no break",
"texture":"saturated clip distortion frenchcore mid-heavy",
"atmosphere":"warehouse rave dark uptempo hardcore",
"production":"underground gabber Rotterdam raw",
"era":"2022-2026 hardcore distorted",
"dynamic":"plateau uptempo aggressive 90% sustained",
"mood":"aggressive dominant uptempo hardcore dark menacing",
"negative":"no funk elements, no swing"}
The early-drop template: "drop":"bar 2 beat 1" with "dynamic":"plateau uptempo aggressive 90% sustained". Together they say the track never builds โ it starts at 90% and stays. If a render feels slow at the right BPM, this pair is almost always the fix, not a higher tempo.
Template 3 โ quality score 100/100 (PREMIUM)
{"style":"uptempo hardcore distorted long-tail 2024-2026 NL, uptempo hardcore [185BPM A minor + distorted long-tail kick gabber crossover + 2024-2026 NL]",
"length":"2 minutes","bpm":185,"drop":"bar 8 beat 1","key":"A minor",
"kick":"industrial tekk metallic distorted body cold",
"bass":"gabber distorted bass-stab downbeat overdriven",
"melody":"rave-stab synth-brass detuned uptempo bright",
"vocals":"pitched-up shout +3st rhythmic dry offbeat uptempo",
"percussion":"frenchcore snare buildup + clap + hat rapid fast",
"swing":"no swing uptempo straight Rotterdam hardcore",
"structure":"no intro, full bar 1, 100% loop, no break",
"texture":"overdriven distortion mid-aggression uptempo",
"atmosphere":"industrial drone low-mix uptempo aggressive space",
"production":"underground gabber Rotterdam raw",
"era":"2024-2026 uptempo hardcore mainstage",
"dynamic":"tension-release uptempo stripped into",
"mood":"hypnotic dark uptempo dominant aggressive",
"negative":"no funk elements, no swing"}
Same 185 BPM as template 2, drop pushed to bar 8, tension-release instead of plateau. Two prompts, one tempo, completely different records โ which is the point: tempo sets the grid, the drop and the dynamic decide whether it feels fast.
Pro tips you can actually hear
Give a number, never a range. 130-140 bpm is an invitation to average. Pick 134 and commit. If you want to explore the range, change the number between renders โ that is a comparison, and a range is not.
When it feels slow, move the drop before you raise the BPM. Perceived speed comes from event density far more than from the grid. A track at 150 with the drop at bar 8 feels slower than the same track at 140 with the drop at bar 1.
Scale the vocal with the tempo. 8 syl/sec at 110 BPM is a dense flow; the same figure at 180 is physically impossible and the model will resolve it by thinning the vocal or slurring it. If you double the tempo, do not keep the syllable density.
Say "no swing" when you mean it. Above roughly 170 BPM, swing is not a feel any more โ it is timing error. The templates above all forbid it explicitly, and that is why their first bar lands hard.
Do not fight the genre. Change it. If you want 95 BPM with hardstyle energy, the token you need is not a lower BPM on a hardstyle prompt โ it is a genre that lives at 95, plus hardstyle sound design tokens: distorted kick, reverse bass, screech lead. Borrow the palette, not the tempo.
FAQ
Does Suno respect an exact BPM?
Approximately, and only when nothing else contradicts it. Treat the number as a strong preference rather than a setting: it holds when the genre, the rhythm description and the tempo agree, and it loses whenever they don't.
Why did my track come out at half the BPM I asked for?
Almost always because the rhythm description implied half-time โ a long-tail kick on beat 1, sparse percussion, slow bass glide. The model followed the groove, not the integer. State the subdivision you want in the percussion field to pin it down.
What BPM should I use for my genre?
Ranges worth knowing: reggaeton 85-100, Brazilian funk 105-120 as written in the DAW (210-240 counted on the kick), phonk 120-160, hardstyle 140-165, uptempo hardcore 180-220. These are what the generator's own pools use for each mode, so a prompt built from them starts inside the genre instead of arguing with it.
Can I change tempo mid-track?
You can ask, and it rarely survives. Suno v5 strongly prefers one grid per generation. If you need two tempos, generate two pieces and edit them together โ the seam you control is better than the transition you hoped for.
Conclusion
Tempo in Suno is not a setting you apply, it is a claim you make โ and the claim only holds if nothing else in the prompt disagrees with it. One number, stated once, consistent with the genre and the rhythm description. That single discipline fixes the majority of "it ignored my BPM" renders, and we have the measurement to say so: nine out of ten of our own prompts were breaking it until we looked.
Generate prompts with the tempo already reconciled at /generator โ 8 a day, no signup. For unlimited generations and the full 45-mode catalog, see Pro pricing.
