Does Sidecar Support 120Hz? Why Apple Caps It at 60 FPS and How to Unlock 120Hz on iPad Pro
Does Sidecar support 120Hz? Discover why Apple caps Sidecar at 60 FPS on ProMotion iPads and how Nubo delivers native 120Hz Mac desktop streaming.
The 120Hz Expectation Gap: Why ProMotion iPad Pros Feel Sluggish on Sidecar
Since the introduction of the second-generation iPad Pro in 2017, Apple's flagship tablet line has championed ProMotion technology—a dynamic display architecture capable of ramping refresh rates up to 120 Hz. Across subsequent generations powered by M1, M2, and M4 Apple Silicon, including the tandem OLED panels on the latest iPad Pro, fluid 120 Hz visual rendering has defined the user experience. Scrolling through system menus, tracking user interface transitions, and drawing with Apple Pencil all benefit from an 8.33-millisecond frame interval, providing visual immediacy and virtually eliminating perceptual motion blur. Similarly, modern 14-inch and 16-inch MacBook Pro models feature Liquid Retina XDR displays operating natively at 120 Hz ProMotion.
Naturally, users pairing a ProMotion MacBook Pro with a ProMotion iPad Pro expect their dual-screen workspace to deliver uniform 120 Hz fluidity across both panels. Whether monitoring code builds, scrubbing video timelines, reviewing CAD models, or simply organizing floating terminal windows across workspaces, a cohesive high-refresh-rate canvas is the gold standard for creative and technical productivity.
Yet the moment you drag a macOS window or your cursor across the boundary from your MacBook Pro to an iPad connected via Apple Sidecar, the visual experience deteriorates noticeably. The cursor tracking feels heavy and sluggish, text scrolls with visible judder, and quick window drags produce perceptible ghosting. Despite connecting two high-end Apple devices each physically equipped with 120 Hz ProMotion panels, Sidecar feels unmistakably clamped to a lower frame rate. Many users assume this sluggishness is due to Wi-Fi network congestion or interference, only to discover that tethering the devices with a certified 40 Gbps Thunderbolt cable yields the exact same disappointing result: Sidecar remains stubbornly locked at 60 Hz (60 FPS). Why does Apple enforce this constraint, and what architectural decisions prevent native 120 Hz operation?
The CoreMedia and WindowServer Pipeline: Why Apple Caps Sidecar at 60 FPS
To uncover why Apple Sidecar refuses to exceed 60 frames per second, one must analyze the inner mechanisms of the macOS display server (WindowServer), the background daemon sidecard, and Apple's underlying AirPlay streaming architecture.
When Apple introduced Sidecar in macOS Catalina and iPadOS 13, the feature was engineered not as a dedicated hardware display protocol, but as an extension of Apple's existing AirPlay 2 CoreMedia video streaming pipeline. When a Sidecar session is initiated, the sidecard process invokes CoreGraphics private APIs (specifically CGSCreateVirtualDisplay) to instantiate an auxiliary software display head. Unlike a physical DisplayPort or HDMI monitor that communicates its full capabilities—including high refresh rate Dynamic Timing Descriptors (DTD)—directly to the GPU via Extended Display Identification Data (EDID), WindowServer provisions the Sidecar virtual canvas with hardcoded display mode tables locked to kCGDisplayRefreshRate = 60.00 Hz.
This 60 Hz ceiling is reinforced across every stage of the video pipeline: 1. Fixed VideoToolbox Compression Properties: The capture pipeline feeds frames into macOS VideoToolbox hardware encoders configured with static session parameters: kVTCompressionPropertyKey_ExpectedFrameRate is hard-coded to 60, and kVTCompressionPropertyKey_MaxKeyFrameInterval is tied to a 60-frame cadence. Even if WindowServer were to rasterize at a higher frequency, the encoder deliberately discards surplus frames to conform to a strict 60 FPS profile. 2. AWDL Bandwidth and Legacy Thermal Budgets: When Sidecar debuted in 2019, it was designed to run wirelessly over Apple Wireless Direct Link (AWDL) across 80 MHz Wi-Fi channels, serving iPads powered by A10X and A12X chips. Streaming a Retina-resolution workspace at 120 FPS requires sustaining bitrates of 60 to 90 Mbps with minimal latency jitter. On older A-series processors, sustained 120 FPS HEVC decoding caused rapid battery drain and severe thermal throttling. Furthermore, AWDL relies on periodic channel hopping between Wi-Fi and Bluetooth beaconing (channels 44 and 149), which struggles to maintain the tight packet intervals demanded by 120 FPS without packet drop cascades. 3. Apple's "Good Enough" Architecture: Rather than building an adaptive, hardware-aware pipeline that unlocks 120 Hz over high-throughput USB-C or when detecting modern M-series silicon on both host and client, Apple opted for a static, lowest-common-denominator implementation. Consequently, even an M4 Max MacBook Pro connected via Thunderbolt to an M4 iPad Pro is shackled to a 2019 software profile optimized for legacy mobile processors.
Micro-Stutter, Frame Pacing, and Temporal Disparity: The Cost of 60 Hz on a 120 Hz Panel
Restricting a display stream to 60 FPS on a 120 Hz ProMotion display is far more damaging to visual ergonomics than simply running a native 60 Hz monitor. It introduces fundamental timing mismatches, broken frame pacing, and significant sensor degradation.
1. Frame Pacing and Judder under 2:2 Pulldown: A native 120 Hz display refreshes every 8.33 milliseconds. A 60 FPS video stream produces a new frame every 16.67 milliseconds. When a 60 FPS feed is rendered on a 120 Hz panel, the display controller must hold each frame for two refresh cycles (2:2 pulldown). While this is mathematically symmetrical, any micro-variation in packet delivery or thread scheduling across the network turns this into erratic 1:3 or 2:1 frame presentations. The result is micro-stutter: moving a window across the desktop produces perceptible temporal jitter where frames appear to skip or drag intermittently.
2. Degradation of Apple Pencil Digitizer Sampling: Apple's ProMotion panels achieve their ultra-low 9 ms Apple Pencil latency by synchronizing the 240 Hz touch digitizer directly with the 120 Hz display refresh cycle. When macOS locks the iPad to a 60 Hz display stream, iPadOS drops its display timing accordingly. Touch and stylus polling rates are throttled, expanding Apple Pencil input latency from its native 9 ms to over 25 to 35 milliseconds. For digital illustrators, architectural draftspersons, or retouchers using Photoshop or Illustrator, this latency penalty transforms a fluid stylus into an unresponsive, lagging pen.
3. Asymmetric Dual-Screen Disparity: When you work in a dual-monitor setup with a 120 Hz MacBook Pro screen positioned next to a 60 Hz Sidecar iPad, your visual cortex is subjected to continuous cognitive friction. As you track the mouse pointer across display boundaries, the cursor instantaneously halves its update frequency from 120 samples per second to 60. This abrupt temporal shift causes cursor overshoot, misclicks on small UI elements, and ocular strain during extended coding or creative sessions.
The Silicon Architecture: How Nubo Unlocks Native 120 FPS at 120 Hz on iPad Pro
Overcoming Apple's hardcoded 60 Hz limitation required rethinking the entire remote display pipeline specifically for modern Apple Silicon architecture. Nubo circumvents the legacy AirPlay pipeline entirely, constructing a high-throughput, hardware-accelerated streaming engine capable of sustained 120 FPS rendering at sub-10ms glass-to-glass latency.
1. Software-Defined Virtual Displays with 120 Hz Timing Descriptors: Instead of relying on AirPlay virtual display presets, Nubo injects a custom display driver into macOS WindowServer via DriverKit and CoreGraphics APIs. This driver programmatically advertises exact 120.00 Hz display timing modes (kCGDisplayRefreshRate = 120) paired with the iPad Pro's native pixel matrix—such as 2752 × 2064 on the 13-inch model or 2388 × 1668 on the 11-inch model. WindowServer recognizes this as a genuine 120 Hz display head, clocking its internal rendering loop to a strict 8.33-millisecond frame cadence.
2. Zero-Copy ScreenCaptureKit Frame Extraction: Nubo captures rendered frames directly from WindowServer using Apple's high-performance ScreenCaptureKit framework. Utilizing the Unified Memory Architecture (UMA) of Apple Silicon, frames are transferred as IOSurface memory descriptors directly to the GPU without intermediary CPU memory copies. Frame capture takes less than 1.0 millisecond, ensuring zero frame buffer congestion.
3. Hardware HEVC VideoToolbox Encoding at 120 FPS: Captured frames enter VideoToolbox hardware media engines configured for low-latency slice-based HEVC (H.265) compression. By distributing work across dedicated hardware video encode blocks, the host Mac compresses each 120 FPS frame in under 2.0 milliseconds, consuming less than 2% of CPU capacity on Apple Silicon M-series chips.
4. Client-Side CADisplayLink and Metal 3 Frame Synchronization: On the iPad Pro, incoming UDP video packets are reassembled by an asynchronous lock-free pipeline and fed to the iPad's hardware decoder. To ensure flawless ProMotion pacing, rendering is driven by a CADisplayLink callback strictly synchronized to the iPad's native 120 Hz screen refresh cycle. Frames are presented directly onto a CAMetalLayer via Metal 3. The result is pure, unadulterated 120 FPS desktop computing: cursor tracking matches your MacBook Pro pixel-for-pixel, scrolling is buttery smooth, and Apple Pencil strokes register with near-instantaneous feedback.
Optimizing Your Setup: Wired USB CDC-NCM vs 5GHz/6GHz Wi-Fi for 120 Hz
Streaming a high-resolution Retina desktop at 120 frames per second requires greater bandwidth efficiency and tighter packet delivery timing than standard 60 Hz video. Choosing the right transport medium ensures you extract maximum performance from Nubo.
1. Bandwidth Realities of 120 FPS Desktop Streaming: While a 60 FPS remote desktop feed typically consumes 25 to 40 Mbps, doubling the frame rate to 120 FPS increases the required bandwidth to approximately 50 to 80 Mbps to maintain crisp text legibility, fine UI contrast, and artifact-free gradients. - Wi-Fi 5 GHz and 6 GHz (Wi-Fi 6/6E): In an environment with a clean 5 GHz or 6 GHz Wi-Fi network (channel width of 80 or 160 MHz, signal strength above -60 dBm), Nubo transmits 120 FPS effortlessly over local peer-to-peer UDP. Crucially, because Nubo does not rely on AWDL for transport, it completely avoids Apple's periodic 200 ms radio-scanning stalls that plague Sidecar and AirDrop. - The Golden Standard: USB-C CDC-NCM Tethering: For mission-critical workflows such as competitive gaming, professional video editing, or detailed digital illustration, connecting your Mac and iPad with a single USB-C or Thunderbolt cable delivers the ultimate connection. Nubo negotiates the USB Communications Device Class Network Control Model (CDC-NCM), creating a virtual Ethernet interface with packet transit times of just 0.35 milliseconds, zero wireless packet drops, and zero jitter. Furthermore, the cable delivers continuous bidirectional USB Power Delivery, charging your devices while you work.
2. Uncompromised Studio Audio and Privacy: Unlike Sidecar, which is completely mute, Nubo integrates a lossless CoreAudio HAL audio pipeline streaming uncompressed 48 kHz / 24-bit linear PCM stereo directly to the iPad's four-speaker array or connected headphones with sub-millisecond pipeline latency. Additionally, Nubo requires no shared iCloud account or Apple ID, connecting directly peer-to-peer using local Curve25519 cryptographic keys—making it the ideal solution for corporate MacBooks and personal iPad Pros.
Frequently asked questions
Does Apple Sidecar support 120Hz ProMotion on iPad Pro?
No. Apple Sidecar is strictly capped at 60 Hz (60 FPS) across all supported Mac and iPad models. Even if your MacBook Pro and iPad Pro both feature 120Hz ProMotion displays and you connect them via a 40 Gbps Thunderbolt cable, Sidecar will not exceed 60 frames per second.
Why did Apple cap Sidecar at 60 FPS instead of enabling 120 FPS?
Sidecar is built upon Apple's legacy AirPlay CoreMedia streaming pipeline, which enforces a static 60 FPS profile in the background sidecard daemon and VideoToolbox encoders. Apple originally optimized this for wireless AWDL transmission on older A-series iPads in 2019 to prevent excessive battery drain and thermal throttling, and has never updated the ceiling for modern M-series hardware.
How does Nubo achieve true 120 FPS desktop streaming on iPad Pro?
Nubo replaces the AirPlay architecture with a custom macOS virtual display driver advertising 120 Hz display timings to WindowServer. It captures frames at 120 FPS via ScreenCaptureKit zero-copy IOSurfaces, compresses them via hardware HEVC in VideoToolbox (<2 ms), and renders directly into a CAMetalLayer on iPadOS synchronized by CADisplayLink locked to the 120 Hz ProMotion display clock with sub-10ms glass-to-glass latency.
Do I need a USB-C cable for 120 FPS streaming with Nubo, or does Wi-Fi work?
You do not need a cable, though it provides the absolute best connection. Nubo streams at 120 FPS over clean 5 GHz or 6 GHz Wi-Fi networks (requiring 50-80 Mbps) as well as over wired USB-C connections. Connecting via USB-C negotiates the USB CDC-NCM protocol, delivering 0.35 ms packet transit times, zero jitter, and simultaneous battery charging.
References
- Apple Developer · ScreenCaptureKit Framework
- Apple Developer · Metal 3 Framework and CAMetalLayer
- Apple Developer · Core Animation CADisplayLink
- Apple Support · Use iPad as a second display for your Mac (Sidecar)
- Apple Developer · VideoToolbox Framework
- USB-IF · Universal Serial Bus Communications Device Class (CDC-NCM) Specification