Two Bluetooth Speakers Out of Sync: Measure the Gap
Two Bluetooth speakers go out of sync because each speaker decides on its own how much audio to hold before it plays it. Nothing in classic Bluetooth makes them agree. The phone sends one stream, each receiver adds its own delay, and the difference between those two delays is the slapback you hear.
So the fix is almost never on the phone. It is in which speakers you use and how they are grouped. Before changing anything, put a number on the gap with the browser latency test.
Why two Bluetooth speakers go out of sync
A2DP, the classic Bluetooth profile that carries stereo music, is a point-to-point link. One transmitter, one receiver. When a phone appears to feed two speakers at once, it is usually one of three arrangements: a vendor relay mode, where the first speaker forwards the stream onward to the second; a dual-audio feature on the phone or its Bluetooth chipset, which opens two independent streams to two independent sinks; or, on newer hardware, an LE Audio broadcast that both speakers tune into.
Whichever of those it is, every receiver keeps a jitter buffer, a cushion of decoded audio held back so a momentary radio dropout does not become an audible gap. Firmware authors choose that cushion and different firmware chooses differently. A relay hop adds a second decode-and-rebuffer stage on top of the first. Classic A2DP, built for one source talking to one sink, does not correct for any of that. Its transport carries RTP-style timing information for that single link, so this is not an absence of timing data altogether. What the profile lacks is any mechanism for two independent receivers to agree on a common playout time, or a shared clock to agree against. Each speaker therefore plays from its own buffer whenever that buffer says to, and starts when its own cushion feels comfortable.
Wi-Fi multiroom dodges this by not being Bluetooth. AirPlay 2 and Sonos attach timing information to the audio and run against a shared clock, so a Sonos pair stays locked while two Bluetooth speakers on one table drift.
The offset is not always constant
People describe this as a fixed echo, but it moves. When a speaker takes a radio hit and refills its buffer, its delay grows and stays grown until the group is restarted. A pair that sounded fine in the first song can be wrong by the fourth.
The phone is almost never the cause
The instinct is to blame the source. Resist it. The phone encodes one stream and both speakers get the same bytes at the same moment, so anything you change on the phone changes both ends equally and cannot open or close a gap between them.
There is also very little to change. An iPhone negotiates AAC with a Bluetooth speaker and offers no codec picker, no buffer control, and no aptX support of any kind, which is the subject of the guide on why an iPhone will never use aptX Low Latency. The underlying figures, and how much the sources disagree, are in the comparison of SBC, AAC and aptX latency.
One diagnostic settles it. Play the same track from a laptop into the same pair. The offset will still be there.
Vendor multi-speaker modes, and why mixing brands fails
Every manufacturer solved this privately, before the standard had an answer. The names differ, the handshakes differ, and none of them talk to each other.
| Brand | Mode | How it links | Other brands |
|---|---|---|---|
| JBL | PartyBoost (Flip 6, Charge 5); Auracast on newer models | Relay, or broadcast on Auracast models | No, except Auracast to Auracast |
| Bose | Party Mode and Stereo Mode, plus SimpleSync | Relay between two Bose SoundLink speakers | No |
| Anker Soundcore | PartyCast | Relay, chains to many speakers | No |
| Ultimate Ears | PartyUp | Relay from the connected speaker | No |
| Sony | Party Connect and Stereo Pair | Relay between compatible Sony models | No |
| Apple | Share Audio | Two sets of AirPods or Beats from one device | Headphones only, not speakers |
A JBL will not join a PartyCast group and a Soundcore will not join PartyBoost. No adapter or app bridges them, because the pairing handshake is proprietary. One speaker from each of two brands is not a stereo pair, it is two independent receivers running two independent buffers, the worst case for speaker pairing delay.
Auracast, part of Bluetooth LE Audio, is the first standards-based answer. It broadcasts rather than relays, so receivers share one transmission and one timing reference instead of stacking hops, and its LC3 codec is quoted by the Bluetooth SIG at roughly 20 to 30 ms. Every device in the chain has to support it, though, and phone-side support is still patchy.
Mixing transports is worse than mixing brands. One speaker on Bluetooth and one on a wired aux cable will sit hundreds of milliseconds apart, because the wired one plays immediately and the Bluetooth one cannot. Same for a Bluetooth speaker alongside an AirPlay speaker.
Measure the offset instead of guessing
Arguing about which speaker is late is pointless when you can measure it. The Bluetooth latency test plays a 30 ms chirp, records it back through the microphone, cross-correlates the two, and reports the median of five runs with the flight time for your stated distance subtracted.
- Put the phone or laptop 50 cm from speaker A, with speaker B switched off. Run the test.
- Switch A off, switch B on at the same distance, and run it again.
- Subtract. The difference between the two medians is your real offset.
Trust the difference, not the absolute number. The test measures a full acoustic round trip, so each figure includes microphone capture on top of playback. Measured identically, in the same room, the gap between the two results is honest even if neither number is a pure playback latency.
Compare that against published figures. A2DP end to end is usually put at roughly 100 to 300 ms, Hollyland among the sources quoting that band. SBC is quoted as both 100 to 150 ms and 150 to 300 ms depending on who measured, and those sources genuinely disagree. AAC, which is what your iPhone is using, lands around 100 to 200 ms. Qualcomm's aptX Low Latency is about 40 ms and irrelevant here. A dedicated 2.4 GHz wireless microphone system comes in under 20 ms.
For what those numbers feel like, the guide on how much audio delay is noticeable is the reference: under about 20 ms passes unnoticed, 40 to 50 ms is where lip sync visibly breaks, past roughly 100 ms it feels like a bad phone call. A 60 ms gap between two speakers is not a subtle imaging problem, it is a second voice.
The channel and sweep test also shows whether the pair really splits left and right or just plays one mono feed twice.
Fixes that actually work
- Two identical speakers from one brand, in that brand's own mode. Same model, same firmware, same buffer size. The biggest improvement available, and free if you own the pair already.
- Update firmware on both. Buffer handling is exactly what manufacturers quietly change, and mismatched firmware means mismatched buffers.
- Rebuild the group after any dropout. Power both off and re-link them. That resets buffers which grew during interference and never shrank back.
- Keep the phone between the speakers, at similar distance, with line of sight. One body in the path is enough to start the drift. 2.4 GHz does not like people.
- Clear the 2.4 GHz band. A crowded Wi-Fi channel, a microwave or a room full of phones raise retransmissions, and retransmissions make a buffer grow.
- Use one speaker. It cannot be out of sync with itself. In a small room this is usually the right answer and nobody notices.
What does not help
No app can give you zero latency over Bluetooth, and none can shrink a buffer that lives inside somebody else's speaker firmware. Anything sold as a low latency mode for speakers you already own is adjusting something on the phone, which affects both speakers equally.
Also useless: toggling airplane mode, reinstalling the music app, re-pairing only one speaker, and buying a faster phone. An aptX Low Latency transmitter dongle does nothing on an iPhone either, since the phone has no aptX to hand it. Where the delay actually lives is covered in the guide to Bluetooth microphone delay.
Two speakers when the phone is the microphone
When the phone is the live microphone, as in the walkthrough for routing an iPhone mic to a Bluetooth speaker, a second speaker doubles the trouble. Your voice arrives from the phone's own position, then from speaker A, then from speaker B, and the offsets stack. Speech suffers more than music, because live self-monitoring is far more sensitive to delay than passive listening.
The advice is blunt: for voice, use one speaker. Point it at the audience and stand behind it. Two spread across a room will make you stumble over your own words.
More speakers also means more paths back into the microphone. A rising whistle is not a sync problem, it is feedback, and the guide on microphone feedback with a Bluetooth speaker has the placement and gain rules that stop it. Karaoke hits both at once, which the karaoke delay guide handles specifically.
Setups that stay in sync
- One speaker, wired. Nothing to sync, no radio in the path. The wired versus Bluetooth comparison gives the size of the gap.
- Wi-Fi multiroom. AirPlay 2 or Sonos, where timing is part of the protocol. Higher latency in absolute terms, but the speakers agree with each other.
- A matched-brand Bluetooth pair in the vendor's own mode. Good enough for background music, rarely good enough for anything with picture.
- Two different brands over Bluetooth. Do not. No configuration rescues this.
If none of that is available tonight, one speaker with the phone close to it beats a clever setup that arrives twice. The rest of the guides takes the pieces further.
Measure your own delay in about ten seconds
Measures the real round-trip delay of your own speaker by sending a chirp and listening for it coming back.