Charting a song for Sonic Beat is pretty straight-forward, if a little technical, and will take between one and three hours to complete. For this guide, you will need the following software:

For your convenience, we also provide a template Stepmania simfile (*.sm):

Song acquisition

For inclusion in Sonic Beat, a song must be legally purchasable by players. If a song is not available for purchase and local download, it will be disqualified. Music files are not accepted by Sonic Beat staff, nor will they be provided to players.

At minimum, a song must be purchasable from both of the following music stores:

  • iTunes or Apple Music - the default for iOS
  • Amazon Mp3 / Amazon Music - the default for Android

A note about Amazon Prime: The Amazon MP3 app can locally download Amazon Prime music, but only tracks actually purchased by the subscriber are exposed to Sonic Beat.  Songs available for free through Prime streaming are not accessible by Sonic Beat.
A note about Google Play Music: The Play Music app does not expose local downloads to any other apps. Music downloaded via the Play Music app is therefore not accessible by Sonic Beat.  You may download your Google Play Music library via their desktop website and manually transfer the audio files to your Android phone, or you may use third party Play Music downloader apps on the market. Due to this limitation, Google Play Music is not officially supported by Sonic Beat at this time.
Begin by downloading your purchased music from your music store of choice and transfer it to your computer for the next step.

Initial conversion

The Stepmania editor only works with audio files with a sample rate of 48000 Hz, and they must have a constant bitrate. If you use the file acquired straight from your music store, Stepmania will not stay in time during the synchronization step (for more information on this limitation of Stepmania, check these results ). The easiest way to convert your file is to run this ffmpeg command:

ffmpeg -i INPUT.MP3 -ac 2 -ar 48000 OUTPUT.wav

Simfile preparation

For your convenience, we provide a blank stepmania simfile as a template. It includes all the useful values you need You will want to fill out the following information fields:

Required information fields

  • Song Title
    • This is the song title as it appears in the metadata of your downloaded music file.
  • Song Artist
    • This is the song artist as it appears in the metadata of your downloaded music file.
  • Genre
    • This is the most prominent genre as it appears in the metadata of your downloaded music file.
  • Credit
    • This is you! Your name or nickname is displayed for all to see, and this is our way of crediting you for your work in the game if your chart is chosen for inclusion with the game.
  • Music
    • At this point, you want this to be the name and extension of the WAV file you prepared in the last step.
  • BPMs
    • Optional - Knowing your song's rate of beats per minute ahead of time can save you some work and testing. Many songs have their BPM values published and accessible through a Google search, or you can use a BPM analysis tool. This does not have to be perfect right now, but you will want to be fairly close.

Stepmania setup

Gather your WAV and simfile into a folder, then place that folder into a song group in Stepmania's installation directory. For more information on how to find your Stepmania installation directory, click here. The file structure should look like this:

./Songs/My Song Group/My New Song/My New
./Songs/My Song Group/My New Song/My New Song.wav

As this changes the songs available in Stepmania, you will want to refresh your song list. Open Stepmania and go to Options > Reload Songs / Courses.

Finally, return to the main menu and navigate to Edit / Share. Find your song, then choose to edit the Hard difficulty. The blank stepmania simfile you downloaded comes with a string of quarter notes that will be useful for synchronizing your song in the next step.

Introduction to Stepmania editor


  • Up / Down arrows
    • Moves you one beat at a time.
  • Page Up / Page Down (alt: apostrophe [‘] / semicolon [;])
    • Moves you an entire measure at a time.
  • Home / End
    • Moves you to the start or end of the current chart.
  • Saving
    • Pressing ESCAPE brings up the Main Menu. You will find the option to Save here.
  • Playing
    • P - Plays the current selection.
    • Shift + P - Plays from the current beat until the end of the song.
    • Control + P - Plays from the beginning of the song until the end.
    • Enter - Stops playing at the current beat.
  • F7
    • Plays a click for every note as it passes the target line. During editing, you will likely have this on most of the time.

Initial timing

Sonic Beat relies on carefully synchronized charts and music.  The included blank simfile contains a click track on the Hard difficulty to help you sync the simfile to the music.

Finding the initial offset

  • Use the F11 and F12 keys the move the first beat of the song forward or backward in time until it matches up with the music.
  • Check your work by pressing Control + P

Identifying changes in tempo

  • If you detected your song's BPM automatically, you need to check that it is correct. Press Control + P to play the song from the beginning, listening to ensure your click track doesn't walk ahead or behind the beat over time.
  • Many songs, especially ones produced in a studio using modern mastering techniques, should have only one common tempo. If your beats are getting off, try changing the initial tempo first. From the first beat of the song, press F4 and select Edit BPM Change. Test your new value by playing the song with Control + P.
  • Some songs may vary in tempo over time. If this happens, note the measure number where you notice the discrepancy. Back up to the last point you are confident the timing is correct, then press F4 and select Edit BPM Change. Experiment with small changes to the BPM (plus or minus 1 beat per minute or fewer), then check your new values from that beat forward by pressing Shift + P.

Cutting the track to length

Now that your song is mapped for timing, you may want to identify areas to cut. Sonic Beat plays best when a song is in the range of 2 minutes 30 seconds. If your song is substantially longer then this, consider the following based on the structure of the music.

  • Refrains
    • There may be repeat sections of verses or chorus toward the end of your song. You can often find a good section to cut by going from one similar phrase to another, such as the beginning beat of the chorus.
  • Fun factor
    • Some breakdown sections may be unfun to play, as might be too many repetitions of a single section of music. These can all be removed to hit your target time.

Using Stepmania to identify foolproof cuts

In Stepmania, go to the beats at the start and end of the sections you've noted for cutting. Write down the "current beat" and "current second" readouts in the top right corner of the editor.

Save any unfinished work in Stepmania and close it. Make sure you keep your cut timings for later! They will be placed in the simfile before submitting. If your song includes tempo changes, you will also want to write down their beat numbers and tempo values for later.

Using ffmpeg

Sonic Beat will automatically cut your songs for you in the game. However, you still need a cut file to work with in Stepmania. For this, we use ffmpeg to make the cuts and produce a file that will be identical to the one created by Sonic Beat.

Open a command line in the location of your original music file. Paste whichever of these commands best describes your song's cuts, changing the file names and timing values accordingly.


The simplest kind of cut, this example removes 30 seconds of music starting at the half minute mark.

ffmpeg -i my_original_music_file.m4a -filter_complex "[0:a]atrim=start=0.000:end=30.000,asetpts=PTS-STARTPTS[a];[0:a]atrim=start=60.000,asetpts=PTS-STARTPTS[b];[a][b]concat=n=2:v=0:a=1[out1]" -map [out1] -c:a aac -strict experimental song_name_cut.m4a


This example removes 30 seconds of music starting at the half minute mark, but fades the two tracks into each other. Note the timing values here. We have to pad half of our crossfade to the end of one cut and the start of the next. With a crossfade of 0.25 seconds, we will add 0.125 seconds to the end of the first section and subtract 0.125 seconds from the start of the next section.

ffmpeg -i my_original_music_file.m4a -filter_complex "[0:a]atrim=start=0.000:end=30.125,asetpts=PTS-STARTPTS[a];[0:a]atrim=start=59.875,asetpts=PTS-STARTPTS[b];[a][b]acrossfade=d=0.25[out1]" -map [out1] -c:a aac -strict experimental song_name_cut.m4a


This example removes 30 seconds of music starting at the half minute mark AND another 30 seconds from the minute-and-a-half mark. Just as above, we have to pad our endpoints with half of the crossfade value.

ffmpeg -i my_original_music_file.m4a -filter_complex "[0:a]atrim=start=0.000:end=30.125,asetpts=PTS-STARTPTS[a];[0:a]atrim=start=59.875:end=90.125,asetpts=PTS-STARTPTS[b];[a][b]acrossfade=d=0.25[c];[0:a]atrim=start=119.875,asetpts=PTS-STARTPTS[d];[c][d]acrossfade=d=0.25[out1]" -map [out1] -c:a aac -strict experimental song_name_cut.m4a

Sample conversion (again)

It's a small but important thing to be using a file in the proper format for Stepmania. Following the previous instructions for sample rate conversion, save your new cut track to a 48000kHz WAV file, overwriting your previous working WAV file. When you re-open the song in the Stepmania editor, it will be using your new cut file.

ffmpeg -i INPUT.MP3 -ac 2 -ar 48000 OUTPUT.wav

Working with your new cut song in Stepmania

If your song's first cut is not from timestamp 0.000, you will have to find a new initial offset. Very likely, this new initial offset may be exactly zero.

If your song included tempo changes, tempo timing data may have to be shifted to match the newly assembled track. For each tempo change after a cut, subtract the number of cut measures from the original tempo change beat number to get your new tempo change beat number. Using the timing menu (F4), match the old tempo changes with the new beat numbers.

Advanced: You may also edit the simfile directly, but this requires more math. In your notes, convert measures to beats (usually measure number * 4). Remove any tempo changes that occur during your cuts. Subtract the number of beats you cut from the tempo changes that follow.

Charting Controls

  • Left / Right arrows
    • Cycles between different note quantizations. Quarter, eighth, tuplets, sixteenths...
  • Area Menu (Enter/Return)
    • Pressing Enter brings up the area menu at your cursor location. You can paste copied sections, shift note placement, and undo commands.
  • Making selections
    • The spacebar marks the beginning and end of a selection. Selections appear in red.
  • Alter Menu (A)
    • With a selection highlighted, pressing the A key brings up the Alter Menu. You can programmatically modify the notes within selections, such as copying, quantizing, clearing and transforming them.

Sonic Beat Note Types

Tap Notes

01 tap notes
Any single step on a line will produce a tap note.

Hold Notes

02 hold notes
Any single hold on a line will produce a hold note.

Swipe Notes (diagonal)

03 swipe notes diag
A two-foot jump will create a swipe in the direction of the jump.

Swipe Notes (cardinal)

04 swipe notes card
A hand slap will produce a swipe note in the direction of the slap. You may also think of it as "blocking off" two opposing panels and choosing a remaining swipe direction.

Hold-Swipe Notes

05 hold terminating swipes
Any hold terminating in any swipe will require the player to swipe in that direction after holding.


  • Cardinal jumps (Up+Down, Left+Right) are translated as cardinal swipes. Repeated cardinal jumps will alternate between directions. For instance: [Left+Right, Left+Right] becomes [Swipe Left, Swipe Right].
  • Holds take precedence over any other notes until the hold ends. So, steps during a hold are ignored, as are single steps that occur at the end of a hold.

Charting Guidelines


The reason you're reading this page at all is because you want to make something you would want to play. So let's do that! You're the game designer now, so you get to show us what you think are fun patterns to play and interesting sections of music to highlight. As you work, consider some of the things we've learned while charting songs for months on end.

Variety is spice. While we normally begin with the most interesting aspect of the music to follow with our taps and swipes, some sections can feel a bit long. If this is happening, find the beginning of a new musical block and highlight something else. The drums may have picked up in the background. The vocals might be harmonizing now. Did a cool guitar riff layer itself into the music? Show it to your players.

Similarly, vary the intensity of your chart over time. Playing the same amount of frantic tapping for three minutes is not only tiring, it's surprisingly boring. Counter bursts of difficulty with places for the player to catch her breath. Try to not focus on just the singer or any particular instrument for the song's duration. The music will guide you, and the extra few minutes you spend on these considerations can mean the difference between an okay chart and an amazing one.

Remember that as a game designer, your ultimate goal is to give a great experience to the player. They will appreciate any challenge you present to them if the finish line is obtainable.

Easy Difficulty

Easy difficulty is designed to teach. The beginning rhythm gamer is learning how to keep time and understand the core mechanics of the game. Follow easily identifiable patterns in the music that can be expressed through quarter-length notes with minimal syncopation. Be sparing with hold notes, and restrict yourself to one or two swipe notes at the very most. If you mix gameplay elements together, be sure there is breathing room before and after such a challenge to let the player read what is happening and be able to process the results.

  • Quarter-length tap notes
  • Minimal syncopation
  • Few holds
  • Almost no swipes

Medium Difficulty

A Medium player knows the gameplay elements and has good command over rhythm and timing. When charting for this player, keep the quantizations larger enough to be played with one thumb (but don't be afraid to challenge them to use two thumbs on occasion). This player is learning how different notes combine in fun ways, so break up strings of tap notes with short holds or a swipe for emphasis.

  • Eighth notes are common
  • Occasional sixteenth note "two thumb" gameplay
  • Heavy syncopation with repetition
  • Swipes and holds are common
  • Sparing use of complex note combinations

Hard Difficulty

Hard difficulty utilizes everything that the previous difficulties have been teaching the player to do, only faster and more complex where appropriate. Completing a song is not a guarantee here, and there is a reasonable expectation of practice required to do so.

  • Sixteenth notes and heavy syncopation are common
  • High amounts of variety between different sections of music
  • Complex note combinations used for emphasis

Expert Difficulty

At the time of this writing, there are no official Expert charts in the game, but they are supported. In this mode there are no holds barred. So long as the chart is technically winnable and doesn't break the game, it's welcome here. Go wild. Show us why you're the master.

Other considerations

  • Stops
    • When charting a stop, ensure there is enough lead-in before the next note for legibility.

Simfile features supported by Sonic Beat


A Stop pauses all notes in place for a set duration of time at a certain beat.

Known limitations of the Sonic Beat engine

Please see Beta Known Issues and Discussion


Transferring to device

You can use the StepMania importer to test your work. The importer takes a folder containing your simfile and your pre-cut audio file. At the moment, the StepMania importer cannot test your cut timings dynamically.

  • On iOS
    • With your i-device plugged into your computer, open iTunes
    • Select your device in the device list
    • Navigate to Settings > Apps
    • Scroll down to the File Sharing section and click on Sonic Beat
    • Drag the folder containing your simfile and pre-cut track into the "Sonic Beat Documents" panel.
  • On Android
    • Navigate to your phone's internal storage
    • [find folder]
    • Drag the folder containing your simfile and pre-cut track into this directory.

Importing your simfile into Sonic Beat

  • From the menu, tap "Import Stepmania"
  • Tap "Find Songs"
  • Tap the discovered stepmania package and confirm.
  • In the song list, you can find your song in the My MP3s tab.

Chart submission

As of this writing, there is no place to submit finished charts. Check back soon, or bug us about it in an e-mail.

That said, here are the requirements for submission:

  • Do NOT include a music file
    • We test your chart the same way any user would - by purchasing the music from a music store. If your music is not purchasable from one of the supported music stores, it will be ignored. If your submission includes a music file, it will be deleted without having been considered at all.
  • Three thoughtfully completed difficulties
    • Your charts must include full Easy, Medium, and Hard difficulties that follow the charting guidelines.
  • Include the song cutting values in the simfile
    • You can get these lines from the blank simfile provided above. This should be your last step before submitting, as saving changes to your simfile in StepMania will remove these fields from the file.
    • Open the simfile in a text editor and add the following values:
      • CUT1START
        • This is the beginning of the first section of music that will be kept, in seconds.
      • CUT1END
        • This is the end of the first section of music that will be kept, in seconds, adjacent to the section that will be cut out. A value of negative one ( - 1 ) indicates the end of the song.
        • (Optional) Will apply a subtle fade between this section and the next. Don't worry about calculating any audio padding here, as Sonic Beat will do that for you.
      • CUT1FADEIN
        • (Optional) Will fade the start of this section from muted to full volume.
        • (Optional) Will fade the end of this section from full volume to muted.

You may add up to 5 cuts as needed, following the naming convention CUT[#]. For instance, CUT2END, CUT3START.

    • Even if your song contains no cuts, we still need this information spelled out for us. A song with no cuts would have the values:
  • Objectively sound
    • Your charts must be playable from beginning to end with no issues of timing or notefield artifacts. If your chart reveals a bug in the Sonic Beat game engine, it may be delayed or returned for fixes until the bug is fixed or the chart remade to work around the issue.
  • Subjectively fun
    • This is easily the loosest requirement, and following the charting guidelines will prevent most issues, but the chart and its difficulties should be enjoyable to play regardless of the music backing it. Make sure you have many people play your song at each difficulty to identify issues that cause boredom or fatigue.
  • Hasn’t been done before
    • This is mostly to prevent a setlist filled with seventy versions of What Does The Fox Say. The first content creator to chart a song and pass inspection gets all the glory. Work with one another on the message boards to prevent stepping on each others' toes.
Community content is available under CC-BY-SA unless otherwise noted.