How to make an osu! beatmap

An osu! standard mapping guide, from an empty timeline to a finished .osz.

An osu! standard beatmap is a set of hit circles, sliders and spinners, each placed at a moment in the song and at a spot on the playfield. Good maps feel like the music: you click on the beats you hear, and the cursor moves in a way that matches how the song flows. This guide walks through making one in the osu! editor. If you map osu! mania instead, see how to make an osu! mania beatmap.

1. What you need

Open the editor and create a new beatmap from your audio file. The setup screen asks for the song's title and artist, your name as the creator and a difficulty name; you can change all of these later.

2. Find your way around the osu! editor

The editor is split into a few screens:

In osu!stable, F1–F4 switch between Compose, Design, Timing and Song setup, and F5 starts a test play from the current position. osu!lazer's editor has the same building blocks with its own layout; the full list of shortcuts is on the osu! wiki's shortcut key reference.

3. Set the timing: BPM and offset

Timing comes first because every object snaps to it. A wrong grid makes every circle on it slightly early or late, and no amount of good placement fixes that.

You set both with an uninherited timing point (a red line). In osu!stable, F6 opens the timing and control points panel and Ctrl+P adds an uninherited timing point at the current time. Play the song with the metronome on and adjust until the clicks sit exactly on the beat.

Songs whose tempo changes need a new red timing point wherever the tempo changes. Live recordings and songs without a click track may need several.

For practical ways to find a song's BPM, see BPM and offset in osu!, explained.

4. Place hit circles on the rhythm

Hit circles are the core of every osu! map: the player clicks each one as its approach circle closes in. Each circle should be there because of a sound you can point to.

Leave gaps where the music rests. A map that never stops is tiring and usually ignores what the song is doing.

5. Create sliders and repeat sliders

A slider has a head, a body and a tail: the player clicks the head on time, then follows the slider ball along the path to the end. Sliders are good for held notes, long vocal lines and sounds that carry on after the hit.

Keep shapes readable: smooth curves, no paths that cross back over themselves, and slider ends that leave the cursor somewhere sensible for the next object.

6. Use spinners sparingly

A spinner fills the screen: the player holds the button and spins the cursor around the centre until it ends. Spinners suit long sustained sounds, the end of a song or a break between sections.

Leave a little time after a spinner before the next object, so the player can find their cursor again. Spinners that are very short or that end right before a dense section are frustrating to play.

7. Control spacing, rhythm and difficulty

In osu! standard, the distance between objects is part of the difficulty: it decides how far and how fast the cursor has to move.

Build a spread. A mapset usually has several difficulties that rise gradually. Easier ones use simpler rhythms (more 1/1 and 1/2), tighter spacing and fewer sudden changes; harder ones add 1/4 rhythms, jumps and streams.

8. Test, fix and export

When you're done, fill in the metadata (title, artist, creator, source and tags) and add a background. Export the mapset as a .osz from the editor; anyone can install it by dragging it onto the osu! window — see how to add beatmaps to osu!.

To share a map on the osu! website, read the osu! ranking criteria and the osu! wiki's beatmapping articles first.

9. Use OsuGAI as an AI-assisted starting point

Mapping a full osu! standard mapset by hand takes many hours, and most songs are never mapped at all. OsuGAI, DanceGAI's osu! AI mapper, can make a playable first version from a song in about half a minute:

  1. Add the song on the AI osu! beatmap generator — upload an MP3, OGG or WAV, or paste an osu! beatmap link.
  2. Pick the difficulties, with star targets from ★1 to ★10. Each result is named after its measured star rating; in this beta, maps often come out harder than the target.
  3. Adjust the style if you like — sliders, sharp angles, spacing changes and stream spacing, per difficulty.
  4. Create, preview it in the browser with the song, and download the .osz.
  5. Make it yours — open it in the osu! editor and rework the parts you'd map differently, using everything above.

OsuGAI is in beta: slider shapes can be rough, new combos follow a fixed rule, and it hasn't been widely playtested. Read what the beta means before you rely on it.

AI osu! beatmap generator (OsuGAI)

AI doesn't replace mapping judgment

A skilled mapper still makes better maps. Mapping is interpretation — deciding which sound matters, how the cursor should move and when the player needs a rest — and that's the part this guide is really about. AI is for the songs that would otherwise have no map at all, or a quick first draft you then shape yourself.