Skip to main content

MIDI & Devices

MIDI Latency & Performance

Understanding the delay between pressing a key and seeing visual feedback. Learn what's normal, when it matters, and how to get the best experience.

The Short Answer

USB connections have 5-10ms latency (imperceptible). Bluetooth has 5-50ms latency depending on your device. Anything under 20ms feels instant for most people. If you're experiencing noticeable delay, skip to fixes.

What is MIDI Latency?

MIDI latency is the delay between when you press a key on your keyboard and when Crescendo responds with visual feedback. It's measured in milliseconds (ms).

The Signal Journey

1 You press a key on your MIDI keyboard
2 Keyboard converts the press to a MIDI signal
3 Signal travels via USB or Bluetooth to your device
4 Crescendo receives and processes the signal
5 Screen updates to show your note

For context: On an acoustic piano, there's a 1-15ms delay between when you start pressing a key and when the hammer strikes the string. This is the "natural" latency humans are adapted to.

Normal Latency Ranges

Different connection types have different latency characteristics. Here's what to expect:

Connection Type Typical Latency Rating
USB (Wired) 5-10ms Excellent
Bluetooth (iOS) 5-15ms Excellent
Bluetooth (Android) 10-50ms Variable
USB (5-10ms) Imperceptible
Bluetooth iOS (5-15ms) Imperceptible
Bluetooth Android (10-50ms) Usually acceptable
Problem zone (>50ms) Noticeable delay

Why Android Bluetooth varies: Android's audio architecture handles Bluetooth differently across manufacturers. Pixel and Samsung Galaxy S series phones typically perform best, while some budget phones may have higher latency.

When Latency is a Problem

Not all latency is problematic. Here's how to tell if your latency is affecting your practice:

Latency is Fine When:

  • Notes appear to highlight "instantly"
  • You don't consciously notice any delay
  • Playing feels natural and responsive
  • Fast passages don't feel "sluggish"

Latency is a Problem When:

  • You see a visible delay after pressing keys
  • Fast passages feel disconnected
  • You're waiting for the app to "catch up"
  • Notes register out of order

The 20ms Threshold

Research shows that most people cannot perceive delays under 20 milliseconds. This is Crescendo's target latency for MIDI-to-visual feedback.

<20ms
Feels instant
20-50ms
Slightly noticeable
>50ms
Distracting

What Causes Latency?

Several factors contribute to the total delay you experience:

Connection Type

USB sends data directly with minimal overhead. Bluetooth adds processing time for wireless transmission, with iOS optimized at 11.25ms minimum intervals and Android varying by device.

Your Phone/Tablet

Newer devices with faster processors handle MIDI more efficiently. iOS devices generally have lower latency than Android due to differences in audio architecture.

Background Apps

Apps running in the background compete for system resources. Music streaming, video playback, and games can all increase latency.

Distance & Interference (Bluetooth)

For Bluetooth connections, staying within 10 feet (3 meters) is ideal. WiFi routers, microwaves, and other Bluetooth devices can cause interference.

Keyboard Quality

Higher-quality MIDI keyboards typically have better internal processors and faster signal transmission. Budget keyboards may add a few milliseconds.

How to Reduce Latency

If you're experiencing noticeable delay, try these fixes in order of impact:

1

Use USB Instead of Bluetooth

High Impact

USB connections are consistently faster and more reliable than Bluetooth. If you're using Bluetooth and experiencing latency, this is the most effective fix.

Typical improvement: 5-40ms faster
2

Close Background Apps

Medium Impact

Close apps you're not using, especially music streaming, video apps, and games. This frees up system resources for MIDI processing.

Typical improvement: 1-10ms faster
3

Move Closer (Bluetooth)

Medium Impact

Keep your device within 10 feet (3 meters) of your keyboard. Avoid obstacles between them, and move away from WiFi routers and microwaves.

Typical improvement: 2-15ms faster
4

Restart Your Device

Low Impact

A fresh restart clears memory and stops any stuck processes. This is especially helpful if latency appeared suddenly.

Typical improvement: 0-5ms faster
5

Update App & Firmware

Low Impact

Make sure Crescendo, your phone's OS, and your keyboard's firmware are all up to date. Updates often include performance improvements.

Typical improvement: Variable

For Android Users

If you're experiencing high Bluetooth latency on Android, USB is strongly recommended. Android's Bluetooth audio stack has inherent variability that can't be fully resolved through software. USB provides consistently low latency across all Android devices.

Testing Your Latency

While Crescendo doesn't display a latency number, you can get a sense of your latency through feel:

The Tapping Test

  1. 1 Open any piece in Crescendo
  2. 2 Start practice mode
  3. 3 Tap a single key repeatedly and watch for the visual response
  4. 4 If it feels "instant," your latency is likely under 20ms

Good Latency Feels Like:

  • • Notes highlight the moment you press
  • • No conscious awareness of delay
  • • Fast trills feel responsive

Bad Latency Feels Like:

  • • Watching a video slightly out of sync
  • • A "sluggish" or "underwater" feeling
  • • You're always waiting for the app

Summary

Target latency Under 20ms
Best connection USB (5-10ms)
Bluetooth iOS 5-15ms (excellent)
Bluetooth Android 10-50ms (variable)
Best fix for high latency Switch to USB

Related Articles

Still Need Help?

If you're still experiencing latency issues after trying the fixes above, please contact us.

support@crescendopiano.app

Please include: your device model, connection type (USB or Bluetooth), and a description of when you notice the delay.

Response time: 2-3 business days