How to make an osu! mania beatmap
A step-by-step guide to mapping, from timing to a finished .osz.
An osu! mania beatmap is a set of notes in columns, placed on a timing grid so that pressing them feels like playing the song. Making one is a craft: most of the work is listening closely and deciding what the player should feel. This guide walks through the whole process in the order mappers actually do it. It works with either osu! client — lazer or stable — since both have a built-in beatmap editor. Mapping osu! standard instead? See how to make an osu! beatmap.
1. What you need
- The song. An .mp3 or .ogg of good quality, ideally the full version you want to map. You need the right to use it.
- osu!, which is free. If you don't have it yet, see New to osu!.
- Some time with the song. Listen to it several times before placing a note. Know where the sections change, what the drums do, and which sounds you want players to follow.
- Optional: a background image (1920×1080 is the usual size).
To start, open the editor and create a new beatmap from your audio file. The setup screen asks for the song title, artist and your name as the creator — you can fill these in now or at the end.
2. Start with timing
Timing comes first because every note snaps to it. If the grid is wrong, every note on it is wrong, and no pattern can save the chart. Timing has two parts:
- BPM — how many beats per minute, which sets the spacing of the grid.
- Offset — the exact moment, in milliseconds, of the first beat the grid is anchored to.
You set both in the editor by adding a timing point (a red line, also called uninherited). Use the metronome to check it: play through the whole song and listen for whether the clicks stay on the beat. A grid that starts right but drifts by the end means the BPM is slightly off. A grid that is consistently early or late means the offset is off.
Songs whose tempo changes need a new red timing point wherever the tempo changes. Live recordings and older songs often drift slightly; these are the hardest to time and are worth getting help with. Green (inherited) points are different: they don't change the grid, they change scroll speed and hitsound volume.
For a deeper explanation and practical ways to find a BPM, see BPM & offset in osu!, explained.
3. Decide the key count and difficulty
Key count — the number of columns — is set in the beatmap's difficulty settings. 4K and 7K are the most played; 5K, 6K, 8K and 9K have smaller but dedicated audiences. Pick the one you play, because you will be testing the chart yourself.
Target difficulty mostly comes down to note density and how demanding the patterns are. osu! calculates a star rating for every difficulty, but it is a result, not a setting — you control it through what you map. The Overall Difficulty (OD) setting controls how strict the hit timing windows are, and HP controls how fast the health bar drains.
Spread. A mapset usually contains several difficulties that rise gradually, so that players of different skill levels can all play the song. Many mappers start with the hardest difficulty to settle the song's structure, then simplify it downwards. Each step down should feel like the same song with fewer, easier notes — not a different interpretation.
4. Map the music
Every note should be there because of something in the music. Before mapping a section, decide what the player is following:
- Drums — kicks and snares give a section its pulse, and are the most common thing to map.
- Melody and vocals — often the most recognisable layer; good for calmer sections and for making a chart feel like this song.
- Chords and accents — strong hits, crashes and chord changes are where chords (several notes at once) feel natural.
- Sustained sounds — held notes, long vocals and pads are what long notes are for.
Match intensity to the song: quieter sections should be lighter, and the strongest part of the song should be the most intense part of the chart. Use the beat snap divisor to place notes precisely — 1/4 covers most music, 1/3 or 1/6 is needed for triplet rhythms, and 1/8 is for very fast passages. Don't use a finer snap than the music actually has.
5. Build patterns
Patterns are how notes are arranged across columns. The common building blocks in osu! mania:
- Rice — single tap notes, the basis of most charts.
- Long notes (LN) — notes that are held for a duration and released at the end. Both the press and the release count, so the end of each long note should land on something in the music.
- Jacks — consecutive notes in the same column. Fast jacks are physically demanding; use them where the music repeats a sound, not as filler.
- Chords — several notes at the same time. Size them to the accent: a big hit can carry a large chord, a small one shouldn't.
- Streams and trills — fast runs that move between columns, and alternations between two columns.
Above all, keep patterns readable. Similar sounds should get similar patterns, so the player can learn the chart by listening. Avoid awkward hand movements that the music doesn't ask for, and keep difficulty consistent — one unexpectedly hard pattern in an otherwise easy chart is a common mistake.
6. Test and iterate
- Play it. Use the editor's test mode, and play the whole chart, not just the section you just finished.
- Check the timing again while playing. Small offset errors are easier to feel in gameplay than to see in the editor.
- Look for awkward patterns — anything that makes you stumble for a reason other than difficulty.
- Check consistency across the song and across the difficulties in the set.
- Ask for feedback. Other players notice things you won't, especially on your own chart.
7. Finish and export the beatmap
Fill in the metadata in the setup screen — title, artist, creator, source and tags — and add a background image if you have one. Then export the mapset from the editor as a .osz, the standard beatmap package: the audio, the background and every difficulty in one file. Opening a .osz imports it into osu! — see how to install beatmaps if it doesn't show up.
If you want to share the map on the osu! website, read the osu! mania ranking criteria and the osu! wiki's beatmapping guides first.
8. Using AI to generate a starting point
Mapping a full spread of difficulties by hand takes many hours, and most songs are never mapped at all. AI generation is another way to get a chart: instead of starting from an empty editor, you start from a complete, playable mapset. This is the workflow with ManiaGAI, the generator on this site:
- Upload the song on the ManiaGAI generator, or paste an osu! beatmap link or mapset ID to use that mapset's song. Timing — BPM and offset, including tempo changes — is detected automatically.
- Choose the key count (4K–9K) and the difficulties, which run upwards from ★1.
- Adjust the style of each difficulty if you want, or keep the defaults, which are typical values for that key count and star rating.
- Generate. You get the whole mapset as one .osz in seconds.
- Playtest it — and if you want to make it your own, open it in the osu! editor and rework it with everything in this guide.
A song may already have an osu! beatmap, but perhaps not a 4K chart, a chart at the difficulty you want, or an osu! mania chart at all. Paste the beatmapset link and use the song as the starting point for a new ManiaGAI mapset. The imported mapset provides only the song; ManiaGAI generates a new chart — it doesn't convert or copy the existing ones.
How it works — the timing model, the training data and how we measure timing accuracy — is documented on the technology page. Regenerating a single section while keeping the rest of a chart is planned but not available yet.
9. AI doesn't replace mapping judgment
A skilled human mapper still makes better charts. Mapping is interpretation: deciding which sound matters, where the song should feel heavy, and what the chart is trying to say. AI generation is useful when the alternative is not having the chart you want at all — a song nobody has mapped, a key count or difficulty nobody made, or a draft to start from. If you share a chart that was generated or assisted by AI, say so, and don't present it as hand-mapped work.