Wiki · TJA & simulators

How to Adjust TJA Offset and BPM: Fix an Out-of-Sync Chart

How to fix TJA sync issues: what OFFSET means and its sign, which direction to adjust it, the symptom of an incorrect BPM drifting further off over time, #BPMCHANGE for tempo changes, and TaikoForge's auto-detection.

When TJA notes are out of sync with the music, it is almost always either OFFSET or BPM that is wrong. This guide explains what each means, how to tell which one is the problem from the symptoms, and which direction to adjust.

1. First, determine whether it is OFFSET or BPM

Turn on auto-play, listen to how the auto-hit sounds line up with the music's beat, and note how they drift:

Symptom Cause What to adjust
Same offset throughout The chart's start point is wrong OFFSET
In sync at the start, drifting further off toward the end Each measure is the wrong length, so the error accumulates measure by measure BPM
First half in sync, then drifting from a certain point on The song changes tempo there #BPMCHANGE

If you don't want to install a simulator, pick a .tja and audio file in Play TJA Charts Online to hear auto-play — it is the easiest way to check.

2. What OFFSET means and its sign

OFFSET is a number in the .tja header, in seconds, that sets where in the audio the first measure begins. The first measure starts at -OFFSET seconds into the audio, so the sign is opposite to the time.

  • OFFSET:-1.601: the first measure begins 1.601 seconds after the music starts, meaning the intro is 1.601 seconds long.
  • OFFSET:0: second 0 of the audio is the start of the first measure.
  • OFFSET:0.5: a positive value is uncommon; it means the audio starts 0.5 seconds after the first measure.

Most songs have an intro, so the first beat comes in after the music has already started — that is why OFFSET is usually negative.

OFFSET is in the shared header that applies to all difficulties, so changing it affects every difficulty at once.

3. Which direction to adjust OFFSET

Listen to the first few notes of the first measure: do the auto-generated hit sounds come later or earlier than the beat?

What you hear Meaning How to adjust
Hit sounds are later than the beat Chart is late Increase OFFSET (toward positive), e.g., change -1.601 to -1.571.
Hit sounds are earlier than the beat Chart is early Decrease OFFSET (toward negative), e.g., change -1.601 to -1.631.

Rule: chart late → increase OFFSET; chart early → decrease OFFSET.

Adjust by 0.02 to 0.05 seconds at a time, save, and reload to listen. A difference of around 0.1 seconds is usually quite noticeable; you have it right when the hit sound and the beat play simultaneously.

Open the .tja in a text editor and change the OFFSET line at the top. Keep the original encoding when saving; see the encoding section of TJA format guide for details.

Most simulators have a separate audio or input latency calibration setting; that compensates for your own device's latency and is separate from the OFFSET in the .tja. If the entire chart is off, change OFFSET, not the device settings.

4. Symptoms of an incorrect BPM

BPM determines the length of each measure. A small BPM error is inaudible in the first few measures, but the error accumulates measure by measure, getting worse further into the song.

  • Notes get progressively later, chart is slower than the music: BPM is set too low, adjust upward.
  • Notes get progressively earlier, chart is faster than the music: BPM is set too high, adjust downward.
  • The note rhythm is off from the music by a factor of two: BPM may have been detected as half or double the correct value, which is common in BPM detection. Changing the number alone shifts all note timings together; you usually need to enter the correct BPM manually and re-chart.

To calculate the corrected BPM: measure how many seconds d the chart is behind the music at time t; new BPM ≈ old BPM × t ÷ (t − d). Use a negative d if the chart is ahead of the music.

Example: BPM is 150 and the chart is 0.5 s behind at the 60-second mark: 150 × 60 ÷ 59.5 ≈ 151.26.

Most songs have a BPM that is a whole number or one decimal place. When the result is very close to a whole number (e.g., 149.98), try that integer first.

After changing BPM, OFFSET may also need fine-tuning: first confirm the start aligns, then check whether the drift widens further in.

5. Mid-song tempo changes: #BPMCHANGE

Some songs change tempo mid-song. The BPM in the header only controls the start; use #BPMCHANGE on a new line at the point of change to switch to the new tempo from that point:

BPM:150
// …
#START
1010101010101010,
#BPMCHANGE 180
1010101010101010,
#END

#BPMCHANGE can also appear in the middle of a measure, affecting only notes after it; placing it at the start of a measure is simplest.

The symptom is that the first half aligns but drift begins at some point. Find where the drift starts, calculate the BPM for that section, and add a #BPMCHANGE before the corresponding measure.

If the music speeds up or slows down gradually rather than in discrete steps, you need many #BPMCHANGE entries to follow it, and manual adjustment takes a lot of time.

For other commands, see TJA format guide.

6. TaikoForge detects automatically

TaikoForge auto-detects BPM and OFFSET when charting; BPM is snapped to the nearest integer, so you do not need to measure it yourself.

  • If you know the exact BPM of the song, enter it manually under Advanced Parameters; accuracy will be noticeably higher than auto-detection.
  • For songs with mid-song tempo changes, enable "Detect tempo changes in the song (BPMCHANGE)". This is an experimental feature and is disabled by default.
  • If you already have an accurate TJA for the same song, upload it as a reference TJA; TaikoForge will reuse its BPM, OFFSET, and tempo changes.

Chart editor edits notes only and cannot change BPM or OFFSET. When BPM or OFFSET is wrong, enter the correct values manually and re-chart, or edit the .tja header directly in a text editor.