What is BPM & offset in osu!?

Timing is the invisible grid every beatmap is built on. Here's how it works.

BPM — beats per minute

BPM is the speed of a song's pulse: how many beats pass in one minute. A 120 BPM track has a beat every 500 ms; a 180 BPM track every ~333 ms. In osu!, the BPM defines the timing grid — the set of moments where notes are allowed to land. Notes are placed on beats and on subdivisions of beats (halves, quarters, and so on), which is why a correctly timed chart feels locked to the music.

Offset — where beat 1 starts

The offset is the time, in milliseconds from the start of the audio file, where the first beat lands. Songs rarely start exactly on the beat — there's usually a breath of silence or a quiet intro first. BPM tells you how far apart the grid lines are; the offset tells you where the grid begins.

Why timing makes or breaks a chart

Everything in a rhythm game assumes the grid is right. If the BPM is wrong, notes drift steadily off-beat — fine at the start, unplayable a minute in. If the offset is wrong, every note is early or late by the same amount, and your accuracy tanks no matter how well you play. Mappers spend real effort getting timing right before placing a single note, and songs with tempo changes need multiple timing points.

How to find a song's BPM

  1. Look it up: search "<song name> BPM" — sites like songbpm.com or tunebat.com cover most published music. Double the value if it feels half-speed (70 vs 140).
  2. Tap it out: use a "tap BPM" site (e.g. taptempo.io) and tap along with the beat for ~15 seconds.
  3. osu! editor: drop the song into osu!, open the editor → Timing → tap or use its BPM estimate. This also gives you the offset directly.

Do I need to do this on DanceGAI?

No. DanceGAI detects BPM and offset automatically when it generates an osu!mania chart from your song — the AI finds the timing grid itself before placing notes, so there's nothing to type in. The concepts above are still worth knowing: they're how you'll recognize (and describe) a timing problem in any beatmap, generated or hand-made.