Creating Background Music for Mobile Games
Background music in a mobile game operates under conditions that don't exist in cinema or streaming: it can play for 40 minutes without a break, the user can pause the game at any moment, and the audio budget is part of an overall budget that's always limited.
The Main Problem — A Loop That Doesn't Get Boring
Standard approach: one track, looped via AudioSource.loop = true. After 10–15 minutes, the player disables it in settings. It's not a volume issue—it's psychoacoustics. The brain detects the pattern and starts anticipating it.
Solutions that work:
Long loops with internal variations. A 3–5 minute track instead of 90 seconds. The longer the cycle, the later the brain recognizes it. Within the track—changes in arrangement: removing one instrumental layer for 30 seconds, changing the rhythmic pattern, introducing a new melodic phrase. The listener perceives this as development, not repetition.
Horizontal layering (layered adaptive). The track breaks down into independent layers: drums, bass, melody, atmosphere. In calm gameplay—only atmosphere and bass. In tense combat—all four layers. Wwise and FMOD implement this through Music Switch Container and Music Blend Container. In Unity without middleware—AudioMixer with multiple AudioSource, whose levels change via AudioMixer.SetFloat.
Stingers and transitions. Short musical phrases (2–8 bars) inserted at the right moment: winning a level, spotting an enemy, receiving a reward. Stinger overlays the main track—compatible tonalities and BPM are required.
Genre and Atmosphere Determine the Toolkit
For casual puzzles—light, positive themes without pronounced drums, ambient textures, piano, and melodic synths. BPM 80–100. These forgive repetition better than energetic music.
For action/RPG—orchestral elements (strings, brass, percussion) or hybrid orchestra (live instruments + synthesis). Spitfire LABS, Cinematic Studio Strings as virtual instruments. Sound scale should match the game scale—but an orchestral soundtrack in a casual puzzle looks odd.
For retro/pixel games—chiptune via synthesis (Famitracker, LSDJ, DefleMask) or plugins (TripleOscillator, 8BitSFX). Yamaha OPL FM synthesis emulation for Genesis YM2612 sound.
Seamless Loop Points
The most technical aspect—correctly positioning loop points. WAV file with loop start/end markers: in Reaper through Region, in Adobe Audition through Loop. In Unity—via AudioClip.SetData or import with Loop in settings. Two requirements for a loop point: musically logical (bar or phrase start) and without clicks (zero crossing points or 5–10ms fadeout/fadein).
A click at the loop seam is the most common complaint. It occurs when the waveform at the loop point is not at a zero crossing. AudioUnit on iOS and AudioFlinger on Android don't perform automatic crossfade—responsibility lies with the engine or middleware audio layer.
Volume and Timelines
| Game Scale | Tracks | Duration | Timeline |
|---|---|---|---|
| Hyper-casual | 1–2 | 90s — 3 min | 1 week |
| Casual / Puzzle | 3–5 | 2–4 min each | 2–4 weeks |
| Mid-core / RPG | 8–15 | 3–6 min, + stingers | 1–3 months |
Delivery: WAV masters + stems (separate instrumental layers) for adaptive integration. Cost calculated individually after analyzing requirements.







